`stream_delete` and `kv_delete` are in the same toolset as `stream_list`, so whatever you point `NATS_URL` at is fully writable by the model. Point it at a development cluster while you are learning what the assistant does with it. `kv_history` is the tool people forget exists — it turns the KV store into an audit trail rather than a set of current values.
A NATS client exposed over stdio. It covers core messaging, JetStream stream lifecycle and the key-value store, so an assistant can inspect and drive a message bus directly.
- 17 tools in four groups
- Core: `publish` and `request` for fire-and-forget and request-reply
- Streams: `stream_list`, `stream_info`, `stream_create`, `stream_delete`, `stream_publish`, `stream_fetch`, `stream_consumer_create`
- KV: `kv_create_bucket`, `kv_list_buckets`, `kv_get`, `kv_put`, `kv_delete`, `kv_list_keys`, `kv_history`
- Server: `server_info` for diagnostics
The npm package @daanrongen/nats-mcp, version 1.1.4, launched with `bunx @daanrongen/nats-mcp`; Claude Code takes `claude mcp add nats`. One required variable, `NATS_URL`, pointing at your server — for example `nats://localhost:4222`. Nothing else to configure.
One command — bunx @daanrongen/nats-mcp
