AM

amazon-mq/mcp-amqp-transport

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

21 stars 4 forks Качество 70 Тренд 30Apache-2.0

SDK для управления MCP через AMQP

Обзор

AMQP транспортирует реализацию для протокола Model Context Protocol (MCP), позволяя серверам и клиентам MCP общаться через брокеров сообщений AMQP, таких как RabbitMQ. Брокер сообщений обрабатывает гарантированную доставку, автоматические повторы, обработку ошибок и управление очередями мертвой буквы (DLQ): Сообщения сохраняются, поэтому, если сервер MCP выходит из строя, запросы могут быть возвращены после восстановления сервера: Добавьте больше экземпляров сервера MCP, просто привязывая дополнительные очереди к обмену - запросы брокера автоматически балансируют нагрузки - : Нажмите на потоки сообщений для аналитики, хранения данных, пользовательских ограждений, политик безопасности и бесшовной интеграции с существующей инфраструктурой корпоративной шины сообщений Полная реализация MCP-транспорта по протоколам AMQP 0.9.1 и AMQP 1.0: Классы ClientAMQPTransport и ServerAMQPTransport для AMQP 0.9.1, а также ClientAMQP10Transport и ServerAMQP10Transport для AMQP 1.

Обзор (машинный перевод)

AMQP транспортирует реализацию для протокола Model Context Protocol (MCP), позволяя серверам и клиентам MCP общаться через брокеров сообщений AMQP, таких как RabbitMQ.

Преимущества

Сниженная сложность: брокер сообщений обрабатывает гарантированную доставку, автоматические повторные запросы, обработку ошибок и управление очередями с мертвой буквой (DLQ) ** Толерантность к ошибкам**: Сообщения сохраняются, поэтому, если MCP-сервер выходит из строя, запросы могут быть удалены после восстановления сервера.

  • ** Легкое масштабирование**: Добавьте больше экземпляров MCP-сервера, просто привязывая дополнительные очереди к бирже - брокер автоматически запрашивает баланс нагрузки. ** Расширяемость**: нажмите на потоки сообщений для аналитики, хранения данных, пользовательских ограждений, политик безопасности и бесшовной интеграции с существующей инфраструктурой корпоративной шины сообщений

Особенности

AMQP Transport Layer: полная реализация MCP-перевозок по протоколам AMQP 0.9.1 и AMQP 1.0 ** Поддержка клиентов и серверов**: классы ClientAMQPTransport и ServerAMQPTransport для AMQP 0.9.1, плюс ClientAMQP10Transport и ServerAMQP10Transport для AMQP 1.0 Адапторы CLI: инструменты командной строки для соединения MCP-серверов/клиентов с AMQP (оба протокола)

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

MCP AMQP Transport [beta]

AMQP transport implementation for the Model Context Protocol (MCP), enabling MCP servers and clients to communicate over AMQP message brokers like RabbitMQ.

Benefits

  • Reduced Complexity: Message broker handles guaranteed delivery, automatic retries, error handling, and dead-letter queue (DLQ) management
  • Fault Tolerance: Messages are persisted, so if an MCP server fails, requests can be redelivered once the server recovers
  • Easy Scaling: Add more MCP server instances by simply binding additional queues to the exchange—the broker automatically load-balances requests
  • Extensibility: Tap into message flows for analytics, data lake storage, custom guardrails, security policies, and seamless integration with existing enterprise message bus infrastructure

Features

  • AMQP Transport Layer: Full implementation of MCP transport over AMQP 0.9.1 and AMQP 1.0 protocols
  • Client & Server Support: Both ClientAMQPTransport and ServerAMQPTransport classes for AMQP 0.9.1, plus ClientAMQP10Transport and ServerAMQP10Transport for AMQP 1.0
  • CLI Adaptors: Command-line tools to bridge stdio-based MCP servers/clients with AMQP (both protocols)
  • Interceptor Framework: Base class for building message interceptors
  • Flexible Configuration: Support for environment variables and direct configuration
  • TLS Support: Secure connections with AMQPS

Installation

npm install -g @aws/mcp-amqp-transport

Usage

Using Transport Classes

You need to configure the following environment variables:

AMQP_HOSTNAME - AMQP broker hostname
AMQP_USERNAME - username for your broker
AMQP_PASSWORD - password for your broker
AMQP_PORT - AMQP broker port (default: 5672 for AMQP, 5671 for AMQPS) 
AMQP_USE_TLS - Use TLS connection (default: true)

Example:

export AMQP_HOSTNAME=localhost
export AMQP_PORT=5672
export AMQP_USERNAME=guest
export AMQP_PASSWORD=guest
export AMQP_USE_TLS=false

AMQP 0.9.1 Transport (Default)

Server Transport
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { ServerAMQPTransport } from '@aws/mcp-amqp-transport';

const server = new Server(
  { name: 'my-server', version: '1.0.0' },
  { capabilities: {} }
);

// Configuration via environment variables
const transport = new ServerAMQPTransport({
  name: 'my-server',
  exchangeName: 'mcp-exchange'
  // hostname, port, username, password read from environment variables
});

await server.connect(transport);
Client Transport
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { ClientAMQPTransport } from '@aws/mcp-amqp-transport';
Открыть полный README на GitHub

Установка

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

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →