MCP Unified Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Provides web search capabilities through Brave Search API

  • Provides containerized deployment of the MCP server

  • Used for cloning the repository and version control

MCP 工具包

用于构建高精度垂直 AI 代理的模块化服务器实现。旨在用于构建高精度垂直 AI 代理,但可以部署以获取常规工具功能。

与单独使用 Python MCP SDK 相比,使用的代码减少了 50% 以上。

这种方法的好处

  • 减少 Claude 的认知负担:Claude 不需要推理工具调用的顺序
  • 封装领域知识:代理可以包含关于如何在特定垂直领域中良好地执行任务的特定领域逻辑
  • 简化错误处理:代理可以在内部处理错误和重试,无需 Claude 的参与
  • 支持复杂的工作流程:通过单个工具调用难以协调的多步骤流程
  • 保持对话流程:用户不会接触到底层系统的复杂性

示例场景

以下是克劳德调用垂直代理的具体示例:

User: "I need a comprehensive analysis of the electric vehicle market for a presentation tomorrow." Claude: [recognizes this requires multiple tools and domain expertise] Claude: "I'll help you with that comprehensive EV market analysis. I'll need to gather the latest market data, news, and trends. This will take a moment..." [Behind the scenes, Claude calls a MarketAnalysisAgent] Claude -> MarketAnalysisAgent.analyze_market( sector="electric vehicles", include_news=True, include_market_data=True, create_presentation=True ) [The agent orchestrates multiple tool calls using your toolkit] - news_search for recent EV news - brave_web_search for market data - sequential_thinking for analysis - write_file to save the report - ppt_create_presentation to generate slides [Agent returns results to Claude] Claude: "I've analyzed the electric vehicle market for you. Here are the key findings: 1. Tesla continues to lead with 65% market share in North America 2. BYD has overtaken VW in global sales volume 3. Battery technology breakthroughs are accelerating adoption I've also created a presentation with detailed charts and data. You can find it saved as 'EV_Market_Analysis.pptx' in your working directory."

概述

MCP 统一服务器为 Claude 提供了统一的接口,以便与各种外部系统和工具进行交互,包括:

  • 文件系统操作:读取、写入和操作文件
  • 时间工具:获取不同时区的当前时间,在时区之间进行转换
  • 顺序思维:动态和反思性解决问题的工具
  • Brave Search :网络和本地搜索功能
  • 浏览器自动化:通过 Playwright 完成浏览器控制
  • 世界银行 API :获取经济和发展数据
  • 新闻 API :访问全球新闻来源和文章
  • PowerPoint :创建和操作 PowerPoint 演示文稿
  • Excel :创建和操作 Excel 电子表格
  • 雅虎财经:股票市场和财务数据
  • FRED :美联储经济数据
  • 代理能力:创建和部署执行复杂任务的自主代理
  • 还有更多专业工具

总共 123 种可用工具

快速入门指南:使用默认工具部署您的第一个 MCP 服务器

注意:请确保已下载 git ( https://git-scm.com/downloads ) 和 Docker ( https://www.docker.com/products/docker-desktop/ ) 并运行。还必须确保已将 git 可执行文件添加到路径(请参阅本 README 末尾的说明)。

Docker 部署(推荐且最稳定)

  1. 克隆存储库:
clone https://github.com/getfounded/mcp-tool-kit.git cd mcp-tool-kit
  1. 然后,您可以通过以下两种方式之一使用 Docker:选项 1 - 使用 docker-compose:
docker-compose up

选项 2 - 直接 Docker 命令:

docker run -p 8000:8000 -v ~/documents:/app/documents getfounded/mcp-tool-kit:latest

该存储库包含一个示例 Claude 桌面配置文件( claude_desktop_config.json ),您可以使用它:

{ "mcpServers": { "unified": { "command": "docker", "args": [ "exec", "-i", "mcp-tool-kit-mcp-server", "python", "-u", "mcp_unified_server.py" ], "useStdio": true } } }

docker 故障排除

如果运行 docker 时出现错误,很可能是 Claude 桌面配置文件中的镜像名称不正确。常见的解决方法是使用以下 json 进行配置:

{ "mcpServers": { "unified": { "command": "docker", "args": [ "exec", "-i", "mcp-tool-kit-mcp-server-1", "python", "-u", "mcp_unified_server.py" ], "useStdio": true } } }

通过 pip 安装

# Simple installation pip install mcptoolkit # Launch the server with default configuration mcptoolkit-server

本地服务器基本配置:

{ "tools": [ { "name": "MCP Toolkit", "url": "http://localhost:8000" } ], "settings": { "allowed_directories": ["~/Documents", "~/Downloads"], "default_tools": ["MCP Toolkit"] } }

配置 Claude Desktop 以访问您的服务器

  1. 打开 Claude 桌面应用程序
  2. 转到文件>设置>开发人员>编辑配置
  3. 添加“claude_desktop_configuration.json”文件
  4. 保存配置
  5. 重启 MCP 服务器并集成新工具
  6. 重新启动并打开 Claude 桌面应用程序(对于 Windows 用户,您必须使用任务管理器来结束所有 Claude 实例的任务)

您可以在 Claude 桌面应用程序中导入此配置,或将其用作参考来创建自己的配置。

您现在可以立即访问强大的功能,包括文件操作、网络搜索、时间工具等,而无需任何 API 密钥或复杂的设置。

设置环境变量

克隆存储库后,您有两个选项可以配置环境变量:

选项 1:交互式安装脚本

运行安装脚本,它将指导您设置环境变量:

python setup_env.py

该脚本将使用您的配置在存储库中创建一个.env文件。

选项 2:手动配置

或者,您可以使用以下变量在存储库根目录中手动创建.env文件:

# API Keys for external services BRAVE_API_KEY=your_brave_api_key NEWS_API_KEY=your_news_api_key FRED_API_KEY=your_fred_api_key # Application configuration STREAMLIT_APPS_DIR=/path/to/streamlit/apps MCP_FILESYSTEM_DIRS=/path/to/allowed/dir1,/path/to/allowed/dir2 MCP_LOG_LEVEL=info

克劳德提示示例

设置完成后,您可以要求 Claude 使用以下提示工具:

  • “在网上搜索最新的人工智能研究论文并总结研究结果。”
  • “创建一个包含三张幻灯片的有关气候变化的 PowerPoint 演示文稿。”
  • “使用 weather_checker 代理告诉我东京的当前状况。”
  • “您可以使用 quick_lookup 代理来研究量子计算的进展吗?”
  • “下载我的 QuickBooks 发票数据并分析我们上个季度的收入。”
  • “使用这些详细信息和定价在我的 Shopify 商店中设置产品。”
  • “使用雅虎财经获取特斯拉的当前股价和历史数据。”
  • “使用过去 5 年的 FRED 经济数据分析通货膨胀趋势。”
  • “使用浏览器自动化功能在 [网站网址] 填写此表单。”
  • “阅读我的下载文件夹中名为‘project_notes.txt’的文本文件。”
  • “获取有关技术的最新新闻标题。”

可用工具

文件系统工具

  • read_file :读取文件内容
  • read_multiple_files :同时读取多个文件
  • write_file :创建或覆盖文件
  • edit_file :对文件进行基于行的编辑
  • create_directory :创建新目录
  • list_directory :获取目录内容
  • directory_tree :获取递归树视图
  • move_file :移动或重命名文件/目录
  • search_files :搜索与模式匹配的文件
  • get_file_info :获取文件元数据
  • list_allowed_directories :列出允许的目录
  • 浏览器自动化:
    • playwright_launch_browser :启动新的浏览器实例
    • playwright_navigate :导航到 URL
    • playwright_screenshot :截取屏幕截图
    • playwright_click :点击一个元素
    • playwright_fill :填充输入字段
    • playwright_evaluate :执行 JavaScript
    • playwright_get_content :获取页面的 HTML 内容

代理工具

  • run_agent :执行带有参数的注册代理
  • list_agents :列出所有可用的代理及其元数据

财务数据工具

  • 雅虎财经:
    • yfinance :获取股票报价和历史数据
    • yfinance_get_quote :获取当前股票报价
    • yfinance_get_history :获取历史股票数据
    • yfinance_get_info :获取公司详细信息
    • yfinance_get_options :获取期权链数据
    • yfinance_get_recommendations :获取分析师建议
  • FRED(美联储经济数据):
    • fred_get_series :获取经济数据系列
    • fred_get_series_info :获取有关系列的元数据
    • fred_search :搜索经济数据系列
    • fred_get_category :按类别浏览数据
    • fred_get_releases :获取经济数据发布
    • fred_get_sources :获取数据源

时间工具

  • get_current_time :获取指定时区的当前时间
  • convert_time :在时区之间转换时间

顺序思维

  • sequentialthinking :一种使用逐步思考过程分解复杂问题的工具

勇敢搜索

  • brave_web_search :执行网络搜索
  • brave_local_search :搜索本地商家和地点

世界银行应用程序编程接口

  • worldbank_get_indicator :获取某个国家的指标数据

新闻API

  • news_top_headlines :获取头条新闻
  • news_search :搜索新闻文章
  • news_sources :列出可用的新闻来源

PowerPoint 工具

  • ppt_create_presentation :创建一个新的 PowerPoint 演示文稿
  • ppt_open_presentation :打开现有演示文稿
  • ppt_save_presentation :保存演示文稿
  • ppt_add_slide :添加新幻灯片
  • ppt_add_text :向幻灯片添加文本
  • ppt_add_image :向幻灯片添加图像
  • ppt_add_chart :向幻灯片添加图表
  • ppt_add_table :向幻灯片添加表格
  • ppt_analyze_presentation :分析演示文稿结构
  • ppt_enhance_presentation :建议增强功能
  • ppt_generate_presentation :从文本生成演示文稿
  • ppt_command :处理自然语言命令

如需查看可用工具的完整列表,请参阅文档或浏览工具目录。 如需查看可用工具的完整列表,请参阅文档或浏览工具目录。

添加新工具模块

  1. tools目录中创建一个新文件(例如, my_tool.py
  2. 遵循现有的模块模式:
    • 创建服务类
    • 定义工具功能
    • 实现注册功能
  3. 更新mcp_unified_server.py以导入并注册新模块

扩展现有工具模块

  1. 向服务类添加新方法
  2. 添加新的工具功能
  3. 更新注册功能以包含您的新工具

使用 Docker 进行开发

您可以使用 Docker 进行开发以确保一致的环境:

# Build a development image docker build -t mcp-tool-kit:dev . # Run with source code mounted for development docker run -p 8000:8000 \ -v $(pwd):/app \ -v ~/documents:/app/documents \ mcp-tool-kit:dev

这会将您的本地存储库安装到容器中,因此代码的更改会立即反映出来(对于大多数文件而言)。

哲学视角:人机认知伙伴关系

MCP 工具包代表了我们概念化人类智能与人工智能系统之间关系的范式转变。该框架并非将人工智能仅仅定位为任务自动化的工具,而是建立了一种认知伙伴关系,使人类的战略思维与人工智能的运营能力能够深度互补。

代理架构体现了一种变革性的愿景:人工智能系统能够独立解读上下文,在有限的参数范围内做出决策,并执行复杂的动作序列——所有这些都同时保持人类的监督和战略指导。这不仅代表着一项技术进步,更代表着一种全新的人机协作模式。

在这个不断发展的认知领域中,最成功的实现将是那些精心平衡技术潜力和人类能力的实现,创造出增强而不是取代人类决策和创造力的界面。

故障排除

  • 模块未加载:检查导入路径和依赖项
  • API 密钥错误:在.env文件中验证您的 API 密钥
  • 权限错误:检查MCP_FILESYSTEM_DIRS中允许的目录
  • 连接错误:确保服务器正在运行并且端口可访问
  • 未检测到代理:验证代理文件是否位于正确的目录中并遵循所需的格式
  • 路径问题:确保按照以下说明将 git 添加到路径

#要将 Git 添加到 Windows 上的 PATH,请按照以下步骤操作:

  1. 找到 Git 安装:确定 Git 在系统上的安装路径。常见路径包括:标准 Git 安装的 C:\Program Files\Git\bin\git.exe 和 C:\Program Files\Git\cmd;如果您通过 Windows 版 GitHub 或 GitHub Desktop 安装 Git,则为 C:\Users\AppData\Local\GitHub\PortableGit_\bin 和 C:\Users\AppData\Local\GitHub\PortableGit_\cmd。
  2. 编辑环境变量:通过控制面板或在“开始”菜单中搜索“编辑系统环境变量”打开“编辑环境变量”应用。在“系统变量”部分下,找到“Path”变量,点击“编辑...”,然后添加 Git 可执行文件和命令文件的路径。确保路径分隔符两边没有空格。
  3. 保存更改:添加 Git 路径后,点击“确定”保存更改。关闭并重新打开所有命令提示符窗口,即可应用新的 PATH 设置。
  4. 验证安装:打开命令提示符并运行 git --version 以验证是否可以从命令行访问 Git。

执照

MCP 统一服务器根据 MIT 许可证获得许可。

致谢

该项目使用了几个开源库和 API:

  • 适用于 Claude AI 助手的 MCP SDK
  • 用于新闻访问的 NewsAPI
  • 用于网页搜索的 Brave Search API
  • 世界银行经济数据 API
  • python-pptx 用于 PowerPoint 操作
  • Excel 电子表格的 XlsxWriter
ID: yghl2ut3cx