MCP ExplorerExplorer

Mcp Everest

@spron-inon 9 months ago
1 Apache-2.0
FreeCommunity
AI Systems
Model Context Protocol server for Percona Everest

Overview

What is Mcp Everest

mcp-everest is an unofficial Model Context Protocol server implementation designed for Percona Everest, an open-source cloud-native database platform. It facilitates AI-powered interactions with Percona Everest database clusters using a standardized protocol.

Use cases

Use cases for mcp-everest include managing Percona Everest database clusters, integrating AI applications with database systems, and facilitating standardized interactions in multi-cloud environments.

How to use

To use mcp-everest, clone the repository, set up the required environment variables including the Everest API key, and run the server using the command ‘uv run --with mcp-everest mcp-everest’. You can also test it using the MCP Inspector development client.

Key features

Key features of mcp-everest include tools for listing database clusters, retrieving detailed information about specific clusters, fetching credentials, and obtaining components information for database clusters.

Where to use

mcp-everest can be used in cloud-native database management, AI-driven data interactions, and environments where standardized database communication is required.

Content

Unofficial Percona Everest MCP Server

An unofficial MCP (Model Context Protocol) server implementation for Percona Everest - an open-source cloud native database platform. This server enables AI-powered interaction with Percona Everest database clusters through a standardized protocol.

Available Tools

The MCP server provides the following tools for interacting with Percona Everest:

  • list_database_clusters(namespace): Lists all available database clusters in the specified namespace
  • get_database_cluster(namespace, name): Retrieves detailed information about a specific database cluster
  • get_database_cluster_credentials(namespace, name): Fetches credentials for a specific database cluster
  • get_database_cluster_components(namespace, name): Gets components information for a specific database cluster

Development Setup

  1. Clone the repository:
git clone https://github.com/spron-in/mcp-everest
cd mcp-everest
uv venv
source .venv/bin/activate
  1. Set up environment variables:
# Required
export EVEREST_API_KEY="your-api-key"

# Optional with defaults
export EVEREST_HOST="http://localhost:8080"  # Everest API base URL
export EVEREST_VERIFY_SSL="true"             # SSL verification
export EVEREST_TIMEOUT="30"                  # Request timeout in seconds
export EVEREST_READONLY="false"              # Read-only mode

Read Percona Everest documentation to learn more about API. I sent a pull request that explains how to get the API (JWT) key, hope it is going to be accepted soon.

  1. Run the server:
uv run --with mcp-everest mcp-everest

Testing and playing

Testing with MCP Inspector

To test the server with the MCP development client:

mcp dev mcp_everest/mcp_server.py

This requires Node to be installed. It will start a NodeJS MCP Inspector that you can open in your browser and play with.

Example mcp_client.py

There is also a client that can be used to interact with the MCP server:

python mcp_client.py

This is the example of how Large Language Model can talk to an MCP and use its tools. Read more in the blog post.

Future Development

Planned Improvements

  1. Official Integration

    • Work towards making this an official MCP server for Percona Everest
    • Submit for inclusion in popular MCP server collections
  2. API Coverage Expansion

    • Implement more GET endpoints from the Everest API
    • Add support for POST/PUT/DELETE operations (but have read-only mode available)
    • Add proper types and supported variables from API spec
    • Include resources and prompts into MCP
  3. Cross-Integration

    • Integrate with other database MCP servers (MongoDB, PostgreSQL, etc.)
    • Enable cross-database operations and management
    • Implement unified monitoring across different database platforms

Contributing

Contributions are welcome! Feel free to submit issues and pull requests.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers