Changelog

All notable changes to this project are documented in this file.

0.10.0 (2025-06-18)

Features

Miscellaneous Chores

0.9.1 (2025-06-13)

Bug Fixes

0.9.0 (2025-06-12)

Features

Bug Fixes

  • allow registering a name for the client supervisor (#117) (d356511)

0.8.2 (2025-06-11)

Code Refactoring

0.8.1 (2025-06-10)

Bug Fixes

  • hermes should respect mix releases startup (#109) (f42d476)

0.8.0 (2025-06-10)

Features

  • inject user and transport data on mcp server frame (#106) (feb2ce3)
  • legacy sse server transport (#102) (4a71088)

Bug Fixes

  • allow empty capabilities on incoming JSON-RPC messages (#105) (f0ad4cf), closes #96

Miscellaneous Chores

  • release please should include all files (#108) (d0a25b9)

0.7.0 (2025-06-09)

Features

  • allow json schema fields on tools/prompts definition (#99) (0345f12)

0.6.0 (2025-06-09)

Features

  • allow customize server registry impl (#94) (f3ac087)
  • mcp high level server components definition (#91) (007f41d)
  • mcp server handlers refactored (#92) (e213e04)

Bug Fixes

  • correctly handle mcp requests on phoenix apps (#88) (09f4235), closes #86

Miscellaneous Chores

Code Refactoring

0.5.0 (2025-06-05)

Features

  • client support new mcp spec (#83) (73d14f7)
  • enable log disabling (#78) (fa1453f)
  • low level genservy mcp server implementation (stdio + stremable http) (#77) (e6606b4)
  • mvp higher level mcp server definition (#84) (a5fec1c)

Code Refactoring

  • base mcp server implementation correctly uses streamable http (#85) (29060fd)

0.4.0 - 2025-05-06

Added

  • Implemented WebSocket transport (#70)
  • Emit telemetry events (#54)
  • Implement client feature completion request (#72)
  • Implement client feature roots, server requests (#73)

0.3.12 - 2025-04-24

Fixed

  • Correctly handles "nested" timeouts (genserver vs MCP) (#71)

0.3.11 - 2025-04-17

Added

  • Improved core library logging and added verbosity level on interactive/CLI (#68)

0.3.10 - 2025-04-17

Fixed

  • Handle SSE ping and reconnect events from server (#65)

0.3.9 - 2025-04-15

Fixed

  • Improved and simplified SSE endpoint event URI merging (#64)

Added

  • Added internal client/transport state inspection on CLI/mix tasks (#61)

0.3.8 - 2025-04-10

Added

  • Created Operation struct to standardize client API calls (#56)
  • Fixed ERTS version to avoid release errors

Fixed

  • Resolved client timeout confusion by standardizing timeout handling (#42)

0.3.7 - 2025-04-01

Fixed

  • Client reinitialization from interactive CLI (#55)

0.3.6 - 2025-03-28

Added

  • New roadmap and protocol update proposal (#53)
  • Added documentation for the 2025-03-26 protocol update

0.3.5 - 2025-03-25

Documentation

  • Added Roadmap to README (#47)

0.3.4 - 2025-03-20

Added

  • help command and flag on the interactive CLI (#37)
  • improve SSE connection status on interactive task/cli (#37)

0.3.3 - 2025-03-20

Added

  • Client request cancellation support (#35)
  • Improved URI path handling for SSE transport (#36)
  • Enhanced interactive mix tasks for testing MCP servers (#34)

0.3.2 - 2025-03-19

Added

  • Ship static binaries to use hermes-mcp as standalone application

0.3.1 - 2025-03-19

Added

  • Ship interactive mix tasks stdio.interactive and sse.interactive to test MCP servers

0.3.0 - 2025-03-18

Added

  • Structured server-client logging support (#27)
  • Progress notification tracking (#26)
  • MCP domain model implementation (#28)
  • Comprehensive SSE unit tests (#20)
  • Centralized state management (#31)
  • Standardized error response handling (#32)

Fixed

  • Improved domain error handling (#33)

0.2.3 - 2025-03-12

Added

  • Enhanced SSE transport with graceful shutdown capabilities (#25)
  • Improved SSE streaming with automatic reconnection handling (#25)

0.2.2 - 2025-03-05

Added

  • Support for multiple concurrent client <> transport pairs (#24)
  • Improved client resource management

0.2.1 - 2025-02-28

Added

  • Support for custom base and SSE paths in HTTP/SSE client (#19)
  • Enhanced configuration options for SSE endpoints

0.2.0 - 2025-02-27

Added

  • Implemented HTTP/SSE transport (#7)
    • Support for server-sent events communication
    • HTTP client integration for MCP protocol
    • Streaming response handling

Documentation

  • Extensive guides and documentation improvements

0.1.0 - 2025-02-26

Added

  • Implemented STDIO transport (#1) for MCP communication

    • Support for bidirectional communication via standard I/O
    • Automatic process monitoring and recovery
    • Environment variable handling for cross-platform support
    • Integration test utilities in Mix tasks
  • Created stateful client interface (#6)

    • Robust GenServer implementation for MCP client
    • Automatic initialization and protocol handshake
    • Synchronous-feeling API over asynchronous transport
    • Support for all MCP operations (ping, resources, prompts, tools)
    • Proper error handling and logging
    • Capability negotiation and management
  • Developed JSON-RPC message parsing (#5)

    • Schema-based validation of MCP messages
    • Support for requests, responses, notifications, and errors
    • Comprehensive test suite for message handling
    • Encoding/decoding functions with proper validation
  • Established core architecture and client API

    • MCP protocol implementation following specification
    • Client struct for maintaining connection state
    • Request/response correlation with unique IDs
    • Initial transport abstraction layer

Documentation

  • Added detailed RFC document describing the library architecture
  • Enhanced README with project overview and installation instructions