Researchmcp
ResearchMCP is a research service based on the MCP protocol, providing internet research functions by integrating the Perplexity AI API, and supporting configurable parameters and structured logs.
rating : 2.5 points
downloads : 15
🚀 Research MCP
A web research service using Perplexity AI, providing Model Completion Protocol (MCP).
🚀 Quick Start
Research MCP is a service that offers internet research capabilities through the MCP protocol. It exposes a "research" tool, allowing users to obtain in - depth and up - to - date information on various topics by querying the Perplexity AI API.
✨ Features
- Conduct internet research via Perplexity AI.
- Integrate the MCP protocol for tool discovery and invocation.
- Feature elegant error handling and degradation modes.
- Configure through environment variables.
- Implement structured logging.
📦 Installation
Requirements
- Go 1.18 or higher.
- Perplexity AI API key.
Configuration
The service is configured through environment variables:
Property | Details |
---|---|
Model Type | Service using MCP protocol to provide internet research capabilities |
Training Data | Perplexity AI API |
Property | Details |
---|---|
PERPLEXITY_API_KEY | Perplexity AI's API key. Required. |
PERPLEXITY_MODEL | The research model to use. Default: sonar - medium - online. |
PERPLEXITY_TIMEOUT | API request timeout in seconds. Default: 90. |
PERPLEXITY_MAX_RETRIES | Maximum number of retries. Default: 2. |
PERPLEXITY_INITIAL_BACKOFF | Initial backoff time in seconds. Default: 1. |
PERPLEXITY_MAX_BACKOFF | Maximum backoff time in seconds. Default: 10. |
💻 Usage Examples
Basic Usage
- Set the required environment variables (you can use a
.env
file). - Build and run the service:
go build
./ResearchMCP
Example .env
file
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
📚 Documentation
Research Tool
Name: research
Input Schema:
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Research query or question"
}
},
"required": ["query"]
}
Example Request:
{
"name": "research",
"arguments": {
"query": "What is the current state of quantum computing?"
}
}
Example Response:
{
"content": [
{
"type": "text",
"text": "A comprehensive research report on quantum computing...\n\nSources:\n- https://example.com/source1\n- https://example.com/source2"
}
]
}
🔧 Technical Details
Project Structure
main.go
: Entry point of the application.config.go
: Configuration handling.logger.go
: Logging infrastructure.perplexity.go
: Perplexity API integration.structs.go
: Data structures.context.go
: Context handling.
Code Style
Run formatting and linting using the provided scripts:
./run_format.sh
./run_lint.sh
📄 License
This project is released under the MIT License. See the LICENSE
file for details.
Featured MCP Services

Markdownify MCP
Markdownify is a multi-functional file conversion service that supports converting multiple formats such as PDFs, images, audio, and web page content into Markdown format.
TypeScript
1.7K
5 points

Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
823
4.3 points

Gitlab MCP Server
Certified
The GitLab MCP server is a project based on the Model Context Protocol that provides a comprehensive toolset for interacting with GitLab accounts, including code review, merge request management, CI/CD configuration, and other functions.
TypeScript
79
4.3 points

Notion Api MCP
Certified
A Python-based MCP Server that provides advanced to-do list management and content organization functions through the Notion API, enabling seamless integration between AI models and Notion.
Python
130
4.5 points

Unity
Certified
UnityMCP is a Unity editor plugin that implements the Model Context Protocol (MCP), providing seamless integration between Unity and AI assistants, including real - time state monitoring, remote command execution, and log functions.
C#
554
5 points

Figma Context MCP
Framelink Figma MCP Server is a server that provides access to Figma design data for AI programming tools (such as Cursor). By simplifying the Figma API response, it helps AI more accurately achieve one - click conversion from design to code.
TypeScript
6.6K
4.5 points

Context7
Context7 MCP is a service that provides real-time, version-specific documentation and code examples for AI programming assistants. It is directly integrated into prompts through the Model Context Protocol to solve the problem of LLMs using outdated information.
TypeScript
5.2K
4.7 points

Minimax MCP Server
The MiniMax Model Context Protocol (MCP) is an official server that supports interaction with powerful text-to-speech, video/image generation APIs, and is suitable for various client tools such as Claude Desktop and Cursor.
Python
745
4.8 points