项目简介
'arasaka-llm' 项目是一个演示如何构建 AI 助手的示例,包含一个代理服务器、一个 MCP 服务器和一个客户端。其中,MCP 服务器是整个项目的核心组件之一,它遵循 Model Context Protocol (MCP) 标准,为 LLM 客户端提供可调用的外部功能,即“工具”。该服务器使用 'fastmcp' 库构建,实现了 MCP 协议的一部分功能。
主要功能点
该 MCP 服务器的主要功能是托管并执行预定义的“工具”(Tools)。这些工具是特定的 Python 函数,可以通过 MCP 协议被兼容的 LLM 客户端发现和调用。本项目中的 MCP 服务器提供了计算两个日期之间天数和简单的问候工具。
安装步骤
- 克隆仓库到本地。
- 确保您的系统已安装 Python 3.10 及以上版本和 Pip。
- 安装项目使用的自动化工具 Zrb:
pip install zrb - 进入仓库根目录,运行准备命令安装项目依赖(包括 MCP 服务器和代理服务器的依赖):
zrb arasaka prepare-all
服务器配置
此 MCP 服务器设计为由像 Zrb 这样的客户端工具启动和管理。要配置您的 MCP 客户端以使用此服务器,您需要提供以下关键信息:
- 服务器名称 (name): 用于标识此服务器的名称,例如 '"Arasaka MCPServer"'。
- 启动命令 (command): 用于启动 MCP 服务器进程的可执行文件路径,通常是 '"python"'。
- 命令参数 (args): 传递给启动命令的参数列表,对于此项目是 '["main.py"]'。
- 工作目录 (cwd): 启动命令执行时所在的目录,对于此项目是 '"mcp-server"'。
- 连接 URL (url): MCP 服务器监听的地址和端口,以及传输协议路径。对于此项目是 '"http://localhost:8001/sse"'。
- 传输协议 (transport): 服务器使用的传输协议,对于此项目是 '"sse"'。
您的 MCP 客户端配置中需要包含上述信息,以便正确启动或连接到运行中的 MCP 服务器。
基本使用方法
- (可选但推荐)在 'proxy-server' 目录下创建 '.env' 文件并配置 'PROXY_LLM_API_KEY',虽然不是 MCP 服务器直接需要,但这是运行整个演示项目的一部分。
- 在项目根目录,使用 Zrb 启动 MCP 服务器(监听端口 8001)和代理服务器(监听端口 8000):
这会在后台启动两个服务进程。zrb arasaka start-all - 在另一个终端窗口,使用 Zrb 测试 MCP 服务器的工具调用功能:
此命令是一个预配置的 LLM 任务,它会连接到运行中的 MCP 服务器 ('http://localhost:8001/sse') 并尝试调用 'days_between' 和 'hello' 工具,验证 MCP 服务器是否正常工作并执行了工具功能。您会在运行 'start-all' 的终端中看到相关的服务器日志输出。zrb test-mcp
信息
分类
AI与计算