mcp_sse

mcp_sseは、サーバー送信イベント(SSE)を介してモデルコンテキストプロトコル(MCP)を実装するためのシンプルなライブラリです。このライブラリは、MCPの仕様に基づいており、リアルタイムデータのストリーミングを容易にします。開発者は、MCPサーバーを簡単に作成し、クライアントとの通信を効率化できます。

GitHubスター

64

ユーザー評価

未評価

お気に入り

0

閲覧数

24

フォーク

17

イシュー

2

インストール方法
難易度
中級
推定所要時間
10-20
必要な環境
Elixir: 1.12以上
Phoenix Framework: 1.5以上(Phoenixアプリケーションの場合)

インストール方法

インストール方法

前提条件

Elixir: 1.12以上
Phoenix Framework: 1.5以上(Phoenixアプリケーションの場合)

インストール手順

1. 依存関係の追加

mix.exsに以下を追加します:
elixir
def deps do
  [
    {:mcp_sse, "~> 0.1.0"}
  ]
end

2. 設定の追加

config/config.exsに以下を追加します:
elixir

MIMEタイプの設定

config :mime, :types, %{ "text/event-stream" => ["sse"] }

MCPサーバーの設定

config :mcp_sse, :mcp_server, YourApp.YourMCPServer

3. アプリケーションのコンパイル

bash
mix deps.get
mix compile

トラブルシューティング

よくある問題

問題: サーバーが起動しない 解決策: Elixirのバージョンを確認し、依存関係を再インストールしてください。

設定方法

設定方法

基本設定

MCPサーバーの実装

MCPServerの振る舞いを実装する必要があります。必要なコールバック(handle_ping/1およびhandle_initialize/2)を実装し、サポートしたい機能に応じてオプションのコールバックを追加します。

設定例

elixir
defmodule YourApp.YourMCPServer do
  use MCPServer

  def handle_ping(state) do
    {:ok, state}
  end

  def handle_initialize(params, state) do
    {:ok, state}
  end
end

使用例

使用例

MCPサーバーの基本的な使用方法

elixir

サーバーの起動

YourApp.YourMCPServer.start_link()

クライアントからの呼び出し

javascript
// JavaScript例(Node.js)
const { MCPClient } = require('@modelcontextprotocol/client');

const client = new MCPClient();
await client.connect();

// ツールの実行
const result = await client.callTool('toolName', {
  parameter1: 'value1',
  parameter2: 'value2'
});

console.log(result);

使用ケース

リアルタイムデータストリーミングを必要とするアプリケーションでの使用
AIツールの実行結果を即時に受け取るためのインターフェースとしての利用
複数のクライアントからのリクエストを管理するサーバーの構築
セッション管理を通じてユーザーごとのデータを保持するシステムの構築

追加リソース