入门攻略
MCP提交
探索
Researchmcp
内容详情
替代品
研究MCP
一个使用Perplexity AI的互联网研究服务,通过MCP协议提供模型完成协议(Model Completion Protocol)。
概述
研究MCP是一个通过MCP协议提供互联网研究能力的服务。它公开了一个“研究”工具,允许通过查询Perplexity AI的API获取深入且最新的各种主题信息。
特性
- 通过Perplexity AI进行互联网研究
- 集成MCP协议以实现工具发现和调用
- 具备优雅错误处理和降级模式
- 通过环境变量配置
- 结构化日志记录
需求
- Go 1.18或更高版本
- Perplexity AI API密钥
配置
服务通过环境变量进行配置:
变量名 | 描述 | 是否必填 | 默认值 |
---|---|---|---|
PERPLEXITY_API_KEY | Perplexity AI的API密钥 | 是 | - |
PERPLEXITY_MODEL | 使用的研究模型 | 否 | sonar-medium-online |
PERPLEXITY_TIMEOUT | API请求超时时间(秒) | 否 | 90 |
PERPLEXITY_MAX_RETRIES | 最大重试次数 | 否 | 2 |
PERPLEXITY_INITIAL_BACKOFF | 初始回退时间(秒) | 否 | 1 |
PERPLEXITY_MAX_BACKOFF | 最大回退时间(秒) | 否 | 10 |
使用方法
- 设置所需的环境变量(可以使用
.env
文件) - 构建并运行服务:
go build
./ResearchMCP
示例 .env
文件
PERPLEXITY_API_KEY=your_api_key_here
PERPLEXITY_MODEL=sonar-medium-online
PERPLEXITY_TIMEOUT=120
PERPLEXITY_MAX_RETRIES=3
PERPLEXITY_INITIAL_BACKOFF=2
PERPLEXITY_MAX_BACKOFF=15
API
研究工具
名称: research
输入模式:
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "研究查询或问题"
}
},
"required": ["query"]
}
示例请求:
{
"name": "research",
"arguments": {
"query": "量子计算的当前状态是什么?"
}
}
示例响应:
{
"content": [
{
"type": "text",
"text": "关于量子计算的综合研究报告...\n\n来源:\n- https://example.com/source1\n- https://example.com/source2"
}
]
}
开发
项目结构
main.go
: 应用程序入口点config.go
: 配置处理logger.go
: 日志记录基础设施perplexity.go
: Perplexity API集成structs.go
: 数据结构context.go
: 上下文处理
代码风格
使用提供的脚本运行格式化和linting:
./run_format.sh
./run_lint.sh
许可证
该项目根据MIT许可证发布,具体内容见LICENSE
文件。
AIbase是一个专注于MCP服务的平台,为AI开发者提供高质量的模型上下文协议服务,助力AI应用开发。
简体中文