g

gabrielpierobon

app-automationagent-orchestrationdeveloper-tools

315 查看 · 2026-07-07 更新

MCP 服务器用于AI集成

一个使用FastMCP 2.0构建的全面模型上下文协议(MCP)服务器,为AI代理提供了访问强大工具和服务套件的能力。这个模块化、可扩展的服务器能够与各种平台、API和自动化工作流无缝集成。

🚀 概览

模型上下文协议(MCP)允许AI代理通过标准化接口与外部工具和服务进行交互。此实现提供了一个丰富的工具包,使AI代理能够:

  • 🔍 搜索与研究:网络搜索、本地商业发现及内容提取
  • 🌤️ 实时数据:全球天气信息和预报
  • 🧮 计算:带有错误处理的数学运算
  • 📂 文件系统访问:读取并浏览本地文件和目录
  • 🕷️ 网络自动化:浏览器控制和网站内容提取
  • 📊 数据管理:Airtable数据库操作和结构化数据处理
  • 📝 文档创建:Google Workspace集成(Sheets, Docs, Slides)
  • 🔗 平台集成:准备就绪以支持n8n, Claude Desktop, 和自定义应用程序

✨ 主要特性

🌐 网络与搜索工具

  • Brave搜索集成:网页搜索、新闻、视频以及本地商业发现
  • 实时天气:使用Open-Meteo API获取当前状况和预报
  • 网络爬虫:使用Crawl4AI从网站中提取内容,并支持结构化数据
  • 浏览器自动化:利用Playwright进行全面的浏览器控制,执行交互式网页任务

📊 数据与生产力

  • 文件系统访问:安全地只读访问本地文件,浏览目录,搜索内容
  • Airtable管理:创建基础表,管理表格,使用模板库搜索记录
  • Google Sheets:创建电子表格,操作数据,协作编辑
  • Google Docs:文档创建,内容编辑,协作写作
  • Google Slides:演示文稿创建,幻灯片管理,基于模板的工作流程
  • 计算器:可靠的算术运算,具备全面的错误处理

🏗️ 架构亮点

  • FastMCP 2.0:基于最新的MCP框架构建,以获得最佳性能
  • 模块化设计:工具分布在独立模块中,便于管理和扩展
  • 会话上下文:智能记忆最近的操作和创建的文档
  • SSE支持:服务器发送事件以实现实时通信
  • 灵活的身份验证:支持OAuth2、Bearer令牌和API密钥
  • 错误恢复能力:全面的错误处理机制,优雅降级

🚀 快速开始

1. 安装

bash

克隆仓库

git clone cd mcp-server

使用uv安装(推荐)

uv venv source .venv/bin/activate # 在Windows上: .venvScriptsactivate uv pip install -r requirements.txt

或者使用pip

pip install -r requirements.txt

2. 环境设置

在项目根目录下创建.env文件:

env

服务器配置

MCP_SERVER_NAME=my-mcp-server MCP_HOST=0.0.0.0 MCP_PORT=8000

所需API密钥

BRAVE_API_KEY=your_brave_search_api_key AIRTABLE_PERSONAL_ACCESS_TOKEN=your_airtable_token

可选:Google Workspace (适用于Sheets, Docs, Slides)

GOOGLE_CREDENTIALS_FILE=credentials.json GOOGLE_TOKEN_FILE=token.json

3. 可选依赖项

为了增强功能,请安装额外的工具:

bash

网络爬虫和浏览器自动化

pip install crawl4ai playwright playwright install

Google Workspace集成

pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client

4. 启动服务器

bash python run.py

您的服务器将可用:

  • 基本URLhttp://localhost:8000
  • SSE端点http://localhost:8000/sse
  • MCP协议:准备好供AI代理连接

🛠️ 工具类别

| 类别 | 工具 | 需要API | 状态 | |----------|-------|--------------|--------|| 搜索与网络 | 2 个网页搜索工具 | Brave API | ✅ 核心 | | 天气 | 全球天气数据 | 无(Open-Meteo) | ✅ 核心 | | 计算器 | 算术运算 | 无 | ✅ 核心 | | 文件系统 | 5 个文件/目录工具 | 无 | ✅ 核心 | | 网页自动化 | 3 个爬虫 + 10 个浏览器工具 | 无(本地) | ⚡ 可选 | | Airtable | 15+ 数据库工具 | Airtable Token | ✅ 核心 | | Google 表格 | 8 个电子表格工具 | Google OAuth2 | ⚡ 可选 | | Google 文档 | 5 个文档工具 | Google OAuth2 | ⚡ 可选 | | Google 幻灯片 | 10 个演示文稿工具 | Google OAuth2 | ⚡ 可选 |

核心工具(始终可用)

  • brave_web_search, brave_local_search - 网页和本地商业搜索
  • get_weather - 任何地点的当前天气和预报
  • calculator - 基本算术及错误处理
  • get_system_info, read_file, list_directory - 文件系统探索
  • create_airtable_base, list_records, 等 - 数据库管理

智能上下文功能

  • 会话记忆:跟踪最近创建的文档和电子表格
  • 标题搜索:通过名称查找文档,无需 ID
  • 自动追加:添加到最近的电子表格或文档
  • 模板库:预建的 Airtable 模板(CRM、项目管理等)
  • 文件系统导航:支持 ~ 代表主目录,跨平台路径

🔌 集成示例

n8n 工作流集成

  1. 在您的工作流中添加 MCP 客户端工具 节点
  2. 配置 SSE 端点:http://your-server:8000/sse
  3. 选择要暴露给 AI 代理的工具
  4. 如有需要,配置身份验证

json { "endpoint": "http://localhost:8000/sse", "authentication": "bearer", "tools": ["brave_web_search", "get_weather", "read_file", "create_google_sheet"] }

Claude 桌面集成

在您的 Claude 桌面配置中添加:

json { "mcpServers": { "enhanced-mcp-server": { "command": "python", "args": ["/absolute/path/to/run.py"], "env": { "BRAVE_API_KEY": "your_brave_api_key", "AIRTABLE_PERSONAL_ACCESS_TOKEN": "your_airtable_token" } } } }

自定义应用程序

通过 HTTP API 连接并接收 JSON 响应:

python import httpx

async def call_mcp_tool(): async with httpx.AsyncClient() as client: response = await client.post( "http://localhost:8000/messages", json={ "tool": "list_directory", "parameters": {"directory_path": "~"} } ) return response.json()

📊 高级功能

文件系统集成

安全的只读访问本地文件:

  • 跨平台:适用于 Windows、Linux 和 macOS
  • 智能路径处理:支持 ~ 代表主目录和环境变量
  • 内容搜索:按名称模式或内容查找文件
  • 大小控制:可配置限制防止内存问题
  • 权限感知:尊重文件系统权限

Airtable 模板系统

即时创建生产就绪的基础:

  • CRM:具有交易管道的客户关系管理
  • 项目管理:任务、项目和团队协调
  • 库存:产品跟踪,包括库存水平和供应商
  • 活动策划:带有任务协调的活动管理
  • 内容日历:内容规划和发布工作流程

Google Workspace 集成

无缝文档创建和管理:

  • 上下文感知:自动跟踪最近创建的内容
  • 智能操作:“追加到最后一个表单”,“编辑最近的文档”
  • 协作性:内置共享和权限管理
  • 模板支持:从现有文档和演示文稿复制

网页自动化能力

强大的浏览器控制以执行复杂任务:

  • 多浏览器:支持 Chrome、Firefox、Safari
  • 会话管理:多个并发浏览器上下文- 交互套件:点击、填写表单、等待元素、执行JavaScript
  • 内容提取:截图、无障碍树、结构化数据

🔧 开发与扩展

添加新工具

  1. tools/ 目录下创建一个新的工具文件:

python

tools/my_tool.py

from typing import Dict, Any

async def my_function(param: str) -> Dict[str, Any]: """AI代理的工具描述。""" try: result = f"Processed: {param}" return {"result": result, "status": "success"} except Exception as e: return {"error": str(e), "status": "error"}

def register(mcp_instance): mcp_instance.tool()(my_function)

  1. run.py 中导入并注册:

python from tools import my_tool my_tool.register(mcp)

开发环境设置

bash

安装开发依赖

pip install pytest python-dotenv

运行测试

pytest tests/

测试特定工具

python -m tests.test_mcp_crawler

🔐 API 设置与成本

完整功能所需

Brave 搜索 API (获取API密钥)

  • 免费层级:每月2,000次查询
  • 付费计划:提供更高限制
  • 使用场景:网页搜索和本地商业发现

Airtable 个人访问令牌 (生成令牌)

  • 免费层级:使用限制宽松
  • 使用场景:数据库创建与管理

Google Workspace APIs (设置指南)

  • 需要设置的免费层级
  • 需要OAuth2凭证
  • 使用场景:Sheets、Docs 和 Slides 集成

免费服务

  • 天气:Open-Meteo API(无限制)
  • 计算器:内置功能
  • 文件系统:本地文件访问(无需外部依赖)
  • 网络爬虫:本地浏览器自动化
  • 浏览器控制:本地Playwright执行

📖 文档

单个工具文档

🚀 生产部署

Docker 部署(示例)

dockerfile FROM python:3.11-slim

WORKDIR /app COPY . . RUN pip install -r requirements.txt

安装可选依赖

RUN pip install crawl4ai playwright && playwright install --with-deps

EXPOSE 8000 CMD ["python", "run.py"]

环境变量

env

生产设置

MCP_HOST=0.0.0.0 MCP_PORT=8000 MCP_SERVER_NAME=production-mcp-server

安全令牌管理

BRAVE_API_KEY=${BRAVE_API_KEY} AIRTABLE_PERSONAL_ACCESS_TOKEN=${AIRTABLE_TOKEN}

🛡️ 安全与最佳实践

API 密钥安全

  • 将密钥存储在环境变量中,绝不在代码中硬编码
  • 为开发和生产环境使用不同的密钥
  • 监控API使用情况,并对异常活动设置警报
  • 定期轮换密钥并更新访问权限

文件系统安全

  • 只读访问防止意外修改系统
  • 文件大小限制(默认50MB)防止内存耗尽
  • 路径验证防止目录遍历攻击
  • 尊重权限以维护现有的安全边界

工具访问控制

  • 使用n8n中的工具选择来限制可用功能
  • 通过日志监控工具使用情况- 为生产部署实施速率限制
  • 定期审查和审计工具访问权限

🤝 贡献

我们欢迎贡献!请:

  1. 分叉仓库
  2. 创建一个特性分支: git checkout -b feature/amazing-tool
  3. 为新功能添加测试
  4. 确保所有测试通过: pytest
  5. 提交一个拉取请求

贡献领域

  • 新工具集成(Slack, GitHub等)
  • 增强错误处理和日志记录
  • 性能优化
  • 文档改进
  • 测试和质量保证

📞 支持与社区

  • 问题: 通过GitHub Issues报告错误并请求功能
  • 文档: 在docs/目录下的完整工具文档
  • 示例: 在examples/目录下的使用示例和工作流程

🏆 构建于

📄 许可证

本项目采用MIT许可证发布 - 查看LICENSE文件以获取详细信息。


准备好加速您的AI工作流了吗? 按照上面的安装指南开始,并探索全面的工具文档,以解锁您AI代理的全部潜力。

服务配置

[{'mcpServers': {'enhanced-mcp-server': {'args': ['/absolute/path/to/run.py'], 'command': 'python', 'env': {'AIRTABLE_PERSONAL_ACCESS_TOKEN': 'your_airtable_token', 'BRAVE_API_KEY': 'your_brave_api_key'}}}}]

来源