npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@eventcatalog/mcp-server

v1.2.0

Published

MCP server for EventCatalog

Readme

Read the Docs | View Demo

Why EventCatalog MCP Server?

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

Using the EventCatalog MCP Server you can get more value from your EventCatalog by asking questions about your architecture in the tools you already use.

Example questions:

  • What events do we have in our architecture?
  • Tell me more about the {service} service.
  • I want to create a new feature that will send emails when a user signs up, what events do we have in our architecture that are related to user signups?
  • Get me the schema for the event UserCreated in EventCatalog.
  • Here is a new version of the UserCreated schema, what downstream consumers will be affected by this change?

Rather then digging through your architecture to find the answers you need, you can ask the MCP server directly from your MCP Client.


EventCatalog MCP 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)
  • 🤖 Ask questions about ubiquitous language for any domain and their entities

Getting Started

Installation

First, you need to enable the LLMS.txt feature in your EventCatalog instance.

  1. Enable the LLMS.txt feature in your EventCatalog instance, by configuring your eventcatalog.config.js file.
  2. Deploy your EventCatalog instance with the LLMS.txt feature enabled.

Next, you will need to get a EventCatalog Scale license key, you can get a 14 day trial license key from EventCatalog Cloud.

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.

You can find some helpful links below to get started.

Adding the MCP server to Claude Desktop

To use this with Claude Desktop, add the following to your claud_desktop_config.json file. The full path on MacOS: ~/Library/Application Support/Claude/claud_desktop_config.json, on Windows: %APPDATA%\Claude\claud_desktop_config.json

{
  "mcpServers": {
    "eventcatalog": {
      "command": "npx",
      "args": [
        "-y",
        "@eventcatalog/mcp-server",
        "https://demo.eventcatalog.dev", // Replace with your EventCatalog URL
        "ABCD-1234-5678-9012-3456-7890" // Replace with your EventCatalog Scale license key
      ]
    }
  }
}

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

You can also create .mcp.json files in your project to configure the MCP server for your project using Cursor.

{
  "mcpServers": {
    "eventcatalog": {
      "command": "npx",
      "args": ["-y", "@eventcatalog/mcp-server", "https://demo.eventcatalog.dev", "ABCD-1234-5678-9012-3456-7890"]
    }
  }
}

You can read more about configuration for your project in the Cursor documentation.

API

Here is a list of all the APIs that the MCP server supports.

Tools

  • find_resources
    • Find resources that are available in EventCatalog
  • find_resource
    • Get more information about a service, domain, event, command, query or flow in EventCatalog using its id and version
  • find_producers_and_consumers
    • Get the producers (sends) and consumers (receives) for a service in EventCatalog
  • get_schema
    • Returns the schema for a service, event, command or query in EventCatalog
  • review_schema_changes
    • Reviews schema changes for breaking changes and suggests fixes.
  • explain_ubiquitous_language_terms
    • Explain ubiquitous language terms for a given domain
  • find_owners
    • Find owners (teams or users) for a domain, services, messages, events, commands, queries, flows or entities in EventCatalog
  • create_flow
    • Create a new flow in EventCatalog given a description of the business workflow.
    • The tool will check all your resources in EventCatalog to find the best resources to match against the description.
    • The flow will be created (markdown file) and can be visualized in EventCatalog.

Resources

  • eventcatalog://all
    • All messages, domains and services in EventCatalog
  • eventcatalog://events
    • All events in EventCatalog
  • eventcatalog://domains
    • All domains in EventCatalog
  • eventcatalog://services
    • All services in EventCatalog
  • eventcatalog://queries
    • All queries in EventCatalog
  • eventcatalog://commands
    • All commands in EventCatalog
  • eventcatalog://flows
    • All flows in EventCatalog
  • eventcatalog://teams
    • All teams in EventCatalog
  • eventcatalog://users
    • All users in EventCatalog

Missing an API?

We are working on adding more APIs to the MCP server. If you need something specific, please open an issue and we will add it to the server.

Contributing

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

To use the build as your MCP server you can 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", "ABCD-1234-5678-9012-3456-7890"]
    }
  }
}

License

Usage of this feature is part of the EventCatalog Scale Plan