使用说明
困惑MCP服务器
A. FastMCP 与Perplexity的API集成的服务器,提供网络搜索和基于人工智能的答案。
特性
三层研究工作流程
-
search-先脚踏实地- 提问前先找到相关来源
- 返回URL、标题和代码段
- 当你不知道一个话题时,使用这个
-
ask-获取AI答案(默认)- 基于网络的人工智能合成答案
- 使用
sonar模型(快速且经济高效) - 包括引用和可选图像/相关问题
-
ask_more-深入挖掘- 对复杂问题进行更全面的分析
- 使用
sonar-pro型号(功能更强,但价格更高) - 使用时间
ask没有提供足够的深度
先决条件
本地设置
1.安装依赖项
使用紫外线(推荐):
uv pip install -e .
或者使用pip:
pip install -e .
2.配置API密钥
复制示例环境文件:
cp .env.example .env
编辑 .env 并添加您的困惑API密钥:
PERPLEXITY_API_KEY=your_api_key_here
3.运行服务器
在本地测试服务器:
uv run fastmcp run server.py
或者与 fastmcp CLI:
fastmcp run server.py
4.安装在克劳德桌面
安装服务器以与Claude Desktop一起使用:
fastmcp install claude-code server.py
或者手动添加到您的Claude Desktop配置中(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"perplexity": {
"command": "uv",
"args": ["run", "fastmcp", "run", "/absolute/path/to/server.py"],
"env": {
"PERPLEXITY_API_KEY": "your_api_key_here"
}
}
}
}
云部署(FastMCP云)
部署到 fastmcp.cloud 为了便于托管:
1.推送到GitHub
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/yourusername/perplexity-mcp.git
git push -u origin main
2.部署在FastMCP云上
- 访问 fastmcp.cloud
- 通过 GitHub 登录
- 创建一个新项目并连接您的仓库
- 配置:
- 入口点:
server.py - 环境变量:添加
PERPLEXITY_API_KEY
- 入口点:
- 部署!
您的服务器将在 https://your-project-name.fastmcp.app/mcp
FastMCP云自动:
- ✅ 检测来自的依赖关系
pyproject.toml - ✅ 每次推送时都会部署
main - ✅ 为PR创建预览部署
- ✅ 处理HTTP传输和身份验证
工具使用指南
研究工作流程示例
1. Don't know about a topic? → Use search()
search("latest AI research papers on transformers")
2. Found sources? → Use ask() to understand
ask("What are the key innovations in transformer models?")
3. Need more depth? → Use ask_more()
ask_more("Explain the mathematical foundations of attention mechanisms in transformers")
刀具参数
search(query, max_results=10, recency=None, domain_filter=None)
query:搜索查询字符串max_results:结果数(默认值:10)recency:按时间筛选-"day","week","month",或"year"domain_filter:包括/排除域- 包括:
["wikipedia.org", "github.com"] - 排除:
["-reddit.com", "-pinterest.com"]
- 包括:
ask(query, reasoning_effort="medium", ...)
query:要问的问题reasoning_effort:"low","medium"(默认),或"high"search_mode:"web"(默认),"academic",或"sec"recency:时间过滤器domain_filter:域筛选器return_images:包含图像(默认值:False)return_related_questions:包括后续问题(默认值:False)
ask_more(query, reasoning_effort="medium", ...)
参数与 ask(),但使用更强大的 sonar-pro 模型。
成本优化
- 从开始
search:寻找资源的免费/廉价方式 - 默认为
ask:用途sonar(成本效益) - 升级到
ask_more:仅在需要时(更昂贵)
发展
项目结构
perplexity-mcp/
├── server.py # Main FastMCP server
├── pyproject.toml # Dependencies
├── .env.example # Environment template
└── README.md # This file
检查服务器
看看FastMCP Cloud会看到什么:
fastmcp inspect server.py
api参考
此服务器使用两个困惑API端点:
- 搜索API (
/search)-返回排名的搜索结果 - 聊天完成API (
/chat/completions)-返回AI生成的答案
支持的型号:
sonar-快速、经济高效sonar-pro-更全面
故障排除
API关键问题
如果您遇到身份验证错误:
- 在验证您的API密钥https://www.perplexity.ai/settings/api
- 检查一下
PERPLEXITY_API_KEY设置正确 - 确保没有多余的空格或引号
超时错误
如果请求超时:
- 默认超时为搜索30秒,聊天60秒
- 复杂的问题可能需要更长的时间
- 考虑使用
reasoning_effort="low"以获得更快的响应
局部测试
测试单个工具:
uv run fastmcp dev server.py
这将打开一个交互式开发界面。
许可证
麻省理工学院
贡献
欢迎投稿!请打开问题或PR。