hermes-mcp  by cloudwalk

Elixir SDK for Model Context Protocol

Created 7 months ago
304 stars

Top 87.8% on SourcePulse

GitHubView on GitHub
Project Summary

Hermes MCP is an Elixir SDK for the Model Context Protocol (MCP), offering robust client and server implementations. It targets developers building AI-powered applications that need to integrate LLMs with external tools, leveraging Elixir's concurrency and fault tolerance for high-performance communication.

How It Works

The library provides Hermes.Server and Hermes.Client modules. Servers define capabilities and tools with input schemas, handling tool calls via handle_tool callbacks. Clients are configured with a base URL and can call tools directly. The implementation utilizes Elixir's actor model and supervision trees for managing connections and requests, enabling efficient, fault-tolerant communication over protocols like streamable_http.

Quick Start & Requirements

  • Installation: Add {:hermes_mcp, "~> 0.13.0"} to your mix.exs dependencies.
  • Prerequisites: Elixir.
  • Server Setup: Define a server module using Hermes.Server, register tools, and add it to your application's supervisor. For HTTP, forward requests in your Plug/Phoenix router.
  • Client Setup: Define a client module using Hermes.Client, configure its transport, and add it to your supervisor.
  • Documentation: Official Documentation

Highlighted Details

  • Complete client and server implementations for MCP.
  • Supports streamable_http transport.
  • Examples provided for Plug, Phoenix, and Phoenix LiveView applications.
  • Tool definitions include input schemas and descriptions.

Maintenance & Community

The project is maintained by cloudwalk. Further community or roadmap information is not detailed in the README.

Licensing & Compatibility

  • License: MIT License.
  • Compatibility: Permissive MIT license allows for commercial use and integration with closed-source applications.

Limitations & Caveats

The README indicates version ~> 0.13.0, suggesting it is a relatively new library. Specific details on supported MCP protocol versions beyond the example 2025-03-26 are not explicitly stated.

Health Check
Last Commit

2 months ago

Responsiveness

1 day

Pull Requests (30d)
2
Issues (30d)
3
Star History
8 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.