使用说明

项目简介

'aiohttp-mcp' 是一个 Python 库,旨在帮助开发者快速构建基于 Model Context Protocol (MCP) 的后端服务器。它基于流行的异步 Web 框架 aiohttp 构建,提供了易于集成、异步优先的设计,并支持类型提示和调试模式。

主要功能点

  • MCP 协议支持: 完整实现了 Model Context Protocol 框架,用于构建 LLM 应用的上下文服务。
  • 资源管理: 支持托管和管理各种资源,为 LLM 提供数据访问能力。
  • 工具注册与执行: 允许注册和执行外部工具,使 LLM 能够调用外部功能。
  • Prompt 模板: 支持定义和渲染 Prompt 模板,定制 LLM 交互模式。
  • 多种部署方式: 可以作为独立的 aiohttp 应用或子应用集成到现有 aiohttp 服务中。
  • 传输协议: 默认使用 SSE (Server-Sent Events) 作为通信协议,保证实时性和效率。
  • 易于扩展: 基于 aiohttp 构建,方便集成其他 aiohttp 中间件和扩展。

安装步骤

使用 'uv' (推荐):

uv add aiohttp-mcp

或使用 'pip':

pip install aiohttp-mcp

服务器配置

MCP 服务器需要通过启动命令运行。以下是配置信息,用于 MCP 客户端连接到 'aiohttp-mcp' 服务器。

{
  "server name": "aiohttp-mcp-server",  // 服务器名称,可以自定义
  "command": "python",                 // 启动命令,这里使用 python
  "args": [                            // 启动参数
    "examples/server.py"           //  指向 examples 目录下的 server.py 示例脚本,也可以是您自定义的服务器脚本路径
  ]
}

参数注释:

  • 'server name': MCP 服务器的名称,客户端可以使用此名称来标识服务器。
  • 'command': 启动服务器的命令,通常是 'python' 或 'uv run'。
  • 'args': 启动命令的参数列表,指向服务器主脚本的路径。示例中使用 'examples/server.py',您可以根据实际情况修改为您的服务器脚本路径。确保脚本路径正确,并且脚本可执行。

基本使用方法

  1. 创建 MCP 服务器:

    • 编写 Python 脚本,使用 'aiohttp_mcp.AiohttpMCP' 初始化 MCP 实例。
    • 使用 '@mcp.tool()', '@mcp.resource()', '@mcp.prompt()' 装饰器注册工具、资源和 Prompt。
    • 使用 'aiohttp_mcp.build_mcp_app(mcp, path="/mcp")' 或 'aiohttp_mcp.setup_mcp_subapp(app, mcp, prefix="/mcp")' 构建和运行 aiohttp 应用。
    • 具体示例可以参考 'examples' 目录下的脚本,例如 'examples/server.py' 或 'examples/server_subapp.py'。
  2. 运行 MCP 服务器:

    • 在终端中执行您的服务器脚本,例如 'python examples/server.py'。
    • 服务器默认运行在 'http://localhost:8080/mcp'。
  3. 使用 MCP 客户端:

    • 使用 MCP 客户端库 (例如 'mcp-client-py') 连接到运行中的 MCP 服务器。
    • 客户端需要配置服务器的地址 ('http://localhost:8080/mcp') 和通信协议 (SSE)。
    • 客户端可以通过会话 (Session) 与服务器交互,列出工具、调用工具、读取资源、获取 Prompt 等。
    • 示例客户端代码可以参考 'examples/client.py'。

信息

分类

开发者工具