MCPheonix
@jmanhype
About MCPheonix
A simplified implementation of the Model Context Protocol (MCP) server using Elixir's Phoenix Framework.
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"your_server": {
"command": "/path/to/executable",
"args": [
"arg1"
],
"env": {
"API_KEY": "value"
},
"tools": {
"tool_name": {
"description": "What it does",
"parameters": [
{
"name": "param1",
"type": "string",
"description": "..."
}
]
}
}
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is MCPheonix?
MCPheonix is an MCP server built on the Phoenix Framework (Elixir) that exposes Server-Sent Events and JSON-RPC endpoints for MCP clients. It manages multiple child MCP servers as supervised OTP processes, configured via a JSON file. This server is intended for developers who need to orchestrate specialized MCP sub-servers (e.g., Flux image generation, Dart task management) from a single Phoenix web server.
How to use MCPheonix?
Clone the repository, run mix deps.get, then mix phx.server to start the server on port 4001. Child MCP servers are defined in priv/config/mcp_servers.json and are automatically started at boot. Clients connect to GET /mcp/stream for SSE and POST /mcp/rpc for JSON-RPC 2.0 requests.
Key features of MCPheonix
- Runs a Phoenix web server on port 4001 with SSE and JSON-RPC endpoints.
- Manages child MCP servers as supervised OTP processes.
- Supports Flux image generation and Dart task management as built-in child servers.
- Accepts JSON configuration for adding arbitrary child MCP servers.
- Event system powered by Broadway and GenStage.
- Optional Cloudflare Durable Objects integration (experimental).
Use cases of MCPheonix
- Centralized MCP server routing tool calls to multiple specialized child servers.
- Managing Flux image generation as a subprocess via MCP.
- Managing Dart task management as a subprocess via MCP.
- Building custom MCP server orchestration with Elixir OTP supervision.
FAQ from MCPheonix
What runtime dependencies does MCPheonix require?
Elixir >= 1.14, Erlang/OTP >= 25, Phoenix ~> 1.7, Node.js >= 18, and Python >= 3.9 (optional for Flux/Dart).
How do I add a new child MCP server?
Edit priv/config/mcp_servers.json with the server's command, arguments, environment variables, and tool definitions. The server starts automatically as a supervised process.
What MCP endpoints are available?
GET /mcp/stream– SSE stream (returnsx-mcp-client-idheader).POST /mcp/rpc– JSON-RPC 2.0 (requiresx-mcp-client-idheader).
Does MCPheonix support authentication?
No. The MCP endpoints currently have no authentication built-in.
What are the known limitations?
No authentication, SSE connections are not persisted across restarts, and the Cloudflare Durable Objects integration relies on a custom hex package that may not be publicly available.
More Other MCP servers
Maestro
mobile-dev-incPainless E2E Automation for Mobile and Web
MCP Registry
modelcontextprotocolA community driven registry service for Model Context Protocol (MCP) servers.

EverArt
modelcontextprotocolModel Context Protocol Servers
Awesome Mcp Servers
punkpeyeA collection of MCP servers.
Production-ready MCP integrations for AI applications
Klavis-AIKlavis AI: MCP integration platforms that let AI agents use tools reliably at any scale
Comments