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

Mock MCP Server Template

MCP Server

一个基于MCP Python SDK构建的模拟服务器模板,用于生成合成数据,无需真实API调用。

工具数

18

提示词数

0

GitHub Stars

1

资源数

0
开发工具PythonVS CodeVS Code

安装说明

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

作者 / 组织

ericdummer

提供方

ericdummer

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

模拟MCP服务器模板

克隆此仓库,添加您的工具文件,并在几分钟内运行一个模拟MCP服务器。

从这里开始

使用设置索引为工作流选择正确的路径:

直接链接:

连接MCP客户端

服务器使用流式HTTP传输。示例客户端配置提供在 mcp.json:

{
    "mcpServers": {
        "mock-mcp-server": {
            "type": "http",
            "url": "http://localhost:8000/mcp",
            "headers": {
                "X-Api-Key": "your-api-key-here"
            }
        }
    }
}

MCP检查员 (基于浏览器的测试工具):

MCP_PROXY_AUTH_TOKEN=localdev npx @modelcontextprotocol/inspector

打开: http://localhost:6274/?MCP_PROXY_AUTH_TOKEN=localdev\ 将运输设置为 流式HTTP,URL到 http://localhost:8000/mcp,添加标题 X-Api-Key: test-key.

实体和工具

服务器为三个实体实现了完整的CRUD操作: 客户, 产品,以及 订单.

实体工具
客户create_customer, update_customer, delete_customer, get_customer, list_customers
产品中心create_product, update_product, delete_product, get_product, list_products
订购create_order, update_order_status, add_products_to_order, remove_products_from_order, delete_order, get_order, list_orders, list_orders_by_customer

资源

只读资源与工具一起提供:

URI描述
customers://all所有客户
customers://{id}按ID列出的单个客户
customers://{id}/orders客户的所有订单
products://all所有产品
products://{id}按ID列出的单个产品
orders://all所有订单
orders://{id}按ID下单
orders://{id}/products订单中所有产品的完整产品对象

如何添加工具

工具按实体分组 app/tools/。每个实体文件都公开 TOOL_DEFINITIONS (模式列表)和 handle(name, params) (调度员)。要添加新工具,请执行以下操作:

  1. 将其定义添加到 TOOL_DEFINITIONS 在相关实体文件中(或创建新的实体文件)。
  2. 添加一个处理程序函数并将其路由到 handle().
  3. 在中注册实体模块 app/api/mcp.py (添加到 _entity_tool_modules).

建筑

app/
├── main.py              # Starlette ASGI app — Streamable HTTP transport, auth check
├── core/
│   ├── config.py        # Settings via pydantic-settings
│   └── server.py        # MCP SDK Server singleton
├── api/mcp.py           # Registers tools + resources; dispatches to entity modules
├── data/
│   └── store.py         # Shared in-memory store with seed data (singleton)
├── models/
│   ├── customer.py      # Customer dataclass
│   ├── product.py       # Product dataclass
│   └── order.py         # Order dataclass
├── resources/
│   ├── customers.py     # Read-only customer resource handlers
│   ├── products.py      # Read-only product resource handlers
│   └── orders.py        # Read-only order resource handlers
└── tools/
    ├── customers.py     # Customer CRUD tools
    ├── products.py      # Product CRUD tools
    └── orders.py        # Order CRUD tools
tests/                   # Async tests using anyio + MCP in-memory transport
.devcontainer/           # VS Code Dev Container (full dev deps)
.github/workflows/       # CI: tests, lint, security scans
Dockerfile               # Production image (slim, runtime deps only)
mcp.json                 # Sample MCP client connection config

运输

端点方法目的
/mcpPOST发送MCP JSON-RPC消息——响应可以通过SSE流式传输
/mcpGET为服务器发起的消息打开长期SSE流

身份验证:在 X-Api-Key 头球钥匙丢失→ HTTP 401。

MCP日志记录

工具调用 server.request_context.session.send_log_message() 发出支持通知的MCP客户端中可见的结构化日志事件(例如MCP检查器 通知 选项卡)。

配置

复制 .env.example.env 并根据需要进行调整:

变量默认值描述
APP_NAMEMock MCP Server应用程序名称
HOST0.0.0.0绑定地址
PORT8000监听端口
API_KEY_HEADERX-Api-KeyAPI密钥的HTTP标头名称
LOG_LEVELINFO日志记录级别(DEBUG, INFO, WARNING, ERROR)

永不承诺 .env 拥有真正的证书。

CI/CD安全工作流

GitHub操作工作流 :

声纳配置

声纳扫描仪设置在中定义 sonar-project.properties:

  • sonar.sources=app:扫描下的应用程序源文件 app/
  • sonar.tests=tests:标识下的测试文件 tests/
  • sonar.python.version=3.11:对项目Python版本进行引脚分析
  • sonar.python.coverage.reportPaths=coverage.xml:导入pytest覆盖率结果

开发指南

项目编码/安全指南记录在 .

目录标签

目录标签

开发工具PythonVS CodeMCP协议混合部署模拟服务器PythonSDK合成数据

支持客户端

VS Code

接入字段

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

未说明

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

api-key

工具数量(toolCount,工具数)

18

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明api-key部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP