使用说明

项目简介

Ultimate MCP Server 是一个全面的 Model Context Protocol (MCP) 服务器,旨在作为 AI Agent 的完整操作系统。它通过 MCP 协议提供强大的功能,使 AI Agent 能够访问丰富的工具生态系统、认知系统和专业服务。该服务器统一了对多个 LLM 提供商的访问,优化成本、性能和质量,并集成了认知记忆系统、浏览器自动化、Excel 操作、数据库交互等多种工具,将 AI Agent 从对话界面转变为能够跨数字环境执行复杂、多步骤操作的自主系统。

主要功能点

  • 全面的AI Agent工具包: 提供统一的中心枢纽,使 AI Agent 能够访问广泛的工具生态系统,包括 Web 自动化、Excel 操作、认知记忆、文件系统交互、数据库操作、OCR、向量搜索、RAG 等。
  • 成本优化: 通过任务路由到更经济的模型、高级缓存、成本跟踪和优化等机制,显著降低 API 成本。
  • LLM 提供商抽象: 提供统一的 API 接口,支持 OpenAI、Anthropic (Claude)、Google (Gemini) 等多家 LLM 提供商,避免厂商锁定并提供灵活的提供商切换能力。
  • 全面的文档和数据处理: 高效处理各种文档和数据,支持文档分块、并行处理、结构化数据提取、格式转换和 OCR 等功能。
  • 高级功能: 包括自主工具文档优化、浏览器自动化、认知记忆系统、Excel 自动化、实体关系图、高级向量操作、RAG、音频转录、文本分类、本地文本处理工具(CLI 集成)、模型性能基准测试、SSE 支持、多模型合成、Prompt 模板管理、错误处理和弹性等。

安装步骤

  1. 安装 uv (可选但推荐): 使用 'curl -LsSf https://astral.sh/uv/install.sh | sh' 安装更快速的 Python 包管理器 uv。

  2. 克隆仓库: 运行 'git clone https://github.com/Dicklesworthstone/ultimate_mcp_server.git' 克隆仓库到本地。

  3. 进入目录: 使用 'cd ultimate_mcp_server' 进入仓库目录。

  4. 创建虚拟环境并安装依赖:

    uv venv --python 3.13
    source .venv/bin/activate
    uv lock --upgrade
    uv sync --all-extras

    注意: 'uv sync --all-extras' 命令会安装所有可选的扩展功能。如果只需要特定功能,请调整项目依赖并运行 'uv sync'。

  5. 配置 .env 文件: 在仓库根目录下创建 '.env' 文件,并根据需要添加 API 密钥和配置覆盖,例如:

    OPENAI_API_KEY=your_openai_sk-...
    ANTHROPIC_API_KEY=your_anthropic_sk-...
    GEMINI_API_KEY=your_google_ai_studio_key...
    GATEWAY_SERVER_PORT=8013
    GATEWAY_SERVER_HOST=127.0.0.1
    LOG_LEVEL=INFO
  6. 运行服务器: 确保虚拟环境已激活,运行 'umcp run' 启动 MCP 服务器。可以使用 'umcp run --include-tools <工具名称>' 或 'umcp run --exclude-tools <工具名称>' 来包含或排除特定工具。

服务器配置

MCP 客户端需要配置 MCP 服务器的启动命令 (command) 及其参数 (args) 才能建立连接。以下是 Ultimate MCP Server 的典型配置信息 (JSON 格式):

{
  "serverName": "ultimate_mcp_server",
  "command": "umcp",
  "args": ["run"],
  "transport": "sse",
  "transportOptions": {
    "baseUrl": "http://localhost:8013"
  }
}

参数注释:

  • 'serverName': MCP 服务器的名称,可以自定义。
  • 'command': 启动 MCP 服务器的命令,这里使用 'umcp' (假设 'umcp' 命令已添加到系统路径或在虚拟环境中可用)。
  • 'args': 命令的参数,这里使用 'run' 参数启动服务器。可以根据需要添加其他参数,例如 '--include-tools' 或 '--exclude-tools'。
  • 'transport': MCP 客户端与服务器通信的传输协议,这里使用 'sse' (Server-Sent Events)。
  • 'transportOptions': 传输协议的选项。
    • 'baseUrl': MCP 服务器的基 URL,客户端通过此 URL 与服务器建立 SSE 连接。根据服务器实际运行地址进行配置,默认为 'http://localhost:8013'。

基本使用方法

  1. 确保 Ultimate MCP Server 服务器已成功启动并运行在配置的地址和端口上。

  2. 使用 MCP 客户端(例如 'mcp-client' Python 库)连接到运行中的 MCP 服务器。

  3. 通过客户端调用服务器提供的各种工具,例如:

    • 基本 Completion:

      import asyncio
      from mcp.client import Client
      
      async def basic_completion_example():
          client = Client("http://localhost:8013") # 替换为你的服务器地址
          response = await client.tools.completion(
              prompt="Write a short poem about a robot learning to dream.",
              provider="openai",
              model="gpt-4.1-mini",
              max_tokens=100,
              temperature=0.7
          )
          if response["success"]:
              print(f"Completion: {response['completion']}")
          else:
              print(f"Error: {response['error']}")
          await client.close()
      
      if __name__ == "__main__": asyncio.run(basic_completion_example())
    • Claude 使用 Ultimate MCP Server 进行文档分析 (委托):

      # ... (参考 Usage Examples 中的 document_analysis_example 代码)
    • 浏览器自动化进行研究:

      # ... (参考 Usage Examples 中的 browser_research_example 代码)
    • 认知记忆系统使用示例:

      # ... (参考 Usage Examples 中的 cognitive_memory_example 代码)
    • Excel 表格自动化:

      # ... (参考 Usage Examples 中的 excel_automation_example 代码)
    • 多提供商比较:

      # ... (参考 Usage Examples 中的 multi_provider_completion_example 代码)
    • 成本优化工作流执行:

      # ... (参考 Usage Examples 中的 optimized_workflow_example 代码)
    • 实体关系图示例:

      # ... (参考 Usage Examples 中的 entity_graph_example 代码)
    • 文档分块:

      # ... (参考 Usage Examples 中的 document_chunking_example 代码)
    • 结构化数据提取 (JSON):

      # ... (参考 Usage Examples 中的 json_extraction_example 代码)
    • 检索增强生成 (RAG) 查询:

      # ... (参考 Usage Examples 中的 rag_query_example 代码)
    • 融合搜索 (关键词 + 语义):

      # ... (参考 Usage Examples 中的 fused_search_example 代码)
    • 本地文本处理:

      # ... (参考 Usage Examples 中的 local_text_processing_example 代码)
    • 浏览器自动化基础交互:

      # ... (参考 Usage Examples 中的 browser_basic_interaction_example 代码)
    • 运行模型竞赛:

      # ... (参考 Usage Examples 中的 model_tournament_example 代码)
    • 元工具进行工具发现:

      # ... (参考 Usage Examples 中的 meta_tools_example 代码)
    • 本地命令行文本处理 (例如 jq):

      # ... (参考 Usage Examples 中的 local_cli_tool_example 代码)
    • 动态 API 集成:

      # ... (参考 Usage Examples 中的 dynamic_api_example 代码)
    • OCR 使用示例:

      # ... (参考 Usage Examples 中的 ocr_example 代码)

    详细的使用示例和脚本请参考仓库 'examples/' 目录。

信息

分类

AI与计算