MCP HubMCP Hub
event-catalog

mcp-server

by: event-catalog

MCP server for EventCatalog

13created 17/03/2025
Visit
EventCatalog

πŸ“ŒOverview

Purpose: The EventCatalog MCP Server aims to enhance the EventCatalog experience by enabling users to interact with their event-driven architecture through various MCP clients.

Overview: EventCatalog is an Open Source tool designed for documenting event-driven architectures. By using the MCP Server, users can easily ask questions and retrieve information about their architecture, including domains, services, and schemas, directly from popular client applications.

Key Features:

  • MCP Client Integration: Seamlessly connect with various MCP clients (e.g., Claude, Cursor, Windsurf) to facilitate interaction with EventCatalog.

  • Local Deployment: Run the MCP server locally with a single command, ensuring quick and easy access to the EventCatalog functionalities.

  • Versatile Queries: Users can inquire about domains, services, and messages, and receive answers within seconds, thus enhancing productivity and understanding of the architecture.

  • Schema Access: Obtain event, query, command, and service schemas in formats like OpenAPI and AsyncAPI, streamlining documentation and integration processes.


πŸ“– EventCatalog - MCP Server

Get insights from your EventCatalog directly from your MCP Client (Claude, Cursor, Windsurf, etc).

Features: Ask about domains, services and messages. Get answers in seconds. Request schemas, who owns what and much more.

Read the Docs | View Demo


Features

  • πŸ€– Connect to any MCP Client (Claude, Cursor, Windsurf, etc)
  • πŸ€– Run MCP server locally on your machine with one command
  • πŸ€– Connect to your EventCatalog instances
  • πŸ€– Ask questions about your architectures
  • πŸ€– Ask questions about your OpenAPI and AsyncAPI specifications
  • πŸ€– Ask about domains, services and messages, and much more
  • πŸ€– Get the schemas for events, queries, commands and services (OpenAPI, AsyncAPI, JSON Schema)

Using AI to get more value from EventCatalog

EventCatalog is an Open Source tool that helps you document your event-driven architecture. You can document your domains, services and messages, schemas and more.

EventCatalog visualizes your architecture, allows you to add semantic meaning for stakeholders, hosts your OpenAPI and AsyncAPI specifications, and integrates with any broker.

With the EventCatalog MCP Server, you can ask questions about your architecture in the tools you already use:

  • Developers can integrate the MCP server with MCP supported IDEs (e.g. Cursor, Windsurf)
  • Stakeholders can ask questions in tools like Claude
  • For tools without MCP protocol support, use the llms.txt standard to integrate with other LLM tools (e.g. Gemini, GPT-4)

Getting Started

Installation

First, enable the LLMS.txt feature in your EventCatalog instance by configuring your eventcatalog.config.js file and redeploy.

Installing via Smithery

To install EventCatalog for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @event-catalog/mcp-server --client claude

Setup MCP Clients

Each MCP client has a different way of adding the MCP server.

Helpful links to get started:

  • Adding the MCP server to Claude Desktop
  • Adding the MCP server to Cursor

Adding the MCP server to Claude Desktop

Add the following to your claud_desktop_config.json file.

MacOS path: ~/Library/Application Support/Claude/claud_desktop_config.json
Windows path: %APPDATA%\Claude\claud_desktop_config.json

{
  "mcpServers": {
    "eventcatalog": {
      "command": "npx",
      "args": [
        "-y",
        "@eventcatalog/mcp-server",
        "https://demo.eventcatalog.dev" // Replace with your EventCatalog URL
      ]
    }
  }
}

Adding the MCP server to Cursor

Go to Cursor Settings -> MCP Servers -> Add MCP Server.

  • Name: eventcatalog
  • Command: npx
  • Args: -y @eventcatalog/mcp-server {URL_TO_YOUR_EVENTCATALOG_INSTANCE}

Configuration for your project

Create .mcp.json files in your project to configure the MCP server:

{
  "mcpServers": {
    "eventcatalog": {
      "command": "npx",
      "args": ["-y", "@eventcatalog/mcp-server", "https://demo.eventcatalog.dev"]
    }
  }
}

More about configuration in the Cursor documentation.

API

Resources

  • eventcatalog://all - Returns all messages, domains, services in the catalog
  • eventcatalog://domains - Returns all domains
  • eventcatalog://services - Returns all services
  • eventcatalog://events - Returns all events
  • eventcatalog://queries - Returns all queries
  • eventcatalog://commands - Returns all commands
  • eventcatalog://flows - Returns all flows
  • eventcatalog://teams - Returns all teams
  • eventcatalog://users - Returns all users

Tools

  • get_domains - Returns list of all domains
  • get_services - Returns list of all services
  • get_events - Returns list of all events
  • get_commands - Returns list of all commands
  • get_queries - Returns list of all queries
  • get_flows - Returns list of all flows
  • get_teams - Returns list of all teams
  • get_team - Returns a team
  • get_users - Returns list of all users
  • get_user - Returns a user

Schemas

  • get_event_schema - Returns schema for an event id
  • get_query_schema - Returns schema for a query id
  • get_command_schema - Returns schema for a command id

OpenAPI

  • get_openapi_spec - Returns OpenAPI spec for a service id
  • get_asyncapi_spec - Returns AsyncAPI spec for a service id

Missing an API?

If you need something specific, please open an issue in the GitHub repository to request it.

TODO

Some ideas for the MCP server:

  • Add support for private hosted EventCatalog instances (custom headers/auth for fetch requests)
  • Add prompts/tools to write to EventCatalog (based on community interest)
  • Add support to get teams and users
  • Add support to get flows from EventCatalog

Contributing

  1. Clone the repository
  2. Run pnpm install to install dependencies
  3. Run pnpm run build to build

To use the build as your MCP server, point your MCP client to the dist folder.

Example for Cursor:

{
  "mcpServers": {
    "eventcatalog": {
      "command": "npx",
      "args": ["-y", "tsx /PATH_TO_YOUR_REPO/src/index.ts", "https://demo.eventcatalog.dev"]
    }
  }
}

Sponsors

Thank you to our project sponsors.

Gold sponsors

Gravitee
Manage, secure, and govern every API in your organization
Learn more

Oso
Delivering Apache Kafka professional services to your business
Learn more

Sponsors help make EventCatalog sustainable, want to help the project? Get in touch!

Enterprise support

Interested in collaborating with us? Our offerings include dedicated support, priority assistance, feature development, custom integrations, and more.

Find more details on our services page.

License

Usage of this feature is part of the EventCatalog Pro Edition