MCP协议测试服务器

提供MCP协议测试和自定义API护栏功能的开发工具服务器,适用于API协议验证和自动化测试场景。

  • by mingu-song
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 mingu-song/mcp-test-server

使用说明

测试MCP服务器

用于MCP工具和Custom API护栏测试的服务器

项目结构

test_mcp_server/
  app.py                  # 메인 (로거, FastAPI 앱, 라우터 등록)
  routes/
    mcp.py                # MCP 프로토콜 (/mcp, /mcp2, /sse, /message)
    guardrail.py          # Custom API 가드레일 (/guardrail)
    files.py              # 파일 전처리 (/files)
  requirements.txt

安装和运行

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python app.py

服务器: http://localhost:8000

端点

端点 方法 说明
/mcp, /mcp2 POST Streamable HTTP(推荐)
/sse GET SSE连接(传统)
/message/{session_id} 接收POST SSE消息
/guardrail POST Custom API护栏
/files POST上传/返回文件
/health GET健康检查
/ GET服务器信息

MCP工具

“工具”“说明”“必需参数” |---|---|---| | add_numbers |加两个数字| a, b (编号)| | multiply_numbers |两个数字相乘| x, y (编号)| | get_greeting |生成问候语| name (字符串), language (可选,ko/en)| | search_with_progress | 검색 + 进度通知| query (字符串), steps (optional,默认为5)|

护栏阻挡规则

源规则 |---|---| | INPUT | 3次屏蔽1次| | OUTPUT | 3次屏蔽1次| | FILE | 2次屏蔽1次| 包含关键词“IU”时屏蔽

请求/响应格式:

// 요청
{"text": "...", "source": "INPUT", "metadata": {}}

// 통과
{"action": "NONE", "is_safe": true}

// 차단
{"action": "GUARDRAIL_INTERVENED", "is_safe": false, "blocked_reasons": {"reason": "..."}}

MISO集成

Streamable HTTP(推荐)

{"test_mcp": {"url": "http://localhost:8000/mcp"}}

SSE(传统)

{"test_mcp": {"url": "http://localhost:8000/sse"}}

Docker环境

{"test_mcp": {"url": "http://host.docker.internal:8000/mcp"}}

故障射击

# 헬스체크
curl http://localhost:8000/health

# 포트 충돌 시
lsof -ti:8000 | xargs kill -9