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

contextmapper MCP

MCP Server

一个支持AI助手与领域驱动设计模型交互的服务器,提供CML文件解析、边界上下文管理、聚合操作及上下文映射关系管理等功能。

工具数

37

提示词数

0

GitHub Stars

0

资源数

0
模型管理TypeScriptClaudeClaude DesktopClaude

安装说明

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

作者 / 组织

thijs-hakkenberg

提供方

thijs-hakkenberg

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

上下文映射器MCP服务器

](https://www.npmjs.com/package/context-mapper-mcp) ![License: MIT](https://opensource.org/licenses/MIT)

MCP(模型上下文协议)服务器,使AI助手能够使用Context Mapper的CML(上下文映射语言)处理领域驱动设计模型。

特性

  • 解析和序列化CML文件 -完全支持Context Mapper的CML语法
  • 管理受限上下文 -创建、更新、删除有界上下文
  • 使用骨料 -定义实体、值对象、域事件、命令和服务
  • 上下文映射关系 -定义和管理有界环境之间的关系(合作伙伴关系、共享内核、上游下游,具有OHS、PL、ACL、CF等模式)
  • 生成PlantUML图 -可视化上下文映射和聚合结构
  • 实时验证 -在创建时捕获错误,而不是在保存时捕获错误
  • ID值对象 -用于创建符合DDD标准的标识符类型的专用工具

验证功能

服务器实时验证模型以防止常见的CML错误:

验证何时示例错误
重复名称创建时'AgentId' already exists in ContextA...
无效类型创建时Map is not supported in CML...
保留名称创建时'Resource' is a reserved keyword...
保留属性保存时自动转义 ^ 前缀

有效的属性类型

  • 原语: String, int, long, boolean, DateTime, BigDecimal, UUID
  • 集合: List, Set
  • 参考文献: - TypeName (引用域对象)

无效类型(已拒绝)

  • Map, Any, Tuple, Runnable, Callbacks,嵌套泛型

安装

克劳德代码

claude mcp add context-mapper -- npx -y context-mapper-mcp@latest

克劳德桌面版

添加到您的Claude Desktop配置(claude_desktop_config.json):

{
  "mcpServers": {
    "context-mapper": {
      "command": "npx",
      "args": ["-y", "context-mapper-mcp@latest"]
    }
  }
}

可用工具

模型管理

工具说明
cml_create_model创建新的空CML模型
cml_load_model加载CML文件
cml_save_model将模型保存到磁盘
cml_validate_model验证CML语法和语义
cml_get_model_info获取模型统计信息

查询工具

工具说明
cml_list_bounded_contexts列出所有有界上下文
cml_get_bounded_context获取上下文详细信息
cml_list_aggregates列出聚合(可选按上下文筛选)
cml_get_aggregate获取聚合及其所有元素
cml_find_elements按名称模式搜索(正则表达式)
cml_list_relationships列出上下文映射关系

上下文工具

工具说明
cml_create_context_map创建上下文映射
cml_create_bounded_context创建有界上下文
cml_update_bounded_context更新有界上下文
cml_delete_bounded_context删除有界上下文

聚合工具

工具说明
cml_create_aggregate创建聚合
cml_update_aggregate更新聚合
cml_delete_aggregate删除聚合
cml_add_entity将实体添加到聚合
cml_add_value_object添加值对象
cml_add_identifier添加ID值对象(DDD最佳实践)
cml_add_domain_event添加域事件
cml_add_command添加命令
cml_add_service添加域服务
cml_batch_add_elements批量创建 一次调用中有多个域对象
cml_delete_entity删除实体
cml_delete_value_object删除值对象
cml_delete_domain_event删除域事件
cml_delete_command删除命令
cml_delete_service删除服务

批量创建(cml_batch_add_elements)

在一次调用中创建多个域对象以提高效率:

{
  "contextName": "CustomerManagement",
  "aggregateName": "Customer",
  "identifiers": [
    { "name": "CustomerId" }
  ],
  "entities": [
    {
      "name": "Customer",
      "aggregateRoot": true,
      "attributes": [
        { "name": "id", "type": "- CustomerId", "key": true },
        { "name": "email", "type": "String" }
      ]
    }
  ],
  "valueObjects": [
    {
      "name": "Address",
      "attributes": [
        { "name": "street", "type": "String" },
        { "name": "city", "type": "String" }
      ]
    }
  ],
  "domainEvents": [
    { "name": "CustomerRegistered", "attributes": [{ "name": "customerId", "type": "- CustomerId" }] }
  ],
  "commands": [
    { "name": "RegisterCustomer", "attributes": [{ "name": "email", "type": "String" }] }
  ]
}

优点:

  • 更快:单次往返,而不是8+次单独通话
  • 原子验证:在创建任何元素之前,所有元素都经过验证
  • 错误处理:使用 failFast: false 一次收集所有错误

关系工具

工具说明
cml_create_relationship创建上下文映射关系
cml_update_relationship更新关系
cml_delete_relationship删除关系
cml_get_relationship获取关系详细信息

支持的关系类型:

  • 伙伴关系 -对称,两个上下文都协作
  • 共享内核 -对称的共享代码/模型
  • 上游下游 -图案不对称:

- 上游:OHS(开放主机服务)、PL(出版语言) - 下游:ACL(防腐层)、CF(合格)

生成工具

工具说明
cml_generate_context_map_diagram生成PlantUML上下文图
cml_generate_aggregate_diagram生成聚合类图
cml_generate_full_diagram生成完整的模型图

CML文件示例

ContextMap ECommerceContextMap {
    type = AS_IS
    contains CustomerManagement, OrderManagement, Inventory

    CustomerManagement [U,OHS,PL] -> [D,ACL] OrderManagement
    OrderManagement [U] -> [D,CF] Inventory
}

BoundedContext CustomerManagement {
    domainVisionStatement = "Manages customer data"
    implementationTechnology = "TypeScript"

    Aggregate Customer {
        Entity Customer {
            aggregateRoot
            key String customerId
            String email
            String firstName
        }

        ValueObject Address {
            String street
            String city
        }

        DomainEvent CustomerRegistered {
            String customerId
            Date registeredAt
        }

        Command RegisterCustomer {
            String email
            String firstName
        }
    }
}

发展

git clone https://github.com/thijs-hakkenberg/contextmapper_mcp.git
cd contextmapper_mcp
npm install
npm run build
npm test

建筑

  • 解析器:基于Chevrotain的CML语法词法分析器和解析器
  • 作者:将模型序列化回CML格式
  • 验证:检查模型一致性和语义规则
  • 工具:所有操作的MCP工具实施
  • 生成器:PlantUML图生成器

许可证

麻省理工学院

目录标签

目录标签

模型管理TypeScriptClaude领域驱动设计本地部署CML解析PlantUML生成实时验证

支持客户端

Claude DesktopClaude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

37

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP