Token导航 LogoToken导航TokenDH.com
Nats MCP Server logo
AI代理HTTP官方级别未说明来源级核验

Nats MCP Server

MCP Server

一个通过NATS CLI提供对NATS云原生消息系统访问的MCP服务器,支持发布消息、订阅主题和请求-回复模式。

工具数

0

提示词数

0

GitHub Stars

7

资源数

0
云原生JavaScriptClaudeClaudeCline

安装说明

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

作者 / 组织

bmorphism

提供方

bmorphism

最后核验

2026/5/17 20:19

运行时

Node.js

快速接入

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

命令预览

npm install @modelcontextprotocol/nats-mcp-server\"

详细介绍

NATS MCP服务器

MCP(模型上下文协议)服务器,提供对以下内容的访问 NATS,一个云原生消息系统,通过NATS CLI。

特性

  • 使用高级选项(标题、模板、回复主题)发布邮件
  • 订阅具有可配置超时和消息计数的主题
  • 带有标头的请求-回复模式支持
  • 完整的NATS CLI集成
  • 错误处理和清理

需求

  • Node.js>=14.0.0
  • NATS CLI(Nats)

安装NATS CLI

macOS

使用Homebrew:

brew tap nats-io/nats-tools
brew install nats-io/nats-tools/nats

Linux

使用快照:

snap install nats

使用apt(Debian/Ubuntu):

# First, add the NATS repository
echo "deb https://dl.nats.io/nats-io/repo/deb nats release" | sudo tee /etc/apt/sources.list.d/nats.list
curl -fsSL https://dl.nats.io/nats-io/repo/deb/gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/nats.gpg

# Then install
sudo apt-get update
sudo apt-get install nats-server

使用yum(RHEL/CentOS):

# Add the NATS repository
echo "[nats]
name=NATS Repository
baseurl=https://dl.nats.io/nats-io/repo/rpm/centos/\$releasever/\$basearch
gpgcheck=1
gpgkey=https://dl.nats.io/nats-io/repo/rpm/gpg.key
enabled=1" | sudo tee /etc/yum.repos.d/nats.repo

# Install
sudo yum install nats-server

视窗

使用巧克力:

choco install nats-io-client

使用Scoop:

scoop bucket add nats https://github.com/nats-io/scoop-bucket.git
scoop install nats

手动安装:

  1. 从下载最新版本 NATS CLI发布
  2. 提取存档
  3. 将二进制文件添加到系统PATH

从源头构建

如果您的系统没有可用的软件包:

# Requires Go 1.16+
go install github.com/nats-io/natscli/nats@latest

验证安装

安装后,验证CLI是否正常工作:

# Check version
nats --version

# Test connection to default server
nats ping

# List available commands
nats help

安装

# Install from npm
npm install @modelcontextprotocol/nats-mcp-server

# Or clone and build from source
git clone https://github.com/bmorphism/nats-mcp-server.git
cd nats-mcp-server
npm install
npm run build

配置

可以使用环境变量配置服务器:

  • NATS_URL:NATS服务器URL(默认值:'nats://localhost:4222')

用法

服务器提供以下MCP工具:

发布

使用高级选项向NATS主题发布消息。

参数:

  • subject (必填):NATS须发布至
  • message (必填):要发布的消息
  • reply (可选):请求回复模式的回复主题
  • headers (可选):消息头数组(键值对)
  • count (可选):要发布的消息数
  • sleep (可选):消息之间的睡眠时间(例如,“100ms”)
  • template (可选):在消息中启用Go模板处理

模板示例:

const result = await mcp.useTool("nats", "publish", {
  subject: "greetings",
  message: "Message {{Count}} @ {{Time}}",
  count: 5,
  sleep: "1s",
  template: true
});

标题示例:

const result = await mcp.useTool("nats", "publish", {
  subject: "orders",
  message: "New order received",
  headers: [
    { key: "OrderId", value: "12345" },
    { key: "Priority", value: "high" }
  ]
});

订阅

订阅NATS主题并接收消息。

参数:

  • subject (必填):NATS须订阅
  • timeout (可选):订阅超时(毫秒)(默认值:5000)
  • count (可选):退出前要接收的消息数
  • raw (可选):仅显示消息有效负载

例子:

const result = await mcp.useTool("nats", "subscribe", {
  subject: "greetings",
  timeout: 10000,
  count: 5,
  raw: true
});

请求

发送请求消息并等待回复。

参数:

  • subject (必填):NATS需向发送请求
  • message (必填):请求消息
  • timeout (可选):请求超时(毫秒)(默认值:5000)
  • headers (可选):请求头数组(键值对)

例子:

const result = await mcp.useTool("nats", "request", {
  subject: "service.time",
  message: "What time is it?",
  timeout: 3000,
  headers: [
    { key: "Locale", value: "en-US" }
  ]
});

模板函数

使用模板(template:true)时,可以使用以下函数:

  • Count:消息编号
  • TimeStamp:RFC3339格式当前时间
  • Unix:UTC自1970年以来的秒数
  • UnixNano:自1970年以来的纳秒(UTC)
  • Time:当前时间
  • ID:唯一ID
  • Random(min, max):最小和最大长度之间的随机字符串

随机字符串示例:

const result = await mcp.useTool("nats", "publish", {
  subject: "test",
  message: "Random data: {{ Random 10 100 }}",
  template: true
});

添加到MCP配置

对于Cline(VSCode扩展)

增添 ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

{
  "mcpServers": {
    "nats": {
      "command": "node",
      "args": ["/path/to/nats-mcp-server/build/index.js"],
      "env": {
        "NATS_URL": "nats://localhost:4222"
      }
    }
  }
}

适用于克劳德桌面

增添 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "nats": {
      "command": "node",
      "args": ["/path/to/nats-mcp-server/build/index.js"],
      "env": {
        "NATS_URL": "nats://localhost:4222"
      }
    }
  }
}

错误处理

该服务器包括强大的错误处理功能,用于:

  • 连接失败
  • 无效参数
  • 超时
  • 网络错误
  • NATS特定错误
  • CLI执行错误

发展

要构建项目,请执行以下操作:

npm run build

构建输出将在 build 目录。

贡献

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add some amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

许可证

麻省理工学院

致谢

目录标签

目录标签

云原生JavaScriptClaude消息队列本地部署NATSMCP协议请求-回复

支持客户端

ClaudeCline

接入字段

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

HTTP

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

none

运行时(runtime,运行环境)

Node.js

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

HTTPnone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP