MCP是什么及如何开发一个MCPServer
Mcp就是AI大模型的标准化工具箱
MCP全称是模型上下文协议 Model Context Protocol,MCP Server 本质上就是一段Nodejs或者Python程序,
大模型通过操作系统的stdio,也就是标准输入通道,或者SSE协议,调用某个MCP Server
消息格式是
{"jsonrpc":"2.0","id":129,"method":"tools/call","params":{"name":"search_repositores","arguments":{"query":"user:tech-shrimp"}}}
MCP Server 接收到这些消息以后,通过自己的代码功能或者使用API请求访问外部工具,并且完成任务。
MCP本质上就是一段Python或者Nodejs程序,编写一个MCP Server 也就是编写这个段程序,
官网 http://github.com/modelcontextprotocol,中python-sdk。
一、准备工作安装uv
二、使用官网中的示例
def main():"""
FastMCP quickstart example.cd to the `examples/snippets/clients` directory and run:uv run server fastmcp_quickstart stdio
"""from mcp.server.fastmcp import FastMCP# Create an MCP server
mcp = FastMCP("Demo")# Add an addition tool
@mcp.tool()
def add(a: int, b: int) -> int:"""Add two numbers"""return a + b# Add a dynamic greeting resource
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:"""Get a personalized greeting"""return f"Hello, {name}!"# Add a prompt
@mcp.prompt()
def greet_user(name: str, style: str = "friendly") -> str:"""Generate a greeting prompt"""styles = {"friendly": "Please write a warm, friendly greeting","formal": "Please write a formal, professional greeting","casual": "Please write a casual, relaxed greeting",}return f"{styles.get(style, styles['friendly'])} for someone named {name}."if __name__ == "__main__":mcp.run(transport= 'sse')
这种是sse的启动写法。
启动项目
在cherry studio中配置mcp工具
使用大模型调用这个工具中的add方法

