MCP代理服务

moco是一个轻量级的MCP中心/代理,聚合多个MCP服务器并提供内置的安全控制。

  • by altescy
  • Rust
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 altescy/moco

使用说明

🫧 moco-MCP观测和控制操作员

moco 是一个轻量级的MCP集线器/代理,它聚合了多个MCP服务器并提供内置的安全控制。

文档

特性

  • 将多个下游MCP服务器暴露为单个MCP服务器(stdio)
  • 通过以下方式连接到下游MCP服务器 stdio 或 streamable-http
  • 命名空间工具名称为 server::tool
  • 直接通过以下方式提供下游工具输入模式 tools/list 用于结构化工具调用
  • 在呼叫前和呼叫后路径上应用安全检查
    • 特定规则检测器模式(regex / keyword / builtin / high_risk_tool)
    • 本地PII和凭证检测
    • 对解码字符串的检测(base64/URL编码/JSON转义)
  • 内置审计日志(SQLite)

安装

家酿

点击此存储库,然后安装 moco:

brew tap altescy/moco https://github.com/altescy/moco
brew install altescy/moco/moco

货物

从GitHub安装:

cargo install --git https://github.com/altescy/moco moco

用法

添加下游MCP服务器配置:

moco add everything -- npx -y @modelcontextprotocol/server-everything

这会写入或更新 [mcp.servers.<name>] 在 .moco/config.toml.

检查配置的MCP服务器和可用性:

moco list

MCP客户端设置

moco 目前,它将自己暴露为stdio MCP服务器,因此每个客户端都应该配置为运行 moco serve.

克劳德代码

添加 moco 从CLI:

claude mcp add --transport stdio moco -- moco serve

等效项目配置(.mcp.json):

{
  "mcpServers": {
    "moco": {
      "command": "moco",
      "args": ["serve"]
    }
  }
}

食品法典委员会(CLI/IDE)

添加 moco 从CLI:

codex mcp add moco -- moco serve

Codex将MCP设置存储在 ~/.codex/config.toml (或项目本地 .codex/config.toml). 等效手动配置:

[mcp_servers.moco]
command = "moco"
args = ["serve"]

开源代码

添加 opencode.json (项目)或 ~/.config/opencode/opencode.json (全球):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "moco": {
      "type": "local",
      "command": ["moco", "serve"],
      "enabled": true
    }
  }
}

配置

最低建议起点(.moco/config.toml):

[mcp]
default_timeout_ms = 30000

[mcp.servers.everything]
transport = "stdio"
command = "npx"
args = ["-y", "@modelcontextprotocol/server-everything"]

[security]
mode = "enforce"
presets = ["pii-basic", "credential-standard", "prompt-injection-basic"]
preset_level = "balanced"

看 文档 有关安全配置的详细信息。