mcpField
R
RabbitMQ Mcp Go

RabbitMQ Mcp Go

ローカル
github.com/maiconjobim開発ツール268 週間前に更新

RabbitMQ Mcp Go について

RabbitMQ MCP Go は、RabbitMQ 向けの Go 製 MCP サーバーです。標準化されたインターフェースでメッセージを送信する LLM アプリケーション向けに、テキストまたは JSON の本文と任意のヘッダーを扱います。

主な機能

  1. 01キューまたはエクスチェンジへのメッセージ送信
  2. 02テキストと JSON のコンテンツタイプに対応
  3. 03JSON 形式のメッセージヘッダーを指定

活用シーン

  1. 01キューにテキスト通知を送る
  2. 02エクスチェンジに JSON の注文更新を送る
  3. 03優先度などのヘッダー付きメッセージを送る

MCP 対応

MCP クライアントに RabbitMQ のメッセージ送信ツールを提供し、接続先は RABBITMQ_URL で設定します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

RabbitMQ MCP Go

RabbitMQ との統合を行う Model Control Protocol(MCP)サーバーの Go 実装です。

このサーバーは、MCP プロトコルを介して RabbitMQ とやり取りする機能を提供し、標準化されたインターフェースを通じて LLM モデルが一般的な RabbitMQ 操作を実行できるようにします。

Go Report Card Go Version SLSA 3 Go Reference GitHub Release License: MIT

rabbitmq-mcp-demo

概要

RabbitMQ MCP Server は LLM モデルと RabbitMQ の間を仲介し、次のことを可能にします。

  • RabbitMQ のキューまたはエクスチェンジにメッセージを公開する

プロジェクト構成

.
├── cmd/                    # Application entry points
├── internal/              # Private application code
│   ├── config/           # Configuration management
│   ├── tools/            # MCP tools implementations
│   ├── prompts/          # Prompt templates and configurations
│   └── resources/        # Shared resources and utilities
├── pkg/                   # Public library code
├── api/                   # API definitions and documentation
└── scripts/              # Build and utility scripts

ディレクトリの概要

内部ディレクトリ構成
  • tools/:すべての MCP ツール実装を格納します。各ツールは、MCP ツールインターフェースを実装する個別のパッケージです。
  • prompts/:MCP ツールで使用するプロンプトテンプレートと設定を格納します。
  • resources/:共有ユーティリティ、ヘルパー関数、再利用可能なコンポーネントを格納します。
  • config/:アプリケーションの設定を管理します。

はじめに

  1. Go 1.24.3 をインストールします:
asdf install golang 1.24.3
  1. リポジトリをクローンします:
git clone https://github.com/yourusername/rabbitmq-mcp-go.git
cd rabbitmq-mcp-go
  1. 依存関係をインストールします:
go mod download
  1. プロジェクトをビルドします:
go build ./cmd/...

MCP クライアントとの統合

基本設定

この設定を MCP クライアントの設定に追加します。

{
  "mcpServers": {
    "rabbitmq": {
      "command": "rabbitmq-mcp-server",
      "env": {
        "RABBITMQ_URL": "amqp://guest:guest@localhost:5672/"
      }
    }
  }
}
Cursor との統合

Cursor で使用するには、~/.cursor/mcp.json を作成または編集します。

{
  "mcpServers": {
    "rabbitmq": {
      "command": "rabbitmq-mcp-server",
      "env": {
        "RABBITMQ_URL": "amqp://guest:guest@localhost:5672/"
      }
    }
  }
}
Claude Desktop との統合

Claude Desktop で使用するには、設定ファイルを編集します。

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "rabbitmq": {
      "command": "rabbitmq-mcp-server",
      "env": {
        "RABBITMQ_URL": "amqp://guest:guest@localhost:5672/"
      }
    }
  }
}

RabbitMQ Publish ツールの使用

publish ツールを使用すると、MCP インターフェースを通じて RabbitMQ のキューまたはエクスチェンジにメッセージを送信できます。

ツールのパラメーター
  • queue(string、任意):公開先のキュー名
  • exchange(string、任意):公開先のエクスチェンジ名
  • message(string、必須):公開するメッセージの内容
  • content_type(string、任意):メッセージのコンテンツタイプ
    • 対応する値:"text/plain"(デフォルト)、"application/json"
  • headers(string、任意):JSON 形式のメッセージヘッダー
やり取りの例

1. キューへの公開:

User:「キュー 'my_queue' にメッセージ 'Hello World' を送信して」

AI アシスタントは publish ツールを使用します:

{
  "queue": "my_queue",
  "message": "Hello, World!",
  "content_type": "text/plain"
}

応答:

"Message published successfully to my_queue"

2. エクスチェンジへの JSON の公開:

User:「エクスチェンジ 'orders' に注文状況の更新を公開して」

AI アシスタントは publish ツールを使用します:

{
  "exchange": "orders",
  "message": "{\"order_id\": \"12345\", \"status\": \"completed\"}",
  "content_type": "application/json"
}

応答:

"Message published successfully to orders"

1. ヘッダーを指定した公開:

User:「notifications キューに優先度の高いメッセージを送信して」

AI アシスタントは publish ツールを使用します:

{
  "queue": "notifications",
  "message": "Important system update",
  "headers": "{\"priority\": \"high\", \"timestamp\": \"2024-03-20T12:00:00Z\"}"
}
エラー処理

次の場合、ツールはエラーを返します。

  • queue も exchange も指定されていない
  • 必須の message パラメーターが指定されていない
  • content_type が "application/json" の場合に JSON 形式が無効
  • RabbitMQ の接続または公開時のエラー

開発

新しい MCP ツールを追加するには:

  1. internal/tools/ の下に新しいディレクトリを作成します
  2. MCP ツールインターフェースを実装します
  3. メインアプリケーションにツールを登録します
  4. 必要に応じて internal/prompts/ に対応するプロンプトを追加します
  5. tools README にツールを記載します
貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

ライセンス

このプロジェクトは MIT License の下でライセンスされています。詳細については LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。