mcp会提供 tools, prompts, and resources 这3种东西
客户端的Sampling 功能,用来模拟策略执行过程、估计动作或状态价值的核心方法。
调试 Inspector 工具:这个图形界面允许你连接到服务器并测试工具、提示和资源。
pip install “mcp[cli]”
创建一个文件 server.py
@mcp.resource(“greeting://{name}”) 建了一个名为 greeting 的资源,它接收参数 name。
mcp dev server.py,会自己在浏览器打开一个MCP Inspector 或 npx @modelcontextprotocol/inspector mcp run server.py STDIO服务器,注意不要使用print输出到stdio
客户端
编写自己的客户端可以实现编程和自动化交互,能够将 MCP 功能集成到自己的工作流程中,自动化任务 比如使用 call_tool调用工具
带有 LLM 的客户端
上面的客户端不实用,用户期望通过自然语言进行交互 大致流程 列出功能、提示、资源和工具,并保存它们的模式。
添加一个 LLM,并以 LLM 能够理解的格式传递保存的功能及其模式(转换函数将其转换为 LLM 能够理解的格式)
通过将用户提示与客户端列出的工具一起传递给 LLM 来处理用户请求。
从 GitHub Copilot Agent 模式使用服务器
1
2
3
4
5
"calculator": {
"command": "python",
"args": ["d:\\devel\\\\add.py"],
"env": {}
}
SSE 服务器
在后台,路由 /sse 和 /messages 分别被设置用来处理连接和消息。 需要添加路由 先运行sse服务器, uvicorn server:app #run a file server.py and for it to have a Starlette instance called app 命令行测试 npx @modelcontextprotocol/inspector –cli http://localhost:8000/sse –method tools/list
使用工具测试 填上 http://127.0.0.1:8000/sse
配置 “ssub”: { “type”: “http”, “url”: “http://127.0.0.1:8000/sse” }