使用说明

项目简介

EventCatalog MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,它允许集成了 MCP 协议的 LLM 客户端(如 Claude、Cursor、Windsurf 等)直接访问和查询 EventCatalog 中存储的架构文档和信息。通过该服务器,用户可以使用自然语言在 LLM 客户端中提问关于 EventCatalog 中事件驱动架构的问题,例如服务、领域、消息、模式定义等,从而更高效地利用 EventCatalog 的文档资源。

主要功能点

  • 连接 MCP 客户端: 兼容所有支持 MCP 协议的客户端,例如 Claude, Cursor, Windsurf 等。
  • 本地部署: 支持一键命令在本地机器上运行 MCP 服务器。
  • EventCatalog 集成: 无缝连接到用户的 EventCatalog 实例,获取架构信息。
  • 架构查询: 允许用户通过自然语言提问关于 EventCatalog 架构的问题,例如服务、领域、消息等。
  • 规范查询: 支持查询 OpenAPI 和 AsyncAPI 规范文档。
  • 模式查询: 提供事件、查询、命令和服务 (OpenAPI, AsyncAPI, JSON Schema) 的模式信息查询。

安装步骤

  1. 启用 LLMS.txt 功能: 首先需要在你的 EventCatalog 实例中启用 'LLMS.txt' 功能。这通常需要在你的 'eventcatalog.config.js' 文件中进行配置并重新部署 EventCatalog 实例。具体配置方法请参考 EventCatalog 文档
  2. 部署 EventCatalog 实例: 确保你的 EventCatalog 实例已部署并可通过 URL 访问。

服务器配置

为了让 MCP 客户端连接到 EventCatalog MCP Server,需要在客户端中配置 MCP 服务器信息。以下分别针对 Claude Desktop 和 Cursor 提供了配置示例。

Claude Desktop 配置

在 Claude Desktop 的配置文件 'claud_desktop_config.json' (MacOS 路径: '~/Library/Application Support/Claude/claud_desktop_config.json', Windows 路径: '%APPDATA%\Claude\claud_desktop_config.json') 中,添加如下 'mcpServers' 配置:

{
  "mcpServers": {
    "eventcatalog": {
      "command": "npx",
      "args": [
        "-y",
        "@eventcatalog/mcp-server",
        "YOUR_EVENTCATALOG_URL"  //  请替换为你的 EventCatalog 实例的 URL,例如 "https://demo.eventcatalog.dev"
      ]
    }
  }
}

配置参数说明:

  • 'server name': 'eventcatalog' (服务器名称,可自定义)
  • 'command': 'npx' (Node.js 包执行器,确保你的环境中已安装 Node.js 和 npm)
  • 'args': 启动服务器的参数列表,包括:
    • '-y': 'npx' 参数,表示自动确认安装 '@eventcatalog/mcp-server' 包
    • '@eventcatalog/mcp-server': 要执行的 npm 包,即 EventCatalog MCP Server
    • 'YOUR_EVENTCATALOG_URL': 请替换为你的 EventCatalog 实例的 URL,这是 MCP 服务器连接和获取数据的目标地址。

Cursor 配置

在 Cursor 中,打开设置 (Settings),找到 "MCP Servers" 选项,点击 "Add MCP Server"。

  • Name: 'eventcatalog' (服务器名称,可自定义)
  • Command: 'npx' (Node.js 包执行器)
  • Args: '-y @eventcatalog/mcp-server {URL_TO_YOUR_EVENTCATALOG_INSTANCE}' (启动参数,请将 '{URL_TO_YOUR_EVENTCATALOG_INSTANCE}' 替换为你的 EventCatalog 实例的 URL)

基本使用方法

配置完成后,在支持 MCP 协议的 LLM 客户端中,你可以通过自然语言提问关于 EventCatalog 的问题。例如:

  • "列出所有服务"
  • "告诉我 User 服务的 OpenAPI 规范"
  • "UserCreated 事件的 schema 是什么?"
  • "有哪些领域?"

MCP 客户端会将这些问题转换为对 EventCatalog MCP Server 的资源和工具调用,服务器会从 EventCatalog 实例中检索信息并返回给客户端,最终 LLM 客户端会将结果以自然语言形式呈现给用户。

信息

分类

AI与计算