
hydra mcp
Just a test project for an intermediate server between endpoints and Claude's MCP
Repository Info
About This Server
Just a test project for an intermediate server between endpoints and Claude's MCP
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Hydra MCP
This project implements a Hydra MCP (Model Control Protocol) server that enables Claude to interact with various client functions through a REST API interface. The system consists of a central server that coordinates communication between multiple clients and exposes their functions to Claude through a standardized API.
!Claude using the Hydra MCP plugin
Project Structure
ipc_server.py: The central FastAPI server that manages function registration and routingipc_api.py: The Hydra MCP interface that exposes client functions to Claudefake_client.py: A sample client implementation for testingfake_claude.py: A test implementation of Claude's interface
Features
- Centralized function registry for multiple clients
- REST API endpoints for function discovery and invocation
- Standardized communication protocol between clients and Claude
- Easy-to-use function registration system
- Automatic function discovery and documentation
API Endpoints
Server Endpoints
POST /register_functions: Register new functions from a clientGET /get_functions: Retrieve the list of all registered functions
MCP Tools
get_endpoints(): List all available endpointsget_registered_functions(endpoint): Get functions available at a specific endpointcall_function(endpoint, function_name, arguments): Call a specific function with arguments
Usage
- Start the central server:
python ipc_server.py
- Register client functions:
# Example client registration
functions = [
{
"name": "example_function",
"description": "An example function",
"parameters": {
"param1": "string",
"param2": "integer"
}
}
]
requests.post(
f"http://localhost:{API_SERVER_PORT}/register_functions",
json={
"endpoint": "client1",
"functions": functions
}
)
- Use the MCP interface to interact with functions:
# Get available endpoints
endpoints = get_endpoints()
# Get functions for a specific endpoint
functions = get_registered_functions("localhost:1234")
# Call a function
result = call_function("localhost:1234", "example_function", {"param1": "value", "param2": 42})
Configuration
The server runs on port 6565 by default. This can be modified by changing the API_SERVER_PORT constant in both ipc_server.py and ipc_api.py.
Dependencies
- FastAPI
- uvicorn
- requests
- fastmcp
Testing
The project includes sample implementations (fake_client.py and fake_claude.py) for testing the functionality. These can be used as reference implementations for creating new clients or testing the system.
Quick Start
Clone the repository
git clone https://github.com/keyboardsmoke/hydra-mcpInstall dependencies
cd hydra-mcp
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.