MCP官方文档
文档地址:modelcontextprotocol.io/introductio…
配置环境安装常用编程语言的SDK
编写MCP服务器
import json
from mcp.server.fastmcp import FastMCP
import httpx
# Initialize FastMCP server
mcp = FastMCP("company-search")
@mcp.tool()
async def search_company(company_name: str) -> str:
"""
Search company and return formatted results.
Args:
company_name: The company name
"""
url = "https://api.coze.cn/v1/workflow/run"
workflow_id = ""
Authorization_key = ""
payload = json.dumps({
"parameters": {
"input": company_name
},
"workflow_id": workflow_id
})
headers = {
'Authorization': f'Bearer {Authorization_key}',
'Content-Type': 'application/json',
'Accept': '*/*',
'Host': 'api.coze.cn',
'Connection': 'keep-alive'
}
try:
async with httpx.AsyncClient() as client:
response = await client.post(url, headers=headers, data=payload)
if response.status_code == 200:
result = response.json()
data = result["data"]
json_data = json.loads(data)
return json_data["output"]
except Exception as e:
print(e)
return {"msg": "请求失败"}
if __name__ == "__main__":
mcp.run()
我这里是调用coze工作流API,大家也可以自己构建一个,取到workflow_id和Authorization_key
客户端调用
我使用的是cherry
添加MCP服务器
命令:
uv
参数:
--directory D:\work\MCP\company_search_mcp run server.py