项目简介

这是一个基于Model Context Protocol (MCP) 的客户端与服务器的示例项目。它演示了如何使用MCP框架创建一个简单的服务器,该服务器能够向MCP客户端暴露可调用的工具函数。

主要功能点

  • 实现一个基础的MCP服务器。
  • 在服务器上注册和暴露Python函数作为可供客户端调用的“工具”(例如加、减、乘法)。
  • 支持通过Streamable HTTP传输协议与客户端通信。
  • 包含一个简单的MCP客户端,用于连接服务器并调用注册的工具。

安装步骤

  1. 克隆仓库。
  2. 在项目根目录,使用Python 3创建并激活虚拟环境:
    python3 -m venv venv
    source venv/bin/activate
  3. 安装项目依赖(需先安装uv工具,或使用pip安装):
    uv install # 根据仓库情况,可能需要先安装uv,或者使用 pip install -r requirements.txt

服务器配置(供MCP客户端使用)

要让一个MCP客户端连接到此服务器,您需要在客户端配置中提供服务器的启动信息。典型的配置会包含以下信息(通常以JSON格式表示):

  • 服务器名称 (server name): 一个标识服务器的名称,例如 "Local Demo Server"。
  • 启动命令 (command): 启动服务器的可执行文件,这里是 'python'。
  • 命令参数 (args): 传递给启动命令的参数列表,这里是 '["server.py"]'。
  • 传输协议 (transport): 客户端连接服务器使用的协议,这里是 'streamable-http'。
  • 服务器地址 (address): 服务器监听的完整地址,这里是 'http://127.0.0.1:8000/mcp'。

您的MCP客户端会根据这些信息启动服务器进程并建立连接。

基本使用方法

  1. 确保虚拟环境已激活 ('source venv/bin/activate')。
  2. 在一个终端中启动MCP服务器:
    python server.py
    服务器默认将在 'http://0.0.0.0:8000/mcp' 地址监听。
  3. 在另一个终端中运行MCP客户端:
    python client.py
    客户端将连接到服务器,调用名为 'myserver/add' 的工具,并打印结果。

信息

分类

AI与计算