{"id":49027,"library":"queue-pilot","title":"queue-pilot","description":"MCP server for inspecting RabbitMQ and Kafka message queues, with JSON Schema validation for message payloads. Version 0.5.3. Active development with regular updates. Differentiates from generic MCP tools by combining multi-broker support (RabbitMQ management plugin, Kafka via peer dep @confluentinc/kafka-javascript) with schema validation on both inbound (publishing) and outbound (inspection) messages. Requires Node.js >=22 and a running broker. Provides an MCP server that works with any MCP client (Claude, Cursor, VS Code, etc.).","status":"active","version":"0.5.3","language":"javascript","source_language":"en","source_url":"https://github.com/LarsCowe/queue-pilot","tags":["javascript","mcp","mcp-server","model-context-protocol","rabbitmq","kafka","message-queue","message-broker","schema-validation","typescript"],"install":[{"cmd":"npm install queue-pilot","lang":"bash","label":"npm"},{"cmd":"yarn add queue-pilot","lang":"bash","label":"yarn"},{"cmd":"pnpm add queue-pilot","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Required peer dependency for Kafka broker support; optional if only using RabbitMQ","package":"@confluentinc/kafka-javascript","optional":true}],"imports":[{"note":"Package is a CLI MCP server, not a library. Must be run via npx or direct command. Schema path is required.","wrong":"npx queue-pilot without schema path (will fail with missing schema directory)","symbol":"queue-pilot (MCP server)","correct":"npx queue-pilot --schemas /path/to/schemas"},{"note":"The init command generates MCP client config. Use --help to see all options.","wrong":"queue-pilot init --schemas ./schemas (without npx prefix; works only if globally installed)","symbol":"init command","correct":"npx queue-pilot init --schemas ./schemas --client claude-code"},{"note":"Credentials are set as environment variables (RABBITMQ_USER, RABBITMQ_PASS, etc.) to avoid exposing in process list.","wrong":"npx queue-pilot --schemas ./schemas --rabbitmq-user admin (init command only; runtime uses env vars)","symbol":"Environment variables for credentials","correct":"RABBITMQ_USER=admin RABBITMQ_PASS=secret npx queue-pilot --schemas ./schemas"}],"quickstart":{"code":"mkdir -p schemas\ncat > schemas/order.created.json << 'EOF'\n{\n  \"$id\": \"order.created\",\n  \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n  \"title\": \"Order Created\",\n  \"type\": \"object\",\n  \"required\": [\"orderId\", \"amount\"],\n  \"properties\": {\n    \"orderId\": { \"type\": \"string\" },\n    \"amount\": { \"type\": \"number\" }\n  }\n}\nEOF\necho \"Schema created. Now init for Claude Code:\"\nnpx queue-pilot init --schemas $(pwd)/schemas --client claude-code","lang":"bash","description":"Creates a sample JSON Schema file and generates MCP client configuration for Claude Code."},"warnings":[{"fix":"Upgrade Node.js to version >=22.0.0.","message":"Node.js <22.0.0 is not supported. The server will fail to start.","severity":"breaking","affected_versions":">=0.1.0"},{"fix":"Install @confluentinc/kafka-javascript: npm install @confluentinc/kafka-javascript","message":"Kafka support requires the @confluentinc/kafka-javascript peer dependency to be installed. Missing it causes a runtime error.","severity":"breaking","affected_versions":">=0.1.0"},{"fix":"Use $(pwd)/schemas or an absolute path like /home/user/schemas.","message":"The --schemas argument must be an absolute path. Relative paths may cause 'directory not found' errors.","severity":"gotcha","affected_versions":">=0.5.0"},{"fix":"Set environment variables (RABBITMQ_USER, RABBITMQ_PASS, KAFKA_BOOTSTRAP_SERVERS, etc.) before launching the MCP client.","message":"The init command generates a config snippet that references environment variables. If those variable are not set at runtime, the server fails with connection errors.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'0.5.3':21 '22':59 'activ':22 'broker':36,63,95 'claud':74 'client':73 'code':77 'combin':33 'confluentinc/kafka-javascript':45 'context':86 'cursor':75 'dep':44 'develop':23 'differenti':27 'etc':78 'generic':29 'inbound':51 'inspect':7,55 'javascript':79 'json':14 'kafka':10,41,89 'manag':39 'mcp':4,30,66,72,80,82 'mcp-server':81 'messag':11,18,56,91,94 'message-brok':93 'message-queu':90 'model':85 'model-context-protocol':84 'multi':35 'multi-brok':34 'node.js':58 'outbound':54 'payload':19 'peer':43 'pilot':3 'plugin':40 'protocol':87 'provid':64 'publish':52 'queue':2,12,92 'queue-pilot':1 'rabbitmq':8,38,88 'regular':25 'requir':57 'run':62 'schema':15,47,97 'schema-valid':96 'server':5,67,83 'support':37 'tool':31 'typescript':99 'updat':26 'valid':16,48,98 'version':20 'via':42 'vs':76 'work':69","created_at":"2026-06-07T16:59:40.196784+00:00","updated_at":"2026-06-07T16:59:40.196784+00:00","problems":[{"fix":"Run 'npm install @confluentinc/kafka-javascript' in the project directory or globally.","cause":"Missing peer dependency for Kafka.","error":"Error: Cannot find module '@confluentinc/kafka-javascript'"},{"fix":"Provide an absolute path to the schemas directory, e.g., --schemas $(pwd)/schemas.","cause":"The --schemas path does not exist or is relative.","error":"Error: ENOENT: no such file or directory, stat '/path/to/schemas'"},{"fix":"Enable the management plugin: 'rabbitmq-plugins enable rabbitmq_management' and ensure RabbitMQ is started.","cause":"RabbitMQ management plugin is not enabled or RabbitMQ is not running.","error":"Error: Connection refused to RabbitMQ management API on localhost:15672"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/LarsCowe/queue-pilot#readme","github":"https://github.com/LarsCowe/queue-pilot","docs":null,"changelog":null,"pypi":null,"npm":"queue-pilot","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}