Overview
What is Hydra MCP?
Hydra MCP implements a Model Control Protocol server that enables Claude to interact with various client functions through a REST API interface. It consists of a central server that coordinates communication between multiple clients and exposes their functions to Claude via a standardized API.
How to use Hydra MCP?
Start the central server by running python ipc_server.py. Register client functions by sending a POST request to /register_functions with an endpoint name and function list. Then use the MCP tools (get_endpoints(), get_registered_functions(), call_function()) to discover and invoke functions from Claude.
Key features of Hydra MCP
- 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
Use cases of Hydra MCP
- Let Claude call functions from multiple remote client applications
- Register and manage client functions through a central server
- Discover available functions automatically for dynamic tool use
- Test client implementations with sample clients (fake_client.py, fake_claude.py)
FAQ from Hydra MCP
What is the default port for the server?
The server runs on port 6565 by default. This can be changed by modifying the API_SERVER_PORT constant in both ipc_server.py and ipc_api.py.
How do I start the server?
Run python ipc_server.py from the command line. The server will start and listen for client registrations and MCP requests.
How do I register a client?
Send a POST request to http://localhost:<API_SERVER_PORT>/register_functions with a JSON body containing an endpoint name and a functions list (each function has name, description, and parameters).
What MCP tools are available?
Three tools are provided: get_endpoints() lists all endpoints, get_registered_functions(endpoint) retrieves functions for a specific endpoint, and call_function(endpoint, function_name, arguments) invokes a function.
What are the dependencies?
The project requires FastAPI, uvicorn, requests, and fastmcp.