Cover image
Try Now
2025-03-12

Eine vereinfachte Implementierung des MCP -Servers (Model Context Protocol) unter Verwendung von Elixirs Phoenix -Framework.

3 years

Works with Finder

1

Github Watches

4

Github Forks

49

Github Stars

MCPheonix

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

Overview

MCPheonix is an intelligent, self-healing, distributed AI event system using Model Context Protocol and Elixir's Phoenix Framework. It provides a server that implements the Model Context Protocol, allowing AI models to interact with your application data and functionality through a unified interface.

Features

  • Server-Sent Events (SSE) stream for real-time notifications
  • JSON-RPC endpoint for client requests
  • Simple resource system
  • Event publish/subscribe mechanism
  • Basic tool invocation
  • Flux image generation integration
  • Dart task management integration
  • Extensible MCP server architecture
  • Self-healing distributed architecture via Cloudflare Durable Objects
  • Edge computing capabilities through Cloudflare Workers

Self-Healing Distributed Architecture

MCPheonix implements a sophisticated self-healing system through its integration with Cloudflare Durable Objects and Workers, creating a distributed, resilient architecture that can withstand failures and ensure continuous operation.

Key Components

  • Durable Objects: Stateful serverless components running on Cloudflare's global edge network that maintain consistency even across failures.
  • Edge Distribution: Critical application state is replicated across Cloudflare's global network, ensuring availability even during regional outages.
  • Automatic Recovery: If an instance becomes unavailable, the system automatically recreates it with consistent state from durable storage.
  • Real-time Communication: WebSocket support enables instant recovery coordination and state synchronization across the distributed system.
  • Event-Driven Architecture: Components react to state changes through a publish/subscribe model, allowing the system to self-heal and adapt to failures.

For detailed information on the implementation, see the Cloudflare Integration documentation.

Getting Started

Prerequisites

  • Elixir 1.14 or higher
  • Erlang 25 or higher
  • Phoenix 1.7.0 or higher
  • Python 3.9+ (for Flux and Dart integration)
  • Node.js 18+ (for Dart MCP server)
  • Cloudflare account (for Durable Objects integration)

Installation

  1. Clone the repository
git clone https://github.com/yourusername/mcpheonix.git
cd mcpheonix
  1. Install dependencies
mix deps.get
  1. Configure the Cloudflare integration

    • Create a Cloudflare Worker using the template in cloudflare/durable-objects-worker.js
    • Deploy it to your Cloudflare account
    • Set the environment variables:
      • CLOUDFLARE_WORKER_URL: URL of your deployed worker
      • CLOUDFLARE_ACCOUNT_ID: Your Cloudflare account ID
      • CLOUDFLARE_API_TOKEN: API token with Workers and DO permissions
  2. Configure the Flux integration (if using image generation)

  3. Configure the Dart integration (if using task management)

  4. Start the server

mix phx.server

The server will be available at http://localhost:4001.

Adding Custom MCP Servers

MCPheonix is designed to work with multiple MCP servers. This system includes a flexible infrastructure for integrating custom MCP servers through:

  1. Simple JSON Configuration: Define your server settings in priv/config/mcp_servers.json:
{
  "mcpServers": {
    "your_server_id": {
      "command": "/path/to/executable",
      "args": ["arg1", "arg2"],
      "env": {
        "ENV_VAR1": "value1",
        "ENV_VAR2": "value2"
      },
      "tools": {
        "your_tool": {
          "description": "Description of your tool",
          "parameters": [
            { "name": "param1", "type": "string", "description": "Parameter description" }
          ]
        }
      }
    }
  }
}
  1. Automatic Server Management: Servers are automatically loaded and managed during application startup.

For comprehensive implementation details, including the Elixir architecture, server lifecycle management, and protocol handling, see the Adding MCP Servers documentation.

MCP Endpoints

  • SSE Stream: GET /mcp/stream

    • Establishes a Server-Sent Events stream for receiving real-time notifications
    • Returns a client ID in the response headers
  • JSON-RPC: POST /mcp/rpc

    • Accepts JSON-RPC 2.0 requests
    • Client ID can be provided in the x-mcp-client-id header or will be generated if missing

Built-in Capabilities

Resources

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Callycode Limited
  • A geek-themed horoscope generator blending Bitcoin prices, tech jargon, and astrological whimsy.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Beniyam Berhanu
  • Therapist adept at identifying core issues and offering practical advice with images.

  • Khalid kalib
  • Write professional emails

  • https://tovuti.be
  • Oede knorrepot die vasthoudt an de goeie ouwe tied van 't boerenleven

  • ANGEL LEON
  • A world class elite tech co-founder entrepreneur, expert in software development, entrepreneurship, marketing, coaching style leadership and aligned with ambition for excellence, global market penetration and worldy perspectives.

  • INFOLAB OPERATIONS 2
  • A medical specialist offering assistance grounded in clinical guidelines. Disclaimer: This is intended for research and is NOT safe for clinical use!

  • apappascs
  • Entdecken Sie die umfassendste und aktuellste Sammlung von MCP-Servern auf dem Markt. Dieses Repository dient als zentraler Hub und bietet einen umfangreichen Katalog von Open-Source- und Proprietary MCP-Servern mit Funktionen, Dokumentationslinks und Mitwirkenden.

  • OffchainLabs
  • GO -Umsetzung des Ethereum -Beweises des Anteils

  • huahuayu
  • Ein einheitliches API-Gateway zur Integration mehrerer Ethercan-ähnlicher Blockchain-Explorer-APIs mit Modellkontextprotokoll (MCP) für AI-Assistenten.

  • deemkeen
  • Steuern Sie Ihren MBOT2 mit einer Power Combo: MQTT+MCP+LLM

  • jae-jae
  • MCP -Server für den Fetch -Webseiteninhalt mit dem Headless -Browser von Dramatikern.

  • HiveNexus
  • Ein KI-Chat-Bot für kleine und mittelgroße Teams, die Modelle wie Deepseek, Open AI, Claude und Gemini unterstützt. 专为中小团队设计的 ai 聊天应用 , 支持 Deepseek 、 Open ai 、 claude 、 Gemini 等模型。

    Reviews

    5 (1)
    Avatar
    user_fOn1tqMO
    2025-04-15

    I've been using the Remote MCP Server on Cloudflare developed by githubpradeep, and it's been a game-changer for my projects. The seamless integration and robust performance make it reliable for remote server management. The user-friendly interface and quick setup are impressive, and it's incredibly efficient for deploying tasks. Highly recommended for anyone needing a reliable remote MCP server solution!