Token导航 LogoToken导航TokenDH.com
MCP Facade logo
开发工具stdio官方级别未说明来源级核验

MCP Facade

MCP Server

MCP server facade

工具数

5

提示词数

0

GitHub Stars

0

资源数

0
访问控制工具管理TypeScript服务器管理

安装说明

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

作者 / 组织

DmitryBe

提供方

DmitryBe

最后核验

2026/5/18 02:16

运行时

Python

快速接入

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

命令预览

uv run src/mcp_servers/main.py

详细介绍

MCP立面

一个功能强大的外观服务,为管理和与多个MCP(机器对话协议)服务器交互提供统一的接口。它充当代理与各种MCP服务器通信的单一入口点,同时提供强大的身份验证和访问控制。

目录

- 服务器管理 - 工具管理 - 访问控制 - MCP协议

特性

  • 统一接入点:多个MCP服务器的单一接口
  • 服务器管理:注册、更新和管理多个MCP服务器
  • 工具管理:发现所有注册服务器上的工具并与之交互
  • 认证:基于JWT的身份验证,具有细粒度的访问控制
  • 访问规则:工具级别的可配置访问规则
  • 健康监测:内置健康检查端点
  • 数据库后端:PostgreSQL用于存储服务器配置和访问规则

在本地运行它

运行MCP服务器(示例)

注意:如果您有mcp服务器,可以跳过此步骤。

cd mcp-facade/mcp-servers

uv sync
source .venv/bin/activate
uv pip install -e .

# start mcp servers
uv run src/mcp_servers/main.py

运行MCP外观

# Clone the repository
git clone https://github.com/yourusername/mcp-facade.git
cd mcp-facade/mcp-facade

# Install dependencies
pnpm i

# Set up environment variables
cp .env.example .env
# Edit .env with your configuration

# Start the service
pnpm dev

添加配置

# add echo 
curl -X POST http://localhost:3001/api/mcp/servers \
  -H "Content-Type: application/json" \
  -d '{
    "name": "echo",
    "url": "http://127.0.0.1:3003/echo/mcp"
  }'

# add math
curl -X POST http://localhost:3001/api/mcp/servers \
  -H "Content-Type: application/json" \
  -d '{
    "name": "math",
    "url": "http://127.0.0.1:3003/math/mcp"
  }'

与一起使用 oap-langgraph-tools-agent

# clone fork (with disabled auth)
git clone git@github.com:DmitryBe/oap-langgraph-tools-agent.git
cd oap-langgraph-tools-agent

# install deps 
uv sync
source .venv/bin/activate

# run langfraph server locally
langgraph dev

# open url
open https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024

# create assistant with configuration
MCPConfig
    url: http://localhost:3000/api
    tools: echo, add, subtract, multiply, divide

# start a thread by asking somehting like: compute 2 * 5 - 3

API文档

服务器管理

通过以下端点管理您的MCP服务器:

列出所有服务器

curl http://localhost:3001/api/mcp/servers | jq .

按名称获取服务器

curl http://localhost:3001/api/mcp/servers/echo | jq .

创建服务器

curl -X POST http://localhost:3001/api/mcp/servers \
  -H "Content-Type: application/json" \
  -d '{
    "name": "echo",
    "url": "http://127.0.0.1:3003/echo/mcp"
  }'

更新服务器

curl -X PUT http://localhost:3001/api/mcp/servers/echo \
  -H "Content-Type: application/json" \
  -d '{
    "url": "http://127.0.0.1:3003/echo/mcp"
  }'

删除服务器

curl -X DELETE http://localhost:3001/api/mcp/servers/echo

工具管理

列出可用工具

curl http://localhost:3000/api/mcp/tools | jq .

调用工具

curl -N -X POST http://localhost:3000/api/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Connection: keep-alive" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": "1",
    "method": "tools/call",
    "params": {
      "name": "echo",
      "arguments": {
        "message": "Hello, world!"
      }
    }
  }'

访问控制

该服务支持工具级别的细粒度访问控制。可以使用不同的规则类型配置访问规则:

  • WILDCARD:允许所有人访问
  • SCOPE:需要特定的OAuth作用域
  • USER_ID:仅限于特定用户ID

列出所有访问规则

curl http://localhost:3001/api/access-rules | jq .

获取工具规则

curl http://localhost:3001/api/access-rules/by-tool/echo | jq .

创建访问规则

# Allow everyone
curl -X POST http://localhost:3001/api/access-rules/by-tool/echo \
  -H "Content-Type: application/json" \
  -d '{"ruleType": "WILDCARD", "value": null}'

# Require specific scope
curl -X POST http://localhost:3001/api/access-rules/by-tool/add \
  -H "Content-Type: application/json" \
  -d '{"ruleType": "SCOPE", "value": "openid"}'

更新访问规则

curl -X PUT http://localhost:3001/api/access-rules/2 \
  -H "Content-Type: application/json" \
  -d '{"ruleType": "USER_ID", "value": "1,2,3"}'

删除访问规则

curl -X DELETE http://localhost:3001/api/access-rules/3

MCP协议

该服务实现了用于工具交互的MCP协议。以下是一些常见的操作:

初始化连接

curl -N -X POST http://localhost:3001/api/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Connection: keep-alive" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2025-03-26",
      "capabilities": {},
      "clientInfo": {
        "name": "ExampleClient",
        "version": "1.0.0"
      }
    }
  }'

列出工具

curl -N -X POST http://localhost:3000/api/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Connection: keep-alive" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/list"
  }' | jq -R 'select(startswith("data: ")) | .[6:] | fromjson'

Ping服务器

curl -N -X POST http://localhost:3001/api/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Connection: keep-alive" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "ping"
  }' | jq -R 'select(startswith("data: ")) | .[6:] | fromjson'

认证

该服务使用JWT(JSON Web令牌)进行身份验证。将JWT令牌包含在 Authorization 经过身份验证的请求的标头:

curl -H "Authorization: Bearer your.jwt.token" http://localhost:3001/api/mcp/tools

贡献

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

目录标签

目录标签

访问控制工具管理TypeScript服务器管理developer-toolsMCP协议本地部署统一接口

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP