项目简介
FastMCP-Agents 是一个强大的框架,允许开发者在任何现有的 Model Context Protocol (MCP) 服务器之上轻松添加 AI 智能体(Agent)和增强工具功能。它不像传统的 MCP 服务器那样从头实现协议,而是利用 FastMCP 库作为基础,并专注于托管可与大型语言模型(LLM)交互的智能体,以及改造或包装其他 MCP 服务器提供的工具,使其更易于使用和组合。
主要功能点
- AI 智能体托管: 集成由 LLM 驱动的 AI 智能体,这些智能体可以理解自然语言指令,并利用服务器提供的工具来执行复杂任务。智能体可以进行多步推理和工具调用。
- 工具增强与转换: 能够修改、包装或组合来自其他 MCP 服务器的工具。可以改变工具的名称、描述、参数,甚至在工具调用前后插入自定义逻辑,使工具更符合智能体或用户的需求。
- 会话管理: 内置会话历史管理,支持智能体在多步交互中保持上下文。
- 灵活的配置: 支持通过命令行参数、YAML 或 JSON 配置文件、以及 Python 代码来定义和配置智能体及工具包装规则。
- 代理其他MCP服务器: 可以作为前置代理,将一个或多个后端的 MCP 服务器合并,并将它们的工具经过改造后统一暴露给客户端。
安装步骤
- 安装 UV: 请按照 UV 官方文档 的说明安装 uv 工具。
- 运行命令: 使用 'uvx' 命令来运行 'fastmcp_agents'。例如,要运行一个捆绑的服务器配置,可以使用 'uvx fastmcp_agents config --bundled <配置名称>'。首次运行时,uv 会自动下载并安装所需的 fastmcp-agents 及其依赖。
服务器配置
FastMCP-Agents 本身不是一个独立的 MCP 服务器实现,它通常包装或增强其他 MCP 服务器,并作为一个新的 MCP 端点暴露出来。因此,MCP 客户端需要配置连接到由 FastMCP-Agents 启动的这个包装后的服务器实例。
MCP 客户端通常需要一个 JSON 格式的配置,其中包含一个或多个服务器条目。每个条目定义了一个 MCP 服务器连接。对于由 FastMCP-Agents 运行的服务器,配置示例如下:
{ "your_agent_server_name": { "command": "uvx", "args": [ "fastmcp_agents", "config", "--bundled", "wrale_mcp-server-tree-sitter", // 或 --file your_config.yml, 或 --url your_config_url "--transport", "stdio" // 或 sse, streamable-http // 其他 fastmcp_agents 命令行参数,例如 --log-level ] } }
- '"your_agent_server_name"':客户端给这个服务器连接起的名称。
- '"command"':启动 FastMCP-Agents 的命令,通常是 '"uvx"'。
- '"args"':传递给 'uvx' 命令的参数列表。
- '"fastmcp_agents"': 指定运行 fastmcp_agents 包。
- '"config"' 或 '"cli"': 指定 fastmcp_agents 的运行模式(从配置文件加载或从命令行构建)。
- '"--bundled", "wrale_mcp-server-tree-sitter"':(示例)指定加载 fastmcp-agents 捆绑的一个配置。也可以是 '"--file", "/path/to/your/config.yml"' 或 '"--url", "http://..."'。
- '"--transport", "stdio"':指定 FastMCP-Agents 包装的服务器使用的传输协议,必须与客户端配置的传输协议匹配。
- 当使用 'cli' 模式并包装另一个命令时,'args' 列表会包含 '"cli"', '"agent"', '--name', '--description', '--instructions' 等参数,最后跟着 '"wrap"' 和被包装服务器的 'command' 和 'args',例如 '["fastmcp_agents", "cli", "agent", "--name", "my_agent", ..., "wrap", "uvx", "another-mcp-server-command", ...]'。
请根据您实际运行 FastMCP-Agents 的方式(通过配置文件、命令行直接包装等)来构建 'command' 和 'args' 数组。客户端配置中的 'command' 和 'args' 应该与您在终端中启动 FastMCP-Agents 进程所使用的命令完全一致。
基本使用方法
- 启动服务器: 使用上述配置信息,在终端或通过 MCP 客户端启动 FastMCP-Agents 包装的 MCP 服务器。
- 连接客户端: 配置您的 MCP 客户端(如 VSCode 插件、Web UI、或其他 CLI 工具),使用上面提供的 'command' 和 'args' 来连接到 FastMCP-Agents 启动的服务器进程。
- 发现功能: 客户端连接后,可以查询服务器暴露的能力,特别是工具列表。这些工具将包括 FastMCP-Agents 托管的 AI 智能体(通常作为名为 Agent 名称的工具)以及经过包装或转换的后端服务器工具。
- 调用工具: LLM 客户端或用户可以通过标准 MCP 协议调用这些暴露的工具,与 AI 智能体交互或使用后端功能。例如,调用智能体工具并提供任务指令,智能体将利用其他可用工具来完成任务。
信息
分类
AI与计算