Skip to main content
Glama
IBM

MCP Perplexity Server

by IBM

MCP Perplexity Server

Overview

The MCP Perplexity Server is a lightweight Python-based microservice designed to provide simple echo functionality. It receives messages and returns them back to the client, serving as a basic diagnostic and testing tool within the MCP framework.

Related MCP server: Express MCP Server Echo

Project Details

  • Version: 0.1.0

  • Python Compatibility: Python 3.11+

Features

  • Message Echo: Returns any message sent to the server

  • Comprehensive Validation: Robust input validation using Pydantic models

  • Async Server Architecture: Built with asyncio for efficient performance

  • Flexible Configuration: Configurable through environment variables and config files

Dependencies

Core dependencies:

  • mcp (>=1.6.0)

  • pydantic (>=2.11.2)

  • PyYAML (>=6.0.2)

Development dependencies:

  • pytest (>=8.3.5)

Installation

Prerequisites

  • Python 3.11 or higher

  • pip

  • (Optional) Virtual environment recommended

Install from PyPI

pip install chuk-mcp-perplexity

Install from Source

  1. Clone the repository:

git clone <repository-url>
cd chuk-mcp-perplexity
  1. Create a virtual environment:

python -m venv venv
source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
  1. Install the package:

pip install .  # Installs the package in editable mode

Development Installation

To set up for development:

pip install .[dev]  # Installs package with development dependencies

Running the Server

Command-Line Interface

chuk-mcp-perplexity

Programmatic Usage

from chuk_mcp_perplexity.main import main

if __name__ == "__main__":
    main()

Environment Variables

  • NO_BOOTSTRAP: Set to disable component bootstrapping

  • Other configuration options can be set in the configuration files

Available Tools

Echo

Input:

  • message: The string message to echo back

Example:

echo("Hello, world!")

Returns:

  • The original message in an EchoResult object

Development

Code Formatting

  • Black is used for code formatting

  • isort is used for import sorting

  • Line length is set to 88 characters

Running Tests

pytest

Contributing

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/AmazingFeature)

  3. Ensure code passes formatting and testing

  4. Commit your changes (git commit -m 'Add some AmazingFeature')

  5. Push to the branch (git push origin feature/AmazingFeature)

  6. Open a Pull Request

License

Apache License 2.0

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A simple demonstration MCP server that provides an echo tool and resource for learning how to build MCP servers. Serves as a starting point and template for creating custom MCP server implementations.
    1
    -