mcp-server-demo
by lys1313013
README.md
# mcp-server-demo
演示用 MCP Server(Python 3.13 + Streamable HTTP)。所有工具返回 Mock 数据,
并带有**防伪标记**(`marker` / `data_source` 字段),用于验证模型回答确实来自 MCP 而非自行编造。
## 工具列表
| 工具 | 说明 | 防伪设计 |
| --- | --- | --- |
| `get_user_info(user_id)` | 查询用户信息(有效 ID:1001~1003) | 用户名是模型猜不到的虚构值,且带 `marker` |
| `list_users()` | 列出全部演示用户 | 同上 |
| `get_weather(city)` | 查天气,同一城市结果恒定(哈希生成) | 天气状况是现实不存在的(如"樱花雪暴"),另带城市名决定的 `weather_code` |
| `get_server_time()` | 服务器当前时间 | 故意使用非标准时间格式 `⏰...` |
防伪标记:`marker = "🦄MCP-DEMO-α7f3c9"`,`data_source = "MCP-SERVER-DEMO::MOCK-DB"`。
模型正确回答里出现这些值,即证明数据来自本 server。
## 本地运行
```bash
pip install -r requirements.txt
python server.py
# MCP 端点: http://localhost:13316/mcp
# 健康检查: http://localhost:13316/health
```
## Docker
镜像由 GitHub Actions 自动构建并推送到阿里云 ACR,直接拉取即可:
```bash
docker pull crpi-yvha9coypdedaafa.cn-beijing.personal.cr.aliyuncs.com/lys1313013/mcp-server-demo:latest
docker run -d -p 13316:13316 --name mcp-server-demo \
crpi-yvha9coypdedaafa.cn-beijing.personal.cr.aliyuncs.com/lys1313013/mcp-server-demo:latest
```
或使用 docker compose(同样拉取 ACR 镜像):
```bash
docker compose up -d
```
如需本地自行构建:
```bash
docker build -t mcp-server-demo .
```
## 客户端接入
Claude Code:
```bash
claude mcp add --transport http mcp-server-demo http://localhost:13316/mcp
```
Claude Desktop(`claude_desktop_config.json`):
```json
{
"mcpServers": {
"mcp-server-demo": {
"type": "http",
"url": "http://localhost:13316/mcp"
}
}
}
```
## 验证方式
接入后问模型:「查一下用户 1001 的信息」或「北京天气怎么样」。
若回答中出现 🦄MCP-DEMO-α7f3c9、"量子摸鱼师-Q"、"樱花雪暴" 等内容,说明数据确实来自 MCP server。
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues