mcpField
M
MCP 学习项目⚡

MCP 学习项目⚡

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

关于 MCP 学习项目⚡

这是一个用于学习 MCP 服务实现的个人项目。它通过本地 stdio 和基于 SSE 的远程服务示例展示四则运算工具,并包含 FastAPI API 服务和 pytest 测试。

主要功能

  1. 01四则运算工具
  2. 02本地 stdio 服务示例
  3. 03SSE 远程服务示例
  4. 04FastAPI API 服务
  5. 05pytest 单元测试

适用场景

  1. 01学习如何实现 MCP 服务
  2. 02比较本地 stdio 与 SSE 配置
  3. 03练习使用 pytest 测试 API 服务

MCP 相关

项目包含两种 MCP 服务实现:本地 stdio 服务,以及客户端可配置为远程服务的 SSE 服务。两者均提供加、减、乘、除工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 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 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。