Cover image
Try Now
2025-03-23

MCP server for Perplexity

3 years

Works with Finder

1

Github Watches

1

Github Forks

1

Github Stars

ResearchMCP

A Model Completion Protocol (MCP) service for internet research using Perplexity AI.

Overview

ResearchMCP is a service that provides internet research capabilities through the MCP protocol. It exposes a "research" tool that allows querying Perplexity AI's API for in-depth, up-to-date information on a wide range of topics.

Features

  • Internet research through Perplexity AI
  • Integration with MCP protocol for tool discovery and invocation
  • Graceful error handling with degraded mode
  • Configurable through environment variables
  • Structured logging

Requirements

  • Go 1.18 or later
  • Perplexity AI API key

Configuration

The service is configured through environment variables:

Variable Description Required Default
PERPLEXITY_API_KEY API key for Perplexity AI Yes -
PERPLEXITY_MODEL Model to use for research No sonar-medium-online
PERPLEXITY_TIMEOUT Timeout in seconds for API requests No 90
PERPLEXITY_MAX_RETRIES Maximum number of retry attempts No 2
PERPLEXITY_INITIAL_BACKOFF Initial backoff time in seconds No 1
PERPLEXITY_MAX_BACKOFF Maximum backoff time in seconds No 10

Usage

  1. Set up the required environment variables (you can use a .env file)
  2. 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

API

Research Tool

Name: research

Input Schema:

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "The 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": "Comprehensive research report on quantum computing...\n\nSources:\n- https://example.com/source1\n- https://example.com/source2"
    }
  ]
}

Development

Project Structure

  • main.go: Application entry point
  • 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 with the provided scripts:

./run_format.sh
./run_lint.sh

License

This project is licensed under the MIT License - see the LICENSE file for details.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Lists Tailwind CSS classes in monospaced font

  • Beniyam Berhanu
  • Therapist adept at identifying core issues and offering practical advice with images.

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • apappascs
  • Discover the most comprehensive and up-to-date collection of MCP servers in the market. This repository serves as a centralized hub, offering an extensive catalog of open-source and proprietary MCP servers, complete with features, documentation links, and contributors.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • huahuayu
  • A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.

  • deemkeen
  • control your mbot2 with a power combo: mqtt+mcp+llm

  • jae-jae
  • MCP server for fetch web page content using Playwright headless browser.

    Reviews

    2 (1)
    Avatar
    user_xsZNdDbH
    2025-04-15

    Terminal is an incredibly efficient application created by rishabkoul. It streamlines my workflow with its user-friendly interface and robust features. The seamless experience provided by this tool has significantly boosted my productivity. Would highly recommend it to anyone looking for a powerful terminal emulator. For more details, check it out at https://mcp.so/server/terminal/rishabkoul.