MCP服务器集合

一个强大的MCP服务器集合,用于与n8n无缝集成,创建复杂的自动化工作流程。

  • by JeeQuu
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jeequu/mcp-servers

使用说明

n8n工作流的MCP服务器集合

强大的MCP(模型控制协议)服务器集合,旨在与n8n无缝集成,以创建复杂的自动化工作流程。

📚 文档与支持

🔧 解决方案和故障排除指南

开发人员和维护人员的必备读物!

本综合指南记录了:

  • 从SSE到可流式HTTP的完整现代化过程
  • 遇到的所有问题及其解决方案
  • 部署挑战和修复
  • 最佳实践和模板
  • 紧急故障排除清单
  • 架构演变和技术模式

非常适合: 新团队成员,解决问题,了解代码库的演变,并在开发会话中保持连续性。


🚀 可用服务器

📅 日历MCP服务器

具有自然语言处理功能的智能日程安排和日历管理。

特征:

  • 自然语言日期解析(“下周二下午3点”)
  • 事件创建和冲突检测
  • 可用时隙查找
  • 重复事件支持
  • 智能调度建议

工具:

  • parse_natural_date -解析人性化日期
  • create_event -创建日历事件
  • find_available_slots -查找空闲时段
  • list_events -列出即将举行的活动
  • check_conflicts -检查日程安排冲突
  • create_recurring_event -创建重复事件

📧 Gmail MCP服务器

专业的电子邮件操作与完整的Gmail API集成。

特征:

  • 使用Gmail查询语法进行高级电子邮件搜索
  • 发送HTML格式的电子邮件
  • 草案管理
  • 标签操作
  • 电子邮件线程支持
  • 附件处理

工具:

  • search_emails -使用高级查询搜索电子邮件
  • get_email -获取完整的电子邮件详细信息
  • send_email -发送格式化电子邮件
  • create_draft -创建电子邮件草稿
  • modify_labels -添加/删除标签
  • archive_email -存档电子邮件
  • mark_as_read -标记为已读/未读

💬 电报MCP服务器

实时消息和通知系统。

特征:

  • 发送HTML格式的短信
  • 交互式嵌入式键盘
  • 文档共享
  • 消息编辑
  • 使用视觉指示器更新状态
  • 格式化列表显示

工具:

  • send_message -发送短信
  • send_message_with_buttons -发送互动消息
  • send_document -共享文档
  • edit_message -编辑现有邮件
  • send_formatted_list -发送结构化列表
  • send_status_update -发送状态通知

📄 PDF工具MCP服务器

全面的PDF处理和生成。

特征:

  • HTML到PDF转换
  • 从PDF中提取文本
  • PDF合并和拆分
  • 发票生成
  • 水印添加
  • 格式转换

工具:

  • html_to_pdf -将HTML转换为PDF
  • extract_text -从PDF中提取文本
  • merge_pdfs -合并多个PDF
  • split_pdf -在特定页面拆分PDF
  • create_invoice_pdf -生成专业发票
  • add_watermark -为PDF添加水印

🗄️ Supabase MCP服务器

数据库操作和实时数据管理。

🎤 ElevenLabs MCP服务器

人工智能驱动的语音合成和音频生成。

📸 Instagram MCP服务器

完成Instagram自动化和内容管理。

特征:

  • 发布照片、视频和旋转木马
  • 获取账户洞察和分析
  • 检索最近的媒体和帖子
  • 账户信息管理
  • 故事创作
  • 标签研究
  • 性能跟踪

工具:

  • instagram_post_photo -将照片发布到Instagram
  • instagram_get_insights -获取帐户分析
  • instagram_get_recent_media -检索最近的帖子
  • instagram_get_account_info -获取帐户信息

🎵 TikTok MCP服务器

TikTok分析、趋势研究和内容优化。

特征:

  • 用户帐户分析和统计数据
  • 趋势标签分析
  • 内容性能见解
  • 标签研究与优化
  • 发布时间建议
  • 参与率计算
  • 内容战略见解

工具:

  • tiktok_get_user_info -获取帐户信息和统计数据
  • tiktok_get_trending_hashtags -发现热门标签
  • tiktok_search_hashtags -分析标签性能
  • tiktok_get_content_insights -获得全面的分析

☁️ Dropbox MCP服务器

云存储自动化和文件管理。

特征:

  • 支持base64的文件上传和下载
  • 文件夹列表和导航
  • 在Dropbox中搜索文件
  • 创建带有过期和密码的共享链接
  • 帐户信息和存储使用情况
  • 批处理操作和文件管理
  • 自动路径处理和错误恢复

工具:

  • dropbox_upload -将文件上传到Dropbox
  • dropbox_download -从Dropbox下载文件
  • dropbox_list_folder -列出文件夹内容
  • dropbox_create_shared_link -创建可共享链接
  • dropbox_search -搜索文件
  • dropbox_account_info -获取帐户信息
  • dropbox_space_usage -检查存储使用情况

➕ 添加新服务(超级简单!)

您的架构专为持续扩展而设计!这是多么简单:

步骤1:创建新服务器 (5分钟)

# Follow the same pattern as existing servers
class NewServiceMCP:
    def __init__(self, client_id: Optional[str] = None):
        if client_id:
            set_client(client_id)
        
        self.api_key = config.get("newservice", "api_key")
        # ... rest of initialization

步骤2:更新配置 (2分钟)

  1. 增添 config_manager.py:包括服务凭据
  2. 更新 render.yaml:添加新的服务部署
  3. 更新 render-env-template.txt:添加环境变量

步骤3:部署 (1分钟)

git add . && git commit -m "Added NewService" && git push
# Render automatically deploys your new service!

🔥 刚刚添加:Dropbox服务器!

我们刚刚通过添加 Dropbox 在5分钟内:

  • ✅ 完整的Dropbox API集成
  • ✅ 文件上传/下载/搜索
  • ✅ 共享链接创建
  • ✅ 多客户端支持
  • ✅ 渲染部署就绪

总时间:从创意到生产就绪服务只需5分钟!

下一个要添加的热门服务:

  • Google 云端硬盘 (类似Dropbox)
  • Slack (团队消息)
  • Discord 的中文翻译是“不和谐”或“纷争”。 (社区管理)
  • 空气表 (数据库管理)
  • 概念 (文档自动化)
  • 条纹 (支付处理)
  • Shopify 的 (电子商务)
  • OpenAI (AI完成)

🛠️ 安装说明

1.安装依赖项

pip install -r requirements.txt

2.多客户端配置系统

此系统支持具有单独配置和凭据的多个客户端。每个客户端都有自己的隔离环境。

供您自己使用(单个客户端)

# Set up your personal configuration
python deploy_client.py --setup mycompany --name "My Company"

# Edit the generated config file
# configs/mycompany.yaml

# Add your credentials and API keys
# Then run your servers
python deploy_client.py --run mycompany

适用于多个客户

# Set up different clients
python deploy_client.py --setup client1 --name "Client 1 Corp"
python deploy_client.py --setup client2 --name "Client 2 LLC"
python deploy_client.py --setup agency --name "My Agency"

# Each client gets isolated:
# - configs/client1.yaml
# - credentials/client1/
# - tokens/client1/
# - deployments/client1/

安装后的目录结构

MCP SERVERS/
├── configs/
│   ├── client1.yaml
│   ├── client2.yaml
│   └── agency.yaml
├── credentials/
│   ├── client1/
│   │   └── gmail_credentials.json
│   ├── client2/
│   │   └── gmail_credentials.json
│   └── agency/
│       └── gmail_credentials.json
├── tokens/
│   ├── client1/
│   │   └── gmail_token.pickle
│   └── client2/
│       └── gmail_token.pickle
└── deployments/
    ├── client1/
    │   ├── docker-compose.yml
    │   ├── .env
    │   └── start.sh
    └── client2/
        ├── docker-compose.yml
        ├── .env
        └── start.sh

3.配置文件示例

每个客户都会得到一个 configs/{client_id}.yaml 文件:

client_info:
  name: "Client 1 Corp"
  description: "Configuration for MCP servers"
  created: "2024-01-01"

gmail:
  credentials_path: "credentials/client1/gmail_credentials.json"
  token_path: "tokens/client1/gmail_token.pickle"
  scopes: ["https://www.googleapis.com/auth/gmail.modify"]

telegram:
  token: "your_client1_telegram_bot_token"
  chat_id: "your_client1_chat_id"
  parse_mode: "HTML"

pdf_tools:
  api_key: "your_client1_pdfshift_api_key"
  default_format: "A4"
  default_margin: 20

elevenlabs:
  api_key: "your_client1_elevenlabs_api_key"
  default_voice: "rachel"

supabase:
  url: "your_client1_supabase_url"
  key: "your_client1_supabase_key"
  table_prefix: "client1"

instagram:
  access_token: "your_client1_instagram_access_token"
  app_id: "your_facebook_app_id"
  app_secret: "your_facebook_app_secret"
  account_id: "your_instagram_business_account_id"
  page_id: "your_facebook_page_id"

tiktok:
  client_key: "your_tiktok_client_key"
  client_secret: "your_tiktok_client_secret"
  access_token: "your_tiktok_access_token"
  refresh_token: "your_tiktok_refresh_token"

calendar:
  timezone: "America/New_York"
  business_hours:
    start: "09:00"
    end: "17:00"
  excluded_days: ["saturday", "sunday"]

4.为不同客户端运行服务器

# List all configured clients
python deploy_client.py --list

# Run servers for a specific client
python deploy_client.py --run client1

# Stop servers for a client
python deploy_client.py --stop client1

# Or set client via environment variable
export MCP_CLIENT_ID=client2
python "Gmail MPC Server.py"

5.Docker部署(生产)

# Build the image
docker build -t mcp-servers .

# Run for different clients
docker run -d \
  --name mcp-gmail-client1 \
  -e MCP_CLIENT_ID=client1 \
  -v $(pwd)/configs:/app/configs \
  -v $(pwd)/credentials:/app/credentials \
  -v $(pwd)/tokens:/app/tokens \
  mcp-servers python "Gmail MPC Server.py"

# Or use docker-compose
cd deployments/client1
docker-compose up -d

6.凭证设置

Gmail身份验证

  1. 创建Google Cloud项目
  2. 启用Gmail API
  3. 创建OAuth2凭据
  4. 下载 credentials.json 向 credentials/{client_id}/gmail_credentials.json

电报机器人设置

  1. 在Telegram上留言@BotFather
  2. 创建一个新的机器人 /newbot
  3. 获取您的机器人令牌
  4. 添加到配置文件或环境变量

Instagram/元设置

  1. 创建Facebook开发者帐户
  2. 创建新的Facebook应用程序
  3. 启用Instagram基本显示或Instagram图形API
  4. 获取您的访问令牌和应用程序凭据
  5. 连接您的Instagram商业帐户
  6. 将凭据添加到配置文件中

TikTok 设置

  1. 创建TikTok开发者帐户
  2. 申请TikTok API访问(登录工具包或内容发布API)
  3. 创建TikTok应用程序并获取您的客户凭据
  4. 通过OAuth流获取访问令牌
  5. 将凭据添加到配置文件中
  6. 注:某些功能需要TikTok Research API批准

API密钥

将所有API密钥添加到客户端配置文件或使用具有客户端前缀的环境变量:

export CLIENT1_TELEGRAM_TOKEN=your_token
export CLIENT1_PDF_API_KEY=your_key
export CLIENT1_ELEVENLABS_API_KEY=your_key
export CLIENT1_INSTAGRAM_ACCESS_TOKEN=your_token
export CLIENT1_FACEBOOK_APP_ID=your_app_id
export CLIENT1_TIKTOK_CLIENT_KEY=your_tiktok_key
export CLIENT1_TIKTOK_ACCESS_TOKEN=your_tiktok_token

🔄 n8n集成示例

客户端特定工作流

通过多客户端设置,您可以创建自动使用正确凭据的工作流:

// In n8n, set the client context
const clientId = $env.CLIENT_ID || 'default';

// All MCP calls will use this client's configuration

示例1:电子邮件到日历工作流

{
  "nodes": [
    {
      "name": "Gmail Trigger",
      "type": "Gmail",
      "parameters": {
        "operation": "search",
        "query": "subject:meeting OR subject:appointment"
      }
    },
    {
      "name": "Parse Date",
      "type": "MCP Calendar",
      "parameters": {
        "tool": "parse_natural_date",
        "date_string": "{{ $json.body }}"
      }
    },
    {
      "name": "Create Event",
      "type": "MCP Calendar", 
      "parameters": {
        "tool": "create_event",
        "title": "{{ $json.subject }}",
        "start_time": "{{ $json.datetime }}"
      }
    }
  ]
}

示例2:Instagram内容自动化

{
  "nodes": [
    {
      "name": "Content Schedule Trigger",
      "type": "Cron",
      "parameters": {
        "expression": "0 14 * * *"
      }
    },
    {
      "name": "Get Supabase Content",
      "type": "MCP Supabase",
      "parameters": {
        "tool": "query",
        "table": "scheduled_posts",
        "filters": {"post_date": "today"}
      }
    },
    {
      "name": "Post to Instagram",
      "type": "MCP Instagram",
      "parameters": {
        "tool": "instagram_post_photo",
        "image_url": "{{ $json.image_url }}",
        "caption": "{{ $json.caption }}"
      }
    },
    {
      "name": "Get Performance Data",
      "type": "MCP Instagram",
      "parameters": {
        "tool": "instagram_get_insights",
        "period": "day"
      }
    },
    {
      "name": "Notify Team",
      "type": "MCP Telegram",
      "parameters": {
        "tool": "send_formatted_list",
        "title": "📸 Instagram Post Published",
        "items": [
          {
            "title": "Post ID",
            "description": "{{ $json.post_id }}"
          },
          {
            "title": "Reach",
            "description": "{{ $json.insights.reach }}"
          }
        ]
      }
    }
  ]
}

示例3:TikTok趋势分析

{
  "nodes": [
    {
      "name": "Daily Trend Check",
      "type": "Cron",
      "parameters": {
        "expression": "0 10 * * *"
      }
    },
    {
      "name": "Get Trending Hashtags",
      "type": "MCP TikTok",
      "parameters": {
        "tool": "tiktok_get_trending_hashtags",
        "country_code": "US",
        "limit": 15
      }
    },
    {
      "name": "Analyze Top Hashtags",
      "type": "MCP TikTok",
      "parameters": {
        "tool": "tiktok_search_hashtags",
        "keyword": "{{ $json.trending_hashtags[0].hashtag }}",
        "period": 7
      }
    },
    {
      "name": "Get Content Insights",
      "type": "MCP TikTok",
      "parameters": {
        "tool": "tiktok_get_content_insights",
        "days_back": 7
      }
    },
    {
      "name": "Generate Trend Report",
      "type": "MCP PDF Tools",
      "parameters": {
        "tool": "create_invoice_pdf",
        "invoice_data": {
          "title": "TikTok Trend Report",
          "trending_hashtags": "{{ $json }}",
          "performance_insights": "{{ $json }}"
        }
      }
    },
    {
      "name": "Alert Team",
      "type": "MCP Telegram",
      "parameters": {
        "tool": "send_formatted_list",
        "title": "🔥 Daily TikTok Trends",
        "items": [
          {
            "title": "Top Trend",
            "description": "{{ $json.trending_hashtags[0].hashtag }}"
          },
          {
            "title": "Trend Score",
            "description": "{{ $json.trending_hashtags[0].trend_score }}"
          }
        ]
      }
    }
  ]
}

🌟 高级工作流理念

  1. 智能会议日程安排

    • Gmail监视会议请求
    • 日历查找可用插槽
    • Telegram向参与者发送确认
  2. 社交媒体内容管道

    • 日历触发预定内容
    • Instagram发布照片/视频
    • PDF生成性能报告
    • Gmail向客户发送分析
    • Telegram通知团队参与
  3. 发票处理流程

    • PDF提取发票数据
    • Supabase存储发票记录
    • Gmail发送确认
    • ElevenLabs创建语音摘要
  4. 多平台内容分发

    • Supabase存储内容队列
    • Instagram发布视觉内容
    • Telegram分发到频道
    • Gmail发送新闻通讯
    • PDF生成品牌报告
  5. 自动客户端报告

    • Instagram提取分析数据
    • PDF创建自定义报告
    • Gmail发送给客户端
    • Telegram通知完成
  6. 标签研究与策略

    • Instagram搜索热门标签
    • Supabase存储性能数据
    • 日历安排最佳发布时间
    • ElevenLabs创建战略简报
  7. 跨平台趋势分析

    • TikTok识别热门标签
    • Instagram分析类似趋势
    • PDF创建趋势报告
    • Telegram提醒团队机会
  8. 多平台内容战略

    • TikTok提供趋势洞察
    • 日历安排跨平台的最佳发布
    • Instagram处理视觉内容
    • PDF生成战略报告
    • Gmail向客户发送洞察

🔧 开发指南

错误处理模式

所有服务器都使用一致的错误处理:

{
    "success": True/False,
    "data": {...},
    "error": "Error message if failed"
}

异步最佳实践

  • 所有操作都是异步的
  • 使用 httpx.AsyncClient() 对于HTTP请求
  • 正确的连接清理

安全考虑

  • 所有机密的环境变量
  • 用于安全访问API的OAuth2
  • 输入验证和净化

📈 监控与调试

每台服务器包括:

  • 详细的错误消息
  • 时间戳跟踪
  • 操作日志
  • 健康检查端点

🤝 贡献

添加新服务器时:

  1. 遵循现有的异步模式
  2. 包括全面的错误处理
  3. 添加适当的文档
  4. 更新需求.txt
  5. 创建n8n工作流示例

🚀 高级使用模式

客户端隔离的好处

  • 安全:每个客户端的凭据都是完全隔离的
  • 扩展:添加新客户端而不影响现有客户端
  • 定制:每个客户的设置不同(时区、营业时间等)
  • 计费:跟踪每个客户的服务计费使用情况

环境变量模式

# Development
export MCP_CLIENT_ID=dev
python "Gmail MPC Server.py"

# Production client 1
export MCP_CLIENT_ID=client1
python "Gmail MPC Server.py"

# Production client 2 with overrides
export MCP_CLIENT_ID=client2
export CLIENT2_TELEGRAM_TOKEN=special_token
python "Telegram MPC Server.py"

服务提供商设置

如果您正在为客户构建自动化服务:

  1. 初始设置
python deploy_client.py --setup client_awesome_corp --name "Awesome Corp"
  1. 自定义配置 编辑 configs/client_awesome_corp.yaml 具体如下:
  • API密钥
  • 营业时间
  • 时区首选项
  • 自定义设置
  1. 部署和监控
python deploy_client.py --run client_awesome_corp
python deploy_client.py --list  # Check status
  1. 规模经营
  • 每个客户端都独立运行
  • 易于添加新客户
  • 简单的凭证管理
  • 每个客户端独立扩展

💰 商业模式理念

这种完整的社交媒体自动化设置实现了强大的商业模式:

社交媒体管理

  1. 多平台管理:Instagram+TikTok品牌自动化
  2. 趋势分析服务:跨平台的每日/每周趋势报告
  3. 内容策略优化:数据驱动的标签和时间建议
  4. 自动报告:具有跨平台分析功能的客户端仪表板

代理服务

  1. 全方位服务社交媒体自动化:端到端管理
  2. 影响者分析平台:跨平台性能跟踪
  3. 品牌监测与洞察:趋势分析和竞争情报
  4. 内容调度和优化:峰值时间发布与趋势整合

SaaS机会

  1. 白标社交媒体仪表板:重新命名并出售给代理商
  2. 趋势分析API:向企业出售趋势数据
  3. 内容优化工具:标签和时间建议
  4. 多客户端管理平台:以机构为重点的自动化平台

收入来源

  • 每月订阅每位客户每月200-2000美元
  • 定制自动化:5000-25000美元的设置费
  • API访问:每次API调用0.10-1.00美元
  • 高级分析:500-5000美元/月企业计划

📄 许可证

MIT许可证-可根据您的自动化需求自由使用和修改!