M

MCP Fyc

一个基于MCP协议的学习项目,包含两种MCP服务实现方式(stdio和sse),主要用于学习MCP Server的实现原理和四则运算API服务。
2分
17
安装
复制以下命令到你的Client进行配置
注意:您的密钥属于敏感信息,请勿与任何人分享。

🚀 MCP 学习项目⚡

本项目是一个基于MCP协议的学习项目,主要用于探索MCP Server的实现方法。项目涵盖了API服务接口、单元测试程序以及MCP Server的两种实现方式,能帮助开发者熟悉相关技术和开发流程。

Python 3.10+ 架构: 微服务 测试: Pytest

🚀 快速开始

首先,安装项目所需的依赖:

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服务推荐
F
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
6.9K
4.5分
D
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
1.2K
4.3分
F
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
4.3K
5分
B
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
966
4.5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
406
4.8分
C
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
5.6K
4.7分
E
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
2.0K
5分
M
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
1.1K
4.8分
AIbase
智启未来,您的人工智能解决方案智库
© 2025AIbase