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
Verwandte Server
mail-mcp
Most email MCP servers only read from IMAP. mail-mcp does everything: 30 tools for reading, searching, sending, replying, forwarding, and bulk operations across IMAP, SMTP, Microsoft Graph API, and Exchange Web Services. Multi-account, native OAuth2, built in Rust. Works with Gmail, Microsoft 365, Hotmail/Outlook.com, Zoho, and any standard IMAP/SMTP server.
Gmail MCP Server
An MCP server that enables AI models to interact directly with the Gmail API to manage emails.
X (Twitter)
An MCP server for interacting with the X (Twitter) API, requiring developer credentials.
Slack MCP Server
A server for integrating with Slack, enabling communication and automation within your workspace.
Chatterbox TTS
Generates text-to-speech audio with automatic playback using the Chatterbox TTS model.
Gossiper Shopify Admin MCP Server
Control Shopify Admin tasks with agents or via prompt. Ultra slim integration, fast and secure.
Pushover MCP
Send push notifications using the Pushover.net service.
MCP Email Server
Manage emails using Gmail and IMAP protocols. Requires external configuration for credentials and settings.
Perplexity Chat
A Python-based server for the Perplexity API that manages chat history and conversations.
S-IMSY MCP Server
Provides SSE and HTTP streamable connection endpoints, authenticated via a SIMSY App token.