MCP.so
登录

MCPheonix

@jmanhype

关于 MCPheonix

A simplified implementation of the Model Context Protocol (MCP) server using Elixir's Phoenix Framework.

基本信息

分类

其他

许可证

MIT

运行时

elixir

传输方式

stdio

发布者

jmanhype

配置

使用下面的配置,将此服务器添加到你的 MCP 客户端。

{
  "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": "..."
            }
          ]
        }
      }
    }
  }
}

工具

未检测到工具

工具是从 README 中自动提取的。维护者可以在 ## Tools 标题下列出工具,即可填充这部分内容。

概览

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 (returns x-mcp-client-id header).
  • POST /mcp/rpc – JSON-RPC 2.0 (requires x-mcp-client-id header).

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.

评论

其他 分类下的更多 MCP 服务器