MCP Fyc
🚀 MCP 學習項目⚡
本項目是一個基於MCP協議的學習項目,主要用於探索MCP Server的實現方法。項目涵蓋了API服務接口、單元測試程序以及MCP Server的兩種實現方式,能幫助開發者熟悉相關技術和開發流程。
🚀 快速開始
首先,安裝項目所需的依賴:
pip install -r requirements.txt
啟動API服務:
# 進入api_server目錄下
python main.py
啟動MCP Server(根據選擇的實現方式):
# 對於stdio方式
cd mcp_server
python server.py
# 對於sse方式
cd mcp_server
python remote_server.py
最後,配置並使用cline進行測試。
✨ 主要特性
- 四則運算工具集:實現加、減、乘、除等基本運算。
- 基於SSE的即時傳輸:支持服務器端推送事件。
- 異步支持:提高系統的響應速度和處理能力。
- 強類型輸入校驗:確保數據的有效性和安全性。
📦 安裝指南
安裝項目依賴,只需執行以下命令:
pip install -r requirements.txt
💻 使用示例
第一種是stdio方式
主要是本地調用、本地運行的方式,主要實現包含在server.py
代碼中。
使用方式可以使用cline插件進行調用,下面附上cline調用的cfg配置:
{
"mcpServers": {
"math": {
"timeout": 60,
"command": "mcp",
"args": [
"run",
"\mcp_server\server.py"
],
"transportType": "stdio",
"disabled": true
}
}
}
stdio運行方式
# 進入api_server目錄下
python main.py
# 啟動api 服務
# 配置好cline的cfg後
# 在cline中測試mcp server
第二種是sse方式
使用uvicorn生成一個服務,使用cline插件的remote server方式進行配置連接。
主要功能包含在remote_server.py
中,下面附上cline的cfg配置:
{
"mcpServers": {
"calculate": {
"autoApprove": [
"calculate_sum",
"calculate_subtract",
"calculate_multiply",
"calculate_divide"
],
"disabled": false,
"timeout": 60,
"url": "http://127.0.0.1:8001/sse",
"transportType": "sse"
}
}
}
sse運行方式
# 進入api_server目錄下
python main.py
# 啟動api 服務
# 進入mcp_server目錄下
python remote_server.py
# 啟動mcp server
# 配置好cline的cfg後
# 在cline中測試mcp server
📚 詳細文檔
項目結構
api_server
目錄:是一個使用FastAPI庫實現的一組API服務接口,用來模擬現有系統的java後端服務,本項目內只是實現了加減乘除四則運算。tests
目錄:是一個針對api_server
的單元測試程序,用來熟悉pytest功能。mcp_server
目錄:是MCP的server內容,包含MCP的兩種實現方式。
🔧 技術細節
系統架構
Client通過SSE與MCP Server通信,後者通過HTTP RPC調用API Server進行計算。
技術棧
- Starlette:一個輕量級的ASGI框架,用於構建高性能的Web應用。
- Uvicorn:一個快速的ASGI服務器,支持異步處理。
- HTTPX:一個異步HTTP客戶端庫,用於發送HTTP請求。
- MCP協議:通過Server-Sent Events實現流數據傳輸。
通過本項目,您可以學習如何基於MCP協議實現一個分佈式計算服務,並掌握相關的技術棧和開發方法。
精選MCP服務推薦

Markdownify MCP
Markdownify是一個多功能文件轉換服務,支持將PDF、圖片、音頻等多種格式及網頁內容轉換為Markdown格式。
TypeScript
1.7K
5分

Baidu Map
已認證
百度地圖MCP Server是國內首個兼容MCP協議的地圖服務,提供地理編碼、路線規劃等10個標準化API接口,支持Python和Typescript快速接入,賦能智能體實現地圖相關功能。
Python
697
4.5分

Firecrawl MCP Server
Firecrawl MCP Server是一個集成Firecrawl網頁抓取能力的模型上下文協議服務器,提供豐富的網頁抓取、搜索和內容提取功能。
TypeScript
3.8K
5分

Sequential Thinking MCP Server
一個基於MCP協議的結構化思維服務器,通過定義思考階段幫助分解複雜問題並生成總結
Python
249
4.5分

Context7
Context7 MCP是一個為AI編程助手提供即時、版本特定文檔和代碼示例的服務,通過Model Context Protocol直接集成到提示中,解決LLM使用過時信息的問題。
TypeScript
5.2K
4.7分

Magic MCP
Magic Component Platform (MCP) 是一個AI驅動的UI組件生成工具,通過自然語言描述幫助開發者快速創建現代化UI組件,支持多種IDE集成。
JavaScript
1.7K
5分

Notion Api MCP
已認證
一個基於Python的MCP服務器,通過Notion API提供高級待辦事項管理和內容組織功能,實現AI模型與Notion的無縫集成。
Python
113
4.5分

Edgeone Pages MCP Server
EdgeOne Pages MCP是一個通過MCP協議快速部署HTML內容到EdgeOne Pages並獲取公開URL的服務
TypeScript
246
4.8分