Token导航 LogoToken导航TokenDH.com
Eventstorming MCP logo
设计创作未说明官方级别未说明来源级核验

Eventstorming MCP

MCP Server

Event Storming MCP是一个支持领域驱动设计(DDD)中Event Storming技术的MCP服务器,提供文本环境下的结构化工作坊管理、分析和可视化工具。

工具数

15

提示词数

0

GitHub Stars

0

资源数

0
可视化工具PythonClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

narnia-ai-mason

提供方

narnia-ai-mason

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

事件存储MCP服务器

可在基于文本的环境中系统地举办Domain-Driven Design事件Storming研讨会的MCP服务器

![MCP](https://modelcontextprotocol.io) ![Python](https://www.python.org) ![FastMCP](https://github.com/modelcontextprotocol/python-sdk)

🎯 概要

事件Storming MCP是一款模型上下文协议(MCP)服务器,旨在在数字环境中运行Alberto Brandolini创建的事件Storming技术。无需物理白板或Miro等可视化工具,即可使用结构化的JSON数据管理和分析研讨会的所有元素。

主要功能

完整的Event Storming支持

  • 8个关键要素(事件、命令、Actor、Agright、策略、阅读模型、外部系统、热点)
  • 反映传统的色彩体系
  • 跟踪元素之间的因果关系

🎨 管理绑定上下文

  • 实施DDD的核心概念
  • 分组和分配元素
  • 上下文统计和分析

📊 强大的分析工具

  • 时间轴视图
  • 可视化事件流
  • 统计和报告
  • 关键字搜索

💾 数据管理

  • 基于JSON的永久存储(UTF-8韩文支持)
  • 标记/JSON格式Export(直接保存为文件)
  • 导出/导入研讨会
  • 特定于项目的工作空间支持
  • 自动迁移

🚀 快速入门

安装

# 프로젝트 다운로드
git clone https://github.com/narnia-ai-mason/eventstorming-mcp.git
cd eventstorming-mcp

# 필수 패키지 설치
uv sync

Claude桌面设置

claude_desktop_config.json 将以下内容添加到文件:

首选项(保存到主目录)

{
  "mcpServers": {
    "eventstorming": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/eventstorming-mcp",
        "run",
        "eventstorming_mcp.py"
      ]
    }
  }
}

设置特定于项目的工作空间(建议)

{
  "mcpServers": {
    "eventstorming": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/eventstorming-mcp",
        "run",
        "eventstorming_mcp.py"
      ],
      "env": {
        "EVENTSTORMING_WORKSPACE": "/path/to/your/project/eventstorming"
      }
    }
  }
}
💡 环境变量选项 - EVENTSTORMING_WORKSPACE设置后,研讨会将保存在项目目录中。 - 未设置时的默认位置: ~/.eventstorming_workshops - 如果有现有研讨会,将自动迁移

开始第一个研讨会

# 1. 워크샵 생성
eventstorming_create_workshop({
  "name": "My First Event Storming",
  "domain": "E-commerce"
})

# 2. 이벤트 추가
eventstorming_add_element({
  "workshop_id": "...",
  "type": "event",
  "name": "Order Placed"
})

# 3. 워크샵 로드
eventstorming_load_workshop({
  "workshop_id": "..."
})

📚 文档

主要文档

什么是Event Storming?

Event Storming是一种快速浏览和建模复杂业务域的研讨会技巧:

  1. 域事件 发现(橙色便利贴)
  2. 命令 标识(蓝色便利贴)
  3. 演员 显示(黄色便利贴)
  4. 令人毛骨悚然 定义(浅黄色便利贴)
  5. 绑定上下文 配置

更多信息: 活动Storming.com

🛠 工具列表

管理研讨会(3个)

工具说明
eventstorming_create_workshop创建新研讨会
eventstorming_list_workshops查看研讨会列表
eventstorming_load_workshop工作负载

元素管理(3个)

工具说明
eventstorming_add_element添加元素(所有类型)
eventstorming_update_element修改元素
eventstorming_delete_element删除元素

绑定上下文(2个)

工具说明
eventstorming_create_bounded_context创建上下文
eventstorming_assign_to_context分配元素

查询和分析(5个)

工具说明
eventstorming_search_elements关键字搜索
eventstorming_get_timeline时间轴视图
eventstorming_get_context_overview上下文概述
eventstorming_get_statistics统计分析
eventstorming_visualize_flow可视化事件流

数据管理(2个)

工具说明
eventstorming_export_workshop导出研讨会
eventstorming_import_workshop导入研讨会

共15个工具

💡 使用示例

电子商务订购系统

# 워크샵 생성
workshop = create_workshop({
  "name": "E-commerce Order System",
  "domain": "E-commerce"
})

# 주요 이벤트 추가
add_element({
  "type": "event",
  "name": "Order Placed",
  "position": 0
})

add_element({
  "type": "event",
  "name": "Payment Processed",
  "position": 10
})

# 바운디드 컨텍스트 생성
create_bounded_context({
  "name": "Order Management",
  "description": "주문 생명주기 관리"
})

# 통계 확인
get_statistics({"workshop_id": "..."})

更多示例: 实战教程

📊 数据结构

JSON研讨会

{
  "metadata": {
    "id": "uuid",
    "name": "워크샵 이름",
    "domain": "도메인",
    "created_at": "2025-10-21T10:00:00Z",
    "updated_at": "2025-10-21T15:30:00Z",
    "facilitators": ["이름1", "이름2"]
  },
  "elements": [
    {
      "id": "uuid",
      "type": "event",
      "name": "Order Placed",
      "description": "주문이 접수됨",
      "position": 0,
      "triggers": ["payment-cmd-id"],
      "triggered_by": ["place-order-cmd-id"],
      "bounded_context_id": "order-ctx-id"
    }
  ],
  "bounded_contexts": [
    {
      "id": "uuid",
      "name": "Order Management",
      "element_ids": ["event-1", "cmd-1"],
      "color": "#3498db"
    }
  ]
}

🎨 元素类型和颜色

类型颜色用途 |------|------|------| | Event | 🟧 橙色|域中发生的事情| | Command | 🟦 蓝色|系统命令| | Actor | 🟨 黄色|执行命令的主体| | Aggregate | 📄 浅黄色一致性边界 | Policy | 🟪 淡紫色自动化规则 | Read Model | 🟩 绿色|查询模式| | External System | 🩷 粉红外部系统 | Hotspot | 🟥 红色|问题/不确定区域|

📁 文件存储位置

研讨会数据存储在以下位置:

~/.eventstorming_workshops/
  ├── {workshop-id-1}.json
  ├── {workshop-id-2}.json
  └── ...

🔧 高级功能

跟踪事件流

# 특정 이벤트부터 흐름 추적
visualize_flow({
  "workshop_id": "...",
  "start_element_id": "order-placed-id",
  "max_depth": 5
})

上下文覆盖分析

# 바운디드 컨텍스트 할당률 확인
statistics = get_statistics({"workshop_id": "..."})
# Coverage: 93.3% of elements are contextualized

热点管理

# 문제 영역 표시
add_element({
  "type": "hotspot",
  "name": "Payment Timeout Handling",
  "description": "타임아웃 시 처리 방법 미정의",
  "notes": "재시도? 취소? 수동 확인?"
})

# 핫스팟 검색
search_elements({
  "query": "timeout",
  "element_type": "hotspot"
})

🤝 研讨会进度指南

建议的进度顺序(2小时)

  1. 准备 (5分钟)

- 创建研讨会 - 参与者简介

  1. 发现域事件 (30分钟)

- 从重要事件开始创建 - 按时间顺序放置

  1. 命令和动作 (20分钟)

- 标识每个事件的触发器 - 明确执行主体

  1. 业务规则 (15分钟)

- 定义策略 - 异常处理规则

  1. Agrageit设计 (20分钟)

- 确定事务边界 - 将相关元素分组

  1. 绑定上下文 (20分钟)

- 定义逻辑边界 - 分配元素

  1. 审阅和整理 (10分钟)

- 流验证 - 统计确认 - 导出研讨会

🐛 故障排除

常见问题

问:找不到研讨会

# 워크샵 목록 확인
eventstorming_list_workshops()

# 올바른 ID 사용 확인

问:关系太复杂了

# 흐름 시각화로 구조 파악
eventstorming_visualize_flow()

# 컨텍스트별로 분리
create_bounded_context()

问:上下文边界不明确

# 통계로 응집도 확인
get_statistics()

# 반복적으로 재조정

📝 最佳实践

✅ 做

  • 将域事件创建为历史记录
  • 从核心流程开始
  • 包括异常情况
  • 明确绑定上下文边界
  • 坦率地显示热点

❌ 不要

  • 过于详细的事件(UI点击等)
  • 仅用技术术语表示
  • 追求完美主义(反复改进)
  • 上下文之间的强合并

🔮 今后计划

  • \[\]创建PlantUML/Mermaid图表
  • \[\]Git版本管理集成
  • \[\]模板系统
  • \[\]基于AI的建议功能
  • \[\]实时协作支持
  • \[\]一致性验证工具
  • \[\]自动生成文档

📚 参考资料

📄 许可证

MIT许可证-可自由使用、修改和分发

🙏 贡献

欢迎使用Issue和Pull Request!

______________________________________________________________________

由以下材料制成❤️ DDD和Event Storming社区

*版本1.0 |最后更新时间:2025-10-21*

目录标签

目录标签

可视化工具PythonClaude领域驱动设计本地部署事件风暴MCP服务器文本分析

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

15

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP