使用说明
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转换为PDFextract_text-从PDF中提取文本merge_pdfs-合并多个PDFsplit_pdf-在特定页面拆分PDFcreate_invoice_pdf-生成专业发票add_watermark-为PDF添加水印
🗄️ Supabase MCP服务器
数据库操作和实时数据管理。
🎤 ElevenLabs MCP服务器
人工智能驱动的语音合成和音频生成。
📸 Instagram MCP服务器
完成Instagram自动化和内容管理。
特征:
- 发布照片、视频和旋转木马
- 获取账户洞察和分析
- 检索最近的媒体和帖子
- 账户信息管理
- 故事创作
- 标签研究
- 性能跟踪
工具:
instagram_post_photo-将照片发布到Instagraminstagram_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-将文件上传到Dropboxdropbox_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分钟)
- 增添
config_manager.py:包括服务凭据 - 更新
render.yaml:添加新的服务部署 - 更新
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身份验证
- 创建Google Cloud项目
- 启用Gmail API
- 创建OAuth2凭据
- 下载
credentials.json向credentials/{client_id}/gmail_credentials.json
电报机器人设置
- 在Telegram上留言@BotFather
- 创建一个新的机器人
/newbot - 获取您的机器人令牌
- 添加到配置文件或环境变量
Instagram/元设置
- 创建Facebook开发者帐户
- 创建新的Facebook应用程序
- 启用Instagram基本显示或Instagram图形API
- 获取您的访问令牌和应用程序凭据
- 连接您的Instagram商业帐户
- 将凭据添加到配置文件中
TikTok 设置
- 创建TikTok开发者帐户
- 申请TikTok API访问(登录工具包或内容发布API)
- 创建TikTok应用程序并获取您的客户凭据
- 通过OAuth流获取访问令牌
- 将凭据添加到配置文件中
- 注:某些功能需要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 }}"
}
]
}
}
]
}
🌟 高级工作流理念
-
智能会议日程安排
- Gmail监视会议请求
- 日历查找可用插槽
- Telegram向参与者发送确认
-
社交媒体内容管道
- 日历触发预定内容
- Instagram发布照片/视频
- PDF生成性能报告
- Gmail向客户发送分析
- Telegram通知团队参与
-
发票处理流程
- PDF提取发票数据
- Supabase存储发票记录
- Gmail发送确认
- ElevenLabs创建语音摘要
-
多平台内容分发
- Supabase存储内容队列
- Instagram发布视觉内容
- Telegram分发到频道
- Gmail发送新闻通讯
- PDF生成品牌报告
-
自动客户端报告
- Instagram提取分析数据
- PDF创建自定义报告
- Gmail发送给客户端
- Telegram通知完成
-
标签研究与策略
- Instagram搜索热门标签
- Supabase存储性能数据
- 日历安排最佳发布时间
- ElevenLabs创建战略简报
-
跨平台趋势分析
- TikTok识别热门标签
- Instagram分析类似趋势
- PDF创建趋势报告
- Telegram提醒团队机会
-
多平台内容战略
- TikTok提供趋势洞察
- 日历安排跨平台的最佳发布
- Instagram处理视觉内容
- PDF生成战略报告
- Gmail向客户发送洞察
🔧 开发指南
错误处理模式
所有服务器都使用一致的错误处理:
{
"success": True/False,
"data": {...},
"error": "Error message if failed"
}
异步最佳实践
- 所有操作都是异步的
- 使用
httpx.AsyncClient()对于HTTP请求 - 正确的连接清理
安全考虑
- 所有机密的环境变量
- 用于安全访问API的OAuth2
- 输入验证和净化
📈 监控与调试
每台服务器包括:
- 详细的错误消息
- 时间戳跟踪
- 操作日志
- 健康检查端点
🤝 贡献
添加新服务器时:
- 遵循现有的异步模式
- 包括全面的错误处理
- 添加适当的文档
- 更新需求.txt
- 创建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"
服务提供商设置
如果您正在为客户构建自动化服务:
- 初始设置
python deploy_client.py --setup client_awesome_corp --name "Awesome Corp"
- 自定义配置
编辑
configs/client_awesome_corp.yaml具体如下:
- API密钥
- 营业时间
- 时区首选项
- 自定义设置
- 部署和监控
python deploy_client.py --run client_awesome_corp
python deploy_client.py --list # Check status
- 规模经营
- 每个客户端都独立运行
- 易于添加新客户
- 简单的凭证管理
- 每个客户端独立扩展
💰 商业模式理念
这种完整的社交媒体自动化设置实现了强大的商业模式:
社交媒体管理
- 多平台管理:Instagram+TikTok品牌自动化
- 趋势分析服务:跨平台的每日/每周趋势报告
- 内容策略优化:数据驱动的标签和时间建议
- 自动报告:具有跨平台分析功能的客户端仪表板
代理服务
- 全方位服务社交媒体自动化:端到端管理
- 影响者分析平台:跨平台性能跟踪
- 品牌监测与洞察:趋势分析和竞争情报
- 内容调度和优化:峰值时间发布与趋势整合
SaaS机会
- 白标社交媒体仪表板:重新命名并出售给代理商
- 趋势分析API:向企业出售趋势数据
- 内容优化工具:标签和时间建议
- 多客户端管理平台:以机构为重点的自动化平台
收入来源
- 每月订阅每位客户每月200-2000美元
- 定制自动化:5000-25000美元的设置费
- API访问:每次API调用0.10-1.00美元
- 高级分析:500-5000美元/月企业计划
📄 许可证
MIT许可证-可根据您的自动化需求自由使用和修改!
