Perplexity AI搜索服务

一个为Claude提供Perplexity AI网络搜索能力的MCP服务器,支持自动模型选择、状态过滤和7种专用工具。

  • by RossH121
  • TypeScript
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 RossH121/perplexity-mcp

使用说明

困惑MCP服务器

一个MCP服务器,为Claude提供困惑AI网络搜索功能,具有自动模型选择、状态过滤器和7个专用工具。

先决条件

安装

  1. 克隆此存储库:

    git clone https://github.com/RossH121/perplexity-mcp.git
    cd perplexity-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 构建服务器:

    npm run build
    

配置

将服务器添加到Claude的配置文件中 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "perplexity-server": {
      "command": "node",
      "args": ["/absolute/path/to/perplexity-mcp/build/index.js"],
      "env": {
        "PERPLEXITY_API_KEY": "your-api-key-here",
        "PERPLEXITY_MODEL": "sonar-pro"
      }
    }
  }
}

替换 /absolute/path/to 带有克隆存储库的实际路径。

可用模型

服务器会根据您的查询自动选择最佳模型,但您也可以通过以下方式设置默认模型 PERPLEXITY_MODEL:

型号 最适合
sonar-deep-research 全面的报告,详尽的多源研究
sonar-reasoning-pro 复杂逻辑、数学、思维链分析
sonar-pro 常规搜索,事实查询(默认)
sonar 快速、简单的查找

关于定价和可用性: https://docs.perplexity.ai/guides/pricing

工具

search --人工智能网络搜索

主要的搜索工具。根据您的查询自动选择正确的模型。返回包含引用来源的综合答案。

参数 选项 说明
query string 您的搜索查询
search_context_size low / medium / high 要检索多少网络上下文。 low 最快/最便宜(默认), high 是最彻底的
reasoning_effort minimal / low / medium / high 推理深度 sonar-deep-research
strip_thinking boolean 删除 <think>...</think> 推理模型响应的块
search_mode web / academic / sec academic 优先考虑同行评审的论文; sec 搜索SEC文件
stream boolean 启用流式响应

示例:

  • “聚变能的最新进展是什么?” → 自动选择 sonar-pro
  • “CRISPR基因编辑进展的深入研究分析” → 自动选择 sonar-deep-research
  • “逐步解决这个逻辑难题” → 自动选择 sonar-reasoning-pro

raw_search --原始排名结果(无法学硕士)

直接返回排名后的网络结果,无需人工智能合成。更快、更便宜——可用于URL发现、构建源列表或事实检查管道。

参数 选项 说明
query string 搜索查询
max_results 1–20 结果数(默认值:10)
search_mode web / academic / sec 搜索类型
recency hour / day / week / month / year 时间窗过滤器
search_after_date MM/DD/YYYY 仅此日期之后的结果
search_before_date MM/DD/YYYY 仅此日期之前的结果
country ISO 3166代码 本地化结果(例如。 US, GB)

domain_filter --允许列表/阻止列表域

从搜索结果中限制或排除特定域。过滤器将在所有后续搜索中持续存在,直到清除为止。

  • action: "allow" --将结果限制到此域(allowlist模式)
  • action: "block" --从结果中排除此域(denylist模式)
  • 最多20个域名;不能在同一筛选器集中混合使用allow和block
"Allow results only from arxiv.org and nature.com"
"Block pinterest.com and reddit.com from search results"

recency_filter --时间窗过滤器

将搜索结果限制在特定时间段内。坚持到改变。

选项: hour, day, week, month, year, none

"Set recency filter to week"
"Remove the recency filter"

clear_filters --重置所有过滤器

在一次调用中清除所有域和最近度筛选器。

list_filters --查看活动筛选器

显示当前活动的域分配列表/块列表和最近度设置。

model_info --查看或覆盖模型选择

查看可用模型和当前选择,或手动强制特定模型。

"Show model info"
"Set model to sonar-deep-research"

智能选型

服务器根据关键字列表对您的查询进行评分,以自动选择正确的模型:

  • 研究关键词(deep research, comprehensive, in-depth) → sonar-deep-research
  • 推理关键字(solve, logic, mathematical, figure out) → sonar-reasoning-pro
  • 简单关键字(quick, brief, basic) → sonar
  • 其他一切→ sonar-pro

每个响应都显示了使用了哪个模型以及为什么使用。如果查询与模型强烈匹配(得分≥2),它将覆盖手动设置的模型。

示例工作流

使用域过滤进行时间敏感研究:

  1. recency_filter → week
  2. domain_filter → allow nature.com,允许 arxiv.org
  3. search → “量子纠错的最新突破”

财务文件研究:

  1. raw_search 随着 search_mode: "sec" → 查找相关文件
  2. search 随着 search_mode: "sec" → 综合分析

学术文献综述:

  1. search 随着 search_mode: "academic", search_context_size: "high" → 来自同行评审来源的综合结果

推理控制的深入研究:

  1. search 随着 reasoning_effort: "high", strip_thinking: true → 彻底分析无 <think> 输出中的块

发展

npm run build   # Compile TypeScript to build/
npm start       # Run the built server

来源在 src/ --编辑后,重建并重新启动Claude以加载更改。

许可证

麻省理工学院