RocketMQ

Um servidor para interagir com o Apache RocketMQ, uma plataforma de mensagens e streaming distribuída, que requer variáveis de ambiente para configuração.

Documentação

RocketMQ MCP Server

Servidor MCP RocketMQ baseado em Spring Boot, que fornece interfaces HTTP para funcionalidades de gerenciamento do RocketMQ.

Estrutura do Projeto

rocketmq-mcp/
├── src/                         # Java源代码
│   └── main/java/org/apache/rocketmq/mcp/
│       ├── Startup.java         # 启动类
│       ├── ToolsLoader.java     # 工具加载器
│       ├── common/              # 通用工具类
│       ├── spring/              # Spring配置
│       └── tool/                # RocketMQ AI Agent Tools
├── test/                        # Python测试脚本和工具
│   ├── README.md               # 测试目录说明
│   ├── requirements.txt        # Python依赖
│   ├── TESTING.md              # 详细测试指南
│   ├── test_rocketmq_mcp_unittest.py # unittest版本
│   ├── demo_unittest.py        # unittest演示
│   └── run_unittest.sh         # unittest运行脚本
├── pom.xml                     # Maven配置
├── build.sh                    # 构建脚本
└── README.md                   # 本文件

Início Rápido

1. Construir o Projeto

./build.sh

2. Executar o Servidor

java -jar target/rocketmq-mcp-*.jar

O servidor iniciará na porta 6868.

3. Testar as Interfaces

Todos os scripts e ferramentas de teste estão no diretório test/. Consulte test/README.md para obter instruções detalhadas de uso.

Interfaces de API

O servidor fornece as seguintes interfaces HTTP para funcionalidades de gerenciamento do RocketMQ:

Interface Controller

  • POST /controller/getControllerConfig - Obter configuração do controlador
  • POST /controller/updateControllerConfig - Atualizar configuração do controlador

Interface Nameserver

  • POST /nameserver/getNameServerAddressList - Obter lista de endereços do NameServer
  • POST /nameserver/getKVConfig - Obter configuração KV

Interface Message

  • POST /message/viewMessage - Consultar mensagens

Interface Broker

  • POST /broker/getBrokerRuntimeStats - Obter estatísticas de execução do Broker

Interface ACL

  • POST /acl/getAclVersionList - Obter lista de versões ACL

Interface Consumer

  • POST /consumer/examineConsumerConnectionInfo - Obter informações de conexão do consumidor

Interface Topic

  • POST /topic/topicList - Obter lista de Topics

Interface Cluster

  • POST /cluster/clusterList - Obter informações do cluster

Interface Producer

  • POST /producer/examineProducerConnectionInfo - Obter informações de conexão do produtor

Interface ConsumeQueue

  • POST /consumequeue/examineConsumeQueue - Obter informações da fila de consumo

Instruções de Teste

Todos os scripts e ferramentas de teste em Python estão concentrados no diretório test/:

  • Scripts de teste padrão - Framework de teste personalizado que gera relatórios JSON detalhados
  • Versão unittest - Usa o framework de teste padrão do Python, adequado para integração CI/CD
  • Scripts de demonstração - Exibem várias funcionalidades do framework de teste
  • Scripts de execução - Simplificam o processo de execução de testes

Para instruções detalhadas de uso, consulte: test/README.md

Instruções de Configuração

A configuração do servidor está em src/main/resources/application.properties:

server.port=6868
spring.application.name=rocketmq-mcp

Gerenciamento de Dependências

  • Dependências Java: Gerenciadas pelo Maven, consulte pom.xml
  • Dependências de teste Python: Consulte test/requirements.txt

Instruções de Desenvolvimento

Adicionar Novas Classes de Ferramentas

  1. Crie uma nova classe de ferramentas no diretório src/main/java/org/apache/rocketmq/mcp/tool/
  2. Implemente a interface HTTP correspondente
  3. Registre a nova classe de ferramentas em ToolsLoader.java
  4. Adicione os casos de teste correspondentes no diretório test/

Estender Testes

  1. Adicione novos métodos de teste nos scripts de teste padrão
  2. Adicione os métodos de teste correspondentes na versão unittest
  3. Atualize os scripts de demonstração para exibir novos recursos
  4. Atualize a documentação de teste para descrever o novo escopo de testes

Depuração Local

  1. Inicie a ferramenta de depuração mcp
sh mcp_inspector.sh
  1. Insira as informações do endereço mcp local