mcpField
M
MCP 学习项目⚡

MCP 学习项目⚡

本地服务
github.com/uoky5217开发工具082 周前更新

关于 MCP 学习项目⚡

这是一个用于学习 MCP 服务实现的 Python 项目,包含四则运算 API 和对应的 MCP 服务示例。它展示 stdio 与 SSE 两种接入方式,并附有 API 单元测试。

主要功能

  1. 01加减乘除计算工具
  2. 02stdio 与 SSE 实现
  3. 03FastAPI 模拟后端接口
  4. 04pytest 单元测试示例

适用场景

  1. 01学习 MCP 服务实现方式
  2. 02测试四则运算工具调用
  3. 03熟悉 API 单元测试

MCP 相关

提供基于 stdio 和 SSE 的 MCP 服务实现,向 MCP 客户端暴露四则运算工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

来自项目 README

MCP 学习项目⚡

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

🌟 项目简介

本项目是一个基于MCP协议的学习项目,主要用于学习MCP Server如何实现。 api_server目录内是一个使用FastAPI库实现的一组API服务接口,用来模拟现有系统的java后端服务,本项目内只是实现了加减乘除四则运算。 tests目录下是一个针对api_server的单元测试程序,用来熟悉pytest功能。 mcp_server目录下是mcp的server内容,包含mcp的两种实现方式

第一种是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方式

使用uvicon生成一个服务,使用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

🌟 系统架构

graph LR
    Client-->|SSE Streaming| MCP_Server["MCP Server (Port 8001)"]
    MCP_Server-->|HTTP RPC| API_Server["API Server (Port 8000)"]
    API_Server-.->|Call Function| FUNC[(计算函数)]
    
    subgraph 计算服务
        API_Server
    end

✨ 核心功能

  • 🧮 四则运算工具集(加减乘除)
  • 📡 基于SSE的实时消息传输
  • ⚡ 异步HTTP客户端支持
  • 🔒 强类型输入校验

🛠️ 技术栈

🚀 快速开始

前置要求
  • Python 3.10+
  • uv
# 安装依赖
pip install -r requirements.txt

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。