MCP代理测试
用于测试MCP(模型上下文协议)与Cursor/Claude代理集成的最小复制项目。
快速开始
1.安装依赖项
npm install2.直接测试MCP服务器(不带游标)
# List available tools
npm run mcp:list
# Call the memory.echo tool
npm run mcp:call
# Expected output: phrase "HELLO_FROM_MEMORY_MCP_MRE"3.在游标中使用(克劳德代码)
- 确保
.mcp.json,.claude/agents/mcp-mre.md,以及.claude/settings.mcp-mre.json存在(应自动创建) - 重新启动Claude代码
- 在聊天中:
@agent-mcp-mre→ 它应该调用工具并打印{"success":true,"phrase":"HELLO_FROM_MEMORY_MCP_MRE"} - 如果它说 0工具使用:
- 临时切换 .mcp.json 使用 scripts/mcp-proxy.mjs - 跑 npm run log:tail 并注意 tools/call - 确保代理 tools: 入口正是 mcp_mre-memory_memory_echo - 保持设置允许("allow":["*"])调试时
项目结构
.
├── src/
│ └── server.mjs # Minimal MCP server (stdio)
├── scripts/
│ ├── test-mcp.js # Direct test script (no agent/client)
│ ├── mcp-proxy.mjs # Optional proxy logger
│ └── dump-project.js # Dump entire project to DUMP.md
├── .claude/
│ ├── agents/
│ │ └── mcp-mre.md # Agent that MUST call the tool
│ └── settings.mcp-mre.json # Permissive settings
├── .logs/ # Proxy logs (if using proxy)
├── .mcp.json # MCP server configuration
└── package.json文件
src/server.mjs:使用一个工具的最小MCP服务器memory.echo返回一个硬编码短语.mcp.json:通过stdio将服务器挂接到Cursor.claude/agents/mcp-mre.md:必须调用该工具的代理配置.claude/settings.mcp-mre.json:测试许可scripts/test-mcp.js:测试脚本,以验证服务器在没有游标的情况下是否正常工作scripts/mcp-proxy.mjs:用于记录所有JSON-RPC消息的可选代理scripts/dump-project.js:将整个项目结构和内容转储到的脚本DUMP.md
项目倾倒区
生成项目的完整转储(结构+所有文件内容):
npm run dump这创造了 DUMP.md 与:
- 目录树结构
- 所有文件的完整内容(不包括
node_modules,.git,.logs等等) - 为每种文件类型突出显示正确的语法
可用于共享完整的项目状态或创建备份。
工具命名
工具名称遵循以下模式: mcp_{server}_{tool_with_underscores}
- 服务器:
mre-memory - 工具:
memory.echo - 全名:
mcp_mre-memory_memory_echo
调试
如果代理不调用该工具:
- 开关
.mcp.json要使用代理:
{
"mcpServers": {
"mre-memory": {
"type": "stdio",
"command": "node",
"args": ["scripts/mcp-proxy.mjs"]
}
}
}- 跑
npm run log:tail在单独的终端中
- 调用代理:
@agent-mcp-mre
- 检查日志
tools/call消息
- 验证代理工具名称是否完全匹配:
mcp_mre-memory_memory_echo
