NATS
MCP server for NATS — publish, request-reply, JetStream streams, KV store, and server diagnostics over stdio
nats-mcp
MCP server for NATS — publish messages, request-reply, manage JetStream streams, use the KV store, and inspect server diagnostics over stdio.
Installation
bunx @daanrongen/nats-mcp
Tools (17 total)
| Domain | Tools | Coverage |
|---|---|---|
| Core | publish, request | Publish messages, request-reply pattern |
| Streams | stream_list, stream_info, stream_create, stream_delete, stream_publish, stream_fetch, stream_consumer_create | JetStream stream lifecycle and message delivery |
| KV | kv_create_bucket, kv_list_buckets, kv_get, kv_put, kv_delete, kv_list_keys, kv_history | Key-value store with history |
| Server | server_info | NATS server diagnostics |
Configuration
| Variable | Required | Description |
|---|---|---|
NATS_URL | Yes | NATS server URL (e.g. nats://localhost:4222) |
Setup
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"nats": {
"type": "stdio",
"command": "bunx",
"args": ["@daanrongen/nats-mcp"],
"env": {
"NATS_URL": "nats://localhost:4222"
}
}
}
}
Claude Code CLI
claude mcp add nats -e NATS_URL=nats://localhost:4222 -- bunx @daanrongen/nats-mcp
Development
bun install
bun run dev # run with --watch
bun test # run test suite
bun run lint # lint and check formatting
bun run typecheck # type check
bun run build # bundle to dist/main.js
bun run inspect # open MCP Inspector in browser
Inspecting locally
bun run inspect launches the MCP Inspector against the local build:
bun run build && bun run inspect
This opens the Inspector UI in your browser where you can call any tool interactively and inspect request/response shapes.
Architecture
src/
├── config.ts # Effect Config — NATS_URL
├── main.ts # Entry point — ManagedRuntime + StdioServerTransport
├── domain/
│ ├── NatsClient.ts # Context.Tag service interface
│ ├── errors.ts # NatsError, KvNotFoundError, StreamNotFoundError
│ └── models.ts # Schema.Class models (NatsMessage, StreamInfo, KvEntry, …)
├── infra/
│ ├── NatsClientLive.ts # Layer.scoped — connects via nats.js, drains on shutdown
│ └── NatsClientTest.ts # In-memory Ref-based test adapter
└── mcp/
├── server.ts # McpServer wired to ManagedRuntime
├── utils.ts # formatSuccess, formatError
└── tools/ # core.ts, streams.ts, kv.ts, server.ts
License
MIT
Server Terkait
Slack MCP Server
An MCP server for interacting with Slack workspaces using user tokens, without requiring bots or special permissions.
CData Slack MCP Server
A read-only MCP server for Slack by CData, enabling LLMs to query live Slack data. Requires the CData JDBC Driver for Slack.
Pushinator MCP
Send push notifications via the Pushinator service. Requires an API token from your Pushinator account.
Zoom Transcript
An MCP server for interacting with transcripts from Zoom Cloud Recordings.
Webex MCP Server
Provides AI assistants with comprehensive access to Cisco Webex messaging capabilities.
mcp-server-rabel
AI-to-AI messaging via I-Poll protocol and AInternet. Enables agents to communicate using .aint domains, semantic messaging, and trust-based routing.
Telegram MCP Server
Connect to your Telegram account to read and send messages.
Inbox MCP
An intelligent, LLM-powered email assistant using the Nylas v3 API.
LINE Official Account
Integrates the LINE Messaging API to connect an AI Agent to the LINE Official Account.
LinkedIn Post Generator
Generates professional LinkedIn post drafts from YouTube videos by summarizing their content.