此仓库包含 MCP(多能力提供者)服务器 的源代码,这是一个强大的后端服务,旨在连接 Puch AI 和外部服务,如 WhatsApp、网络内容抓取和产品搜索。它充当工具中心,使 AI 能够执行现实世界中的复杂任务。


Puch AI 是一个智能助手,能够自动化任务并检索信息。此 MCP 服务器通过提供一个安全且经过身份验证的 API 端点来扩展其功能,Puch AI 可以调用该端点来执行特定的“工具”。
此服务器使 Puch AI 能够:
服务器提供了一个单一的强大 API 端点,接受运行特定工具的请求及其参数。流程如下:
search_for_products)。/mcp/ 端点,指定 tool_name 和 arguments。按照以下步骤在本地机器上运行 MCP 服务器。
克隆仓库 打开终端并克隆仓库到本地机器。
git clone https://github.com/alok-ahirrao/Puch-AI-WhatsApp-Integration-MCP-Server.git
cd Puch-A
创建虚拟环境(推荐) 创建虚拟环境是最佳实践,用于管理项目依赖项。
# 对于 macOS/Linux
python3 -m venv venv
source venv/bin/activate
# 对于 Windows
python -m venv venv
.\venv\Scripts\activate
安装依赖项
从 requirements.txt 文件中安装所有必需的 Python 包。
pip install -r requirements.txt
创建并配置 .env 文件
在项目的根目录下创建一个名为 .env 的文件。此文件将存储您的密钥和配置变量。复制以下内容并替换占位符值。
# 从 https://serpapi.com/ 获取您的 API 密钥
SERPAPI_API_KEY=YOUR_SERPAPI_API_KEY
# 您的 WhatsApp 手机号码(例如,919876543210)
MY_NUMBER=YOUR_PHONE_NUMBER
# 用于认证 API 请求的强密钥
TOKEN=YOUR_SECURE_BEARER_TOKEN
运行服务器 使用 Uvicorn 启动 FastAPI 服务器。
python main.py
服务器现在应该在 http://127.0.0.1:8085 运行。
按照以下说明设置您的 MCP 服务器并完成应用程序过程。
获取应用密钥:
使用提供的启动代码启动本地 MCP 服务器。运行 /apply <TWITTER/LINKEDIN 回复 URL> 后,您将获得一个应用密钥。
创建 MCP 服务器:
现在您需要使用此 gist 中提供的启动代码创建一个 MCP 服务器以提交简历。
连接 Puch 到您的 MCP 服务器:
使用以下命令将 Puch 与您的 MCP 服务器连接起来:/mcp connect <SERVER URL(应公开可访问)>/mcp <AUTH TOKEN>
验证认证令牌和电话号码:
Puch 将针对您的认证令牌(应用密钥)和电话号码进行验证检查。验证需要密钥和您的电话号码,格式为 {国家代码}{号码} — 不带 + 符号。例如:919876543210 为印度号码。
创建简历工具:
将您的简历输入 Puch:创建一个工具,将您的简历发送到适合 LLM 的格式。
设置 ngrok 服务器:
要使您的本地服务器公开可访问,您可以使用 ngrok。运行以下命令:ngrok http 8085
所有对 /mcp/ 端点的请求都必须使用 Bearer Token 进行认证。在请求的 Authorization 头中包含令牌。
Authorization: Bearer YOUR_SECURE_BEARER_TOKEN
将 YOUR_SECURE_BEARER_TOKEN 替换为您在 .env 文件中设置的 TOKEN 值。缺少或无效的令牌会导致 401 Unauthorized 错误。
服务器通过一组工具暴露其功能。您可以通过向 /mcp/ 端点发送 POST 请求来调用工具。
fetch抓取并解析给定 URL 的文本内容。这适用于总结文章、提取数据或阅读文档。
参数:
| 参数 | 类型 | 必需 | 默认 | 描述 |
|---|---|---|---|---|
url | 字符串 | 是 | N/A | 要抓取的网页的完整 URL。 |
max_length | 整数 | 否 | 5000 | 返回的最大字符数。 |
start_index | 整数 | 否 | 0 | 开始提取内容的字符索引。对于分页很有用。 |
raw | 布尔值 | 否 | False | 如果 true,则返回原始 HTML。如果 false,则返回清理过的文本内容。 |
示例请求(curl):
curl -X POST http://127.0.0.1:8085/mcp/ \
-H "Authorization: Bearer YOUR_SECURE_BEARER_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"tool_name": "fetch",
"arguments": {
"url": "https://en.wikipedia.org/wiki/Artificial_intelligence",
"max_length": 250
}
}'
示例响应:
{
"content": "人工智能(AI)是指机器或软件的智能,而不是生物体的智能,主要是人类的智能。它是计算机科学的一个领域,研究和发展智能机器。这样的机器可能被称为AI。"
}
search_for_products基于查询搜索 Google 购物的产品,使用 SerpApi 服务。
参数:
| 参数 | 类型 | 必需 | 默认 | 描述 |
|---|---|---|---|---|
query | 字符串 | 是 | N/A | 产品的描述性搜索查询。 |
示例请求(curl):
curl -X POST http://127.0.0.1:8085/mcp/ \
-H "Authorization: Bearer YOUR_SECURE_BEARER_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"tool_name": "search_for_products",
"arguments": {
"query": "无线降噪耳机"
}
}'
示例响应:
{
"search_results": [
{
"position": 1,
"title": "索尼 WH-1000XM5 无线降噪耳机",
"price": "$399.99",
"extracted_price": 399.99,
"link": "https://www.bestbuy.com/...",
"source": "百思买",
"rating": 4.7,
"reviews": 1250,
"thumbnail": "https://i5.walmartimages.com/..."
},
{
"position": 2,
"title": "Bose QuietComfort 45 耳机",
"price": "$329.00",
"extracted_price": 329,
"link": "https://www.bose.com/...",
"source": "Bose",
"rating": 4.6,
"reviews": 890,
"thumbnail": "https://assets.bose.com/..."
}
]
}
此服务器设计为可扩展。未来计划包括:
贡献使得开源社区成为一个学习、启发和创造的绝佳场所。您所做的任何贡献都是 非常宝贵的。
git checkout -b feature/AmazingFeature)git commit -m '添加一些AmazingFeature')git push origin feature/AmazingFeature)如果您发现错误或有建议,请随时打开一个问题。
版权所有 © 2025, Alok Ahirrao
根据 知识共享署名-非商业性使用 4.0 国际许可协议 许可。您只能出于个人或教育目的使用或修改此项目。商业用途需要明确许可。
如有疑问,请联系 alokahirrao.ai@gmail.com。