mcp-n8n-耐火材料
带n8n和Firecrawl的MCP服务器和客户端 使用n8n工作流的全面模型上下文协议(MCP)实现,具有由Google Gemini提供支持的智能抓取代理客户端和利用Firecrawl API进行web内容提取的强大服务器。
🚀 概述 该项目展示了一个使用n8n自动化平台构建的完整MCP生态系统,展示了AI代理和网络抓取功能之间的无缝集成。实施由两个主要部分组成:
抓取代理客户端:一个智能会话代理,可以理解用户请求并执行网络抓取操作 MCP服务器:通过Firecrawl API提供web抓取服务的专用服务器
🏗️ 建筑
该系统遵循客户端-服务器架构,其中MCP客户端通过标准化协议与MCP服务器通信。客户端利用Google Gemini的语言模型功能来理解自然语言请求,并将其转换为适当的抓取操作。
组件
- 报废代理客户端(SCRAPINGAGENT.json)
聊天触发器:发起对话并接收用户输入 AI Agent:由Google Gemini支持的核心智能 内存缓冲区:通过15条消息窗口维护对话上下文 MCP客户端工具:连接到MCP服务器进行抓取操作
- MCP服务器(MCPserverFirecrwal.json)
MCP服务器触发器:处理来自客户端的传入请求 Scrape工具:使用Firecrawl API执行web Scrape,并输出markdown 🛠️ 先决条件 在设置此项目之前,请确保您具备以下条件:
n8n实例(自托管或云) Google Gemini API密钥 Firecrawl API密钥 ngrok帐户(用于暴露本地端点)
📦 安装
- 克隆存储库
克隆https://github.com/dixitabhi1/mcp-n8n-firecrawl.git cd-mcp-8n-耐火材料
- 导入n8n工作流
打开n8n实例 导航到工作流→ 从文件导入 为客户端工作流导入SCRAPINGAGENT.json 导入MCPserverFirecrwal.json以用于服务器工作流
- 配置凭据
Google Gemini API 转到n8n实例中的凭据 为“Google Gemini(PaLM)Api”创建新凭据 输入您的Google Gemini API密钥 Firecrawl API 更新刮擦工具中的授权标头 用Firecrawl API密钥替换fc-1471844158c0428ea5980bea02469c8c HTTP标头身份验证 为“HTTP标头身份验证”创建凭据 配置MCP服务器访问的标头身份验证
⚙️ 配置 服务器安装程序 激活MCP服务器工作流
打开MCP服务器Firecrwal工作流 单击激活以启动服务器 注意生成的webhook URL 配置ngrok(如果使用本地n8n)
ngrok http 5678 复制生成的ngrok URL 更新抓取代理中的MCP客户端端点 客户端设置 更新MCP客户端配置
打开SCRAPING AGENT工作流 导航到“MCP刮擦客户端”节点 使用您的服务器URL更新sseEndpoint 格式:https://your-domain.ngrok-free.app/mcp/da34892c-8018-4f03-9322-f49a2ed49853 激活客户端工作流
单击激活以启动刮擦代理 注意聊天webhook URL以进行测试
🚀 用法 开始对话 访问聊天界面
使用聊天触发器中的webhook URL 发送带有JSON有效载荷的POST请求: { “消息”:“请从中抓取内容https://example.com" } 交互示例
“从https://news.example.com" “从这篇博客文章中提取主要内容:https://blog.example.com/post" “获取此文档页面的标记内容” API终点 客户端端点 发布https://your-domain.ngrok-free.app/webhook/91178f0e-a59d-4c0a-b006-f6d3a32d702d 内容类型:应用程序/json
{ “message”:“您的抓取请求在此处” } 服务器终结点 发布https://your-domain.ngrok-free.app/mcp/da34892c-8018-4f03-9322-f49a2ed49853
🔧 定制 修改报废参数 Firecrawl抓取工具可以通过修改抓取节点中的JSON正文进行自定义:
{ “url”:“https://docs.firecrawl.dev", “格式”:\[“markdown”\], “选项”:{ “等待”:1000, “超时”:30000 } } 扩展内存 调整“简单内存”节点中的上下文窗口长度:
当前设置:15条消息 建议范围:10-50条消息,具体取决于用例 添加新工具 要扩展代理的功能,请执行以下操作:
在服务器工作流中创建新的工具节点 将它们连接到MCP服务器触发器 更新客户端以识别新的工具功能
🔍 监控与调试 工作流执行日志 监视n8n中两个工作流的执行日志 检查API速率限制和身份验证问题 验证客户端和服务器之间的webhook连接 常见问题 身份验证错误
验证API密钥是否正确配置 检查凭据权限和过期时间 连接超时
确保ngrok隧道处于活动状态 验证防火墙设置是否允许webhook流量 内存问题
监控对话上下文长度 如果响应不一致,则清除内存缓冲区
📊 性能注意事项 速率限制 Firecrawl API:检查您的计划的费率限制 Google Gemini:监控令牌使用情况和每分钟请求数 优化提示 为频繁抓取的URL实现缓存 对多个URL请求使用批处理 配置适当的超时值
🔐 安全 最佳实践 使用n8n的凭证系统安全地存储API密钥 对所有webhook通信使用HTTPS 在客户端端点上实施速率限制 定期旋转API键 访问控制 使用身份验证标头限制webhook访问 监控异常活动的使用模式 实施审计跟踪日志记录
🤝 贡献 我们欢迎为改进MCP实施做出贡献:
分叉存储库 创建要素分支 进行更改 提交拉取请求 开发指南 遵循n8n工作流最佳实践 记录任何新节点或配置 提交前进行彻底测试
📄 许可证 此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
🙏 致谢 n8n用于强大的自动化平台 Firecrawl提供可靠的网络抓取功能 Google Gemini用于高级语言模型集成 标准化人工智能工具通信的模型上下文协议
📞 技术支持+91 9555762116 对于问题、议题或贡献:
在此存储库中创建问题 联系人:abhishek1530002@gmail.com
内置于❤️ 使用n8n、Firecrawl和谷歌Gemini
