ZA

zoedsoupe/anubis-mcp

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

181 stars 74 forks 품질 54 트렌드 37NOASSERTION

Elixir 모델 컨텍스트 프로토콜 (MCP) SDK (hermes-mcp fork)

개요

Elixir에서 구현된 고성능 모델 컨텍스트 프로토콜(MCP) 구현입니다. Anubis MCP는 Model Context Protocol을 위한 포괄적인 Elixir SDK로, Elixir의 뛰어난 동시성 모델과 내결함성을 갖춘 완전한 클라이언트 및 서버 구현을 제공합니다. 이제 http://localhost: /mcp 에서 MCP 서버를 달성할 수 있습니다 저승의 신이자 사후 세계의 안내자인 이집트 신 아누비스의 이름을 딴 이 라이브러리는 대형 언어 모델과 외부 도구 사이의 경계를 탐색하는 데 도움을 줍니다. 아누비스가 영혼을 전환으로 안내했던 것처럼, 이 SDK는 AI와 외부 시스템 사이의 경계 공간을 통해 데이터를 안내합니다. 이 이름은 개인적인 의미도 담고 있습니다 - 제가 기업 암흑가를 거쳐 예상치 못하게 끝난 후, 이 프로젝트는 전작의 잿더미에서 다시 태어나 개발자들이 자신만의 MCP 모험을 이끌 준비가 되었습니다. 때로는 전환의 신이 도와줘야 할 때가 있습니다... 전환.

개요(AI 번역)

Elixir에서 구현된 고성능 모델 컨텍스트 프로토콜(MCP) 구현입니다.

개요

Anubis MCP는 Model Context Protocol을 위한 포괄적인 Elixir SDK로, Elixir의 뛰어난 동시성 모델과 내결함성을 갖춘 완전한 클라이언트 및 서버 구현을 제공합니다.

설치

지원되는 MCP 버전

anubis_mcp MCP 사양 버전
1.x 2024-11-05, 2025-03-26, 2025-06-18, 2025-11-25
2.x 2025-03-26, 2025-06-18, 2025-11-25, 2026-07-28

2.0의 주요 변경 사항:

  • 2024-11-05 사양 지원이 중단되었으며; 2025-03-26이 새로운 최하 기준입니다.
  • HTTP+SSE 전송(클라이언트의 {:sse, ...}, 서버의 Anubis.Server.Transport.SSE)은 상류에서 폐지된 후 제거되었습니다. 대신 Streamable HTTP ({:streamable_http, ...})를 사용하세요.

폐기 정책

업스트림 MCP 명세를 미러링하면:

  • **권장되지 않는 기능들은 최소 한 번의 소규모 릴리스 주기 동안 계속 작동하며, 문서화된 마이그레이션 경로와 함께 출시됩니다.
  • **삭제된 ** 기능은 주요 릴리스에서만 삭제됩니다. 스펙 버전을 제외하는 것은 항상 큰 돌파입니다.

퀵 스타트

서버

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

README

원문 README의 일부입니다. 원문 보기.

Anubis MCP

A high-performance Model Context Protocol (MCP) implementation in Elixir.

Overview

Anubis MCP is a comprehensive Elixir SDK for the Model Context Protocol, providing complete client and server implementations with Elixir’s exceptional concurrency model and fault tolerance.

Installation

def deps do
  [
    {:anubis_mcp, "~> 2.2.0"}  # x-release-please-version
  ]
end

Supported MCP versions

anubis_mcp MCP spec versions
1.x 2024-11-05, 2025-03-26, 2025-06-18, 2025-11-25
2.x 2025-03-26, 2025-06-18, 2025-11-25, 2026-07-28

Breaking changes in 2.0:

  • Support for spec version 2024-11-05 was dropped; 2025-03-26 is the new floor.
  • The HTTP+SSE transports ({:sse, ...} on the client, Anubis.Server.Transport.SSE on the server) were removed, following their deprecation upstream. Use Streamable HTTP ({:streamable_http, ...}) instead.

Deprecation policy

Mirroring the upstream MCP specification:

  • Deprecated features keep working for at least one minor release cycle and ship with a documented migration path.
  • Removed features are deleted only in major releases. Dropping a spec version is always a major bump.

Quick Start

Server

# Define a tool as a Component (compile-time registration)
defmodule MyApp.Echo do
  @moduledoc "Echoes everything the user says to the LLM"

  use Anubis.Server.Component, type: :tool

  alias Anubis.Server.Response

  schema do
    field :text, :string, required: true, max_length: 150, description: "the text to be echoed"
  end

  @impl true
  def execute(%{text: text}, frame) do
    {:reply, Response.text(Response.tool(), text), frame}
  end
end

defmodule MyApp.MCPServer do
  use Anubis.Server,
    name: "My Server",
    version: "1.0.0",
    capabilities: [:tools]

  # Static component registration — dispatches to MyApp.Echo.execute/2
  component MyApp.Echo

  @impl true
  def init(_client_info, frame) do
    # You can also register tools dynamically at runtime via the Frame:
    # frame = register_tool(frame, "dynamic_tool", description: "...", input_schema: %{...})
    {:ok, frame}
  end
end

# Add to your application supervisor
children = [
  {MyApp.MCPServer, transport: :streamable_http}
]

# Add to your Phoenix router (if using HTTP)
forward "/mcp", Anubis.Server.Transport.StreamableHTTP.Plug, server: MyApp.MCPServer

# Or if using only Plug router
GitHub에서 전체 README 보기

설치

This server does not publish a one-line install command.

Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →