Token导航 LogoToken导航TokenDH.com
MCP Nats logo
运维云端stdio官方级别未说明来源级核验

MCP Nats

MCP Server

mcp-nats

一个为大型语言模型如Claude提供NATS消息系统交互能力的MCP服务器,支持发布消息、订阅、请求-回复操作、JetStream流管理及键值存储等功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude云端部署Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Gooseus

提供方

Gooseus

最后核验

2026/5/17 20:20

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx mcp-nats

详细介绍

NATS MCP服务器

](https://www.npmjs.com/package/mcp-nats) ](https://www.npmjs.com/package/mcp-nats) ![License: MIT](https://opensource.org/licenses/MIT) ](https://nodejs.org) ![CI](https://github.com/Gooseus/mcp-nats/actions/workflows/publish.yml)

一个MCP(模型上下文协议)服务器,向Claude等LLM公开NATS消息传递功能。这使AI助手能够与NATS消息传递基础设施进行交互——发布消息、订阅、执行请求-回复操作、管理JetStream流和消费者,以及使用键值存储。

特性

  • 核心NATS运营:发布消息、订阅主题、请求回复模式
  • 实时订阅:监听具有超时和最大消息限制的消息,通配符支持
  • 急流:流管理、健康监控、持续发布并确认
  • 消费者管理:创建、列出、暂停、恢复、获取和删除JetStream消费者
  • 键值存储:具有过滤支持的获取、放置、删除和列出键
  • 对象存储:使用元数据存储和检索大型对象
  • 嵌入式文档:直接通过工具和资源访问NATS文档
  • 资源:查询服务器信息、列表流、KV桶和文档
  • 多个传输:Stdio(默认)或SSE用于网络可访问的HTTP服务器

需求

  • Node.js 20+(或 包子 发展)
  • 启用JetStream的NATS服务器
  • Docker(可选,用于运行测试)

安装

通过npx(推荐)

无需安装-直接运行:

npx mcp-nats

全局安装

npm install -g mcp-nats
mcp-nats

来源(用于开发)

git clone https://github.com/Gooseus/mcp-nats.git
cd mcp-nats
bun install
bun run start

快速开始

  1. 使用JetStream启动NATS服务器:
docker run -p 4222:4222 nats:latest -js
  1. 运行MCP服务器:
# Via npx
npx mcp-nats

# Or if installed globally
mcp-nats

# Or from source
bun run start
  1. 或者使用HTTP/SSE传输进行网络访问:
npx mcp-nats --transport=sse --port=3000
# Server will be available at http://localhost:3000/mcp
  1. MCP检验员测试:
npx @modelcontextprotocol/inspector npx mcp-nats

配置

环境变量

变量描述默认值
NATS_URLNATS服务器URLnats://localhost:4222
NATS_USER身份验证用户名-
NATS_PASS身份验证密码-
NATS_TOKEN令牌身份验证-
NATS_CREDS_PATH凭据文件路径(NGS/Synadia)-
使用Synadia Cloud?SYNADIA.md 获取完整的设置指南。

命令行选项

bun run src/index.ts [options]

Options:
  --transport=  Transport type: 'stdio' (default) or 'sse'
  --port=
       HTTP port for SSE transport (default: 3000)
  --host=       Host to bind for SSE transport (default: 0.0.0.0)
  --help, -h          Show help message

Claude桌面集成

添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在Mac上):

{
  "mcpServers": {
    "nats": {
      "command": "npx",
      "args": ["mcp-nats"],
      "env": {
        "NATS_URL": "nats://localhost:4222"
      }
    }
  }
}

或者,如果全局安装:

{
  "mcpServers": {
    "nats": {
      "command": "mcp-nats",
      "env": {
        "NATS_URL": "nats://localhost:4222"
      }
    }
  }
}

或者来自Bun的消息来源:

{
  "mcpServers": {
    "nats": {
      "command": "bun",
      "args": ["/absolute/path/to/mcp-nats/src/index.ts"],
      "env": {
        "NATS_URL": "nats://localhost:4222"
      }
    }
  }
}

可用工具

核心NATS

工具说明参数
nats_publish向主题发布消息subject, payload, headers?
nats_request请求回复模式subject, payload, timeout?
nats_subscribe订阅和收集消息subject, timeout?, max_messages?, queue?
nats_server_info获取NATS服务器连接信息-

键值存储

工具说明参数
nats_kv_get从KV桶中获取值bucket, key
nats_kv_put将价值存储在KV桶中bucket, key, value
nats_kv_delete从KV存储桶中删除密钥bucket, key
nats_kv_list_keys列出存储桶中的密钥bucket, filter?

JetStream流

工具说明参数
nats_stream_list列出所有JetStream流-
nats_stream_info获取流信息stream
nats_stream_publish发布到JetStreamsubject, payload
nats_stream_get_messages从流中获取消息stream, count?, startSeq?
nats_stream_health通过消费者状态获取流健康状况stream, lag_threshold?, ack_pending_threshold?

JetStream消费者

工具说明参数
nats_consumer_create创造消费者stream, name, deliver_policy?, ack_policy?, filter_subject?
nats_consumer_info获取消费者详细信息stream, consumer
nats_consumer_list列出流媒体的消费者stream
nats_consumer_delete删除消费者stream, consumer
nats_consumer_pause暂停消费者stream, consumer, until?
nats_consumer_resume恢复消费者stream, consumer
nats_consumer_fetch从持久消费者那里获取消息stream, consumer, batch?, expires?

对象存储

工具说明参数
nats_obj_list_buckets列出所有对象存储桶-
nats_obj_create_bucket创建新的对象存储桶bucket, description?, max_bytes?, storage?, ttl?
nats_obj_delete_bucket删除对象存储桶bucket
nats_obj_list列出bucket中的对象bucket
nats_obj_put存储对象bucket, name, data, description?
nats_obj_get获取一个对象bucket, name
nats_obj_delete删除对象bucket, name
nats_obj_info获取对象元数据bucket, name

文档

工具说明参数
nats_docs_list列出可用的NATS文档主题-
nats_docs_read阅读有关主题的NATS文档topic

可用资源

服务器资源

资源URI描述
溪流nats://streams列出所有带有元数据的JetStream流
KV铲斗nats://kvKV铲斗信息
服务器信息nats://serverNATS服务器连接详细信息

文献资源

资源URI描述
受试者nats://docs/subjectsNATS主题命名约定和通配符
Acksnats://docs/acksNATS确认模式和语义
Pub/Subnats://docs/pubsub核心NATS发布-订阅模式
请求/回复nats://docs/reqreplyNATS请求-应答消息模式
JetStreamnats://docs/jetstreamJetStream概述和持久性
溪流nats://docs/streamsJetStream流配置和保留
消费者nats://docs/consumersJetStream消费者类型和政策
标题nats://docs/headersNATS消息头和元数据
关键价值nats://docs/kvNATS键值存储指南
对象存储nats://docs/objectstoreNATS对象存储指南

苏格兰和南方能源公司运输

SSE传输允许网络客户端通过HTTP连接到MCP服务器。这使得:

  • Web浏览器客户端
  • 远程连接
  • 多个并发客户端
  • 与基于网络的人工智能工具集成
# Start with SSE transport
bun run start:sse

# Or with custom port
bun run src/index.ts --transport=sse --port=8080

终点:

  • GET /health -健康检查
  • POST /mcp -JSON-RPC端点(需要 Accept: application/json, text/event-stream)
  • GET /mcp -SSE流(需要 Accept: text/event-stream)

发展

# Run in development mode (with watch)
bun run dev

# Run with SSE in dev mode
bun run dev:sse

# Run tests
bun run test:up      # Start NATS container
bun test             # Run test suite
bun run test:down    # Stop NATS container

# Or all-in-one
bun run test:ci

# Build for Node.js distribution
bun run build

测试

该项目使用Bun的内置测试运行器和Docker Compose用于NATS服务器:

# Start test infrastructure
docker compose up -d

# Run tests (55 tests covering all tools, resources, and transports)
bun test

# Stop test infrastructure
docker compose down

示例用法

连接到Claude Desktop后,您可以要求Claude:

  • “向'orders.new'主题发布包含订单详细信息的消息”
  • “订阅'events.>'并收听10秒的消息”
  • “检查订单流中有哪些消息”
  • “在ORDERS流中创建一个只接收‘ORDERS.important’消息的消费者”
  • “列出EVENTS流中的所有消费者”
  • “检查订单流的运行状况”
  • 将此配置存储在密钥“app.settings”下的“config”KV bucket中
  • “将此大文件存储在'files'对象存储桶中”
  • “列出NATS服务器中的所有流”
  • “向'api.users.get'发送请求并等待响应”
  • “阅读JetStream消费者的NATS文档”

贡献

欢迎投稿!请随时提交拉取请求。

许可证

麻省理工学院

作者

肖恩 马林卡斯@鹅)

目录标签

目录标签

TypeScriptClaude云端部署消息中间件混合部署AI集成实时通信流处理键值存储

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

mcp-nats

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP