@菊苣/mcp
MCP服务器 EN图 --基于图论的确定性结构分析。每个结果都有一个命名的数学定理作为支持。计算中没有AI。
安装
直接运行:
npx @endiagram/mcp或全局安装:
npm install -g @endiagram/mcp连接
克劳德代码
claude mcp add endiagram npx @endiagram/mcp克劳德桌面版
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"endiagram": {
"command": "npx",
"args": ["@endiagram/mcp"]
}
}
}光标
添加 .cursor/mcp.json 在项目根目录中:
{
"mcpServers": {
"endiagram": {
"command": "npx",
"args": ["@endiagram/mcp"]
}
}
}HTTP(零安装)
任何支持HTTP传输的MCP客户端:
https://api.endiagram.com/mcp史密瑟里
smithery mcp add dushyant30suthar/endiagram环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
EN_API_URL | https://api.endiagram.com | EN图表服务的API端点 |
工具
关于任何系统的六个问题,以及一个渲染工具。每个工具都需要 source (EN代码或 .en/.txt 文件路径)。工具名称是简写,而不是规格——在调用之前阅读每个描述; compose 和 equivalent 它们是基于模式的,而不是通用的分析器。
| 工具 | 它的答案 | 杠杆 |
|---|---|---|
structure | 这个系统是什么?形状、阶段、桥梁、循环、关键路径、支配树、最小切割、子系统、演员、位置。 | detect_findings=true 标记风险(无防护水槽、单条路径、多条路径); node=X 返回每个节点的中心性(介数、接近度、特征向量)。 |
invariant | 什么总是正确的?守恒定律、T-不变量(可持续循环)、可耗尽集、缺陷、可逆性。 | rules (每行一个)检查自定义索赔。四种受支持的形状: no bridge that is also hub · every path from X to Y passes through at least one of [A,B,C] (优先级)· no node with centrality above N · removing any single node disconnects at most N others. |
live | 它会陷入僵局吗?实体会溢出吗?虹吸管、陷阱、无界循环、结构活性和有界性。 | — |
reachable | X能到达Y吗?路径、距离、边界交叉点。 from/to 接受实体或动作名称。 | defense_nodes=a,b,c 检查防护装置是否覆盖每条路径。 |
equivalent | 两个系统是相同的吗?如果我改变这个系统,会有什么变化? | 比较模式(source_a+source_b):编辑距离+光谱共光谱。进化模式(source+patch):纯EN添加; - name 移除;替换相同的名称。 |
compose | 零件如何组合(合并)或零件如何独立(提取)? | 合并: source_a+source_b+links (a.entity=b.entity 每行)。提取物: source+subsystem (名字来自 structure.subsystems). |
render | SVG或PNG格式的图表。仅在用户要求可视化时调用。 | 主题: Editorial, Primer, Carbon (每个± isDark)或种子来源于 color=#RRGGBB. structure_layers 位掩码(1=子系统,2=流水线,4=循环,8=分叉,16=连接,32=集线器,64=死锁,128=溢出)。 |
EN语法
每行一句话:
actor do: action needs: input1, input2 yields: output1, output2收益和需求之间的共享名称会自动创建连接:
customer do: place order needs: menu yields: order
kitchen do: prepare food needs: order yields: meal
waiter do: deliver needs: meal yields: served customer建模
相同的名字=相同的东西。将所有必需的输入放在一个 needs: 列表(AND)。为两个动作赋予相同的屈服名称,以提供替代方案(OR)。序列=一个动作消耗另一个动作的产量。重新生成有状态资源以保持其持久性;单次数据仍然被消耗。以真正的原子粒度建模——只有在可以独立访问块时才进行拆分。
了解更多 endiagram.com.
遥测
@endiagram/mcp 在首次运行时生成随机安装ID,存储在 ~/.endiagram/install-id (模式 0600).它与每个请求一起发送 这 X-Endiagram-Install-Id HTTP标头,以便我们可以关联请求 来自同一安装的调试问题,仅针对每IP信号 无法跟踪(移动网络、VPN、CGNAT都会崩溃或流失IP)。
没有源代码,没有文件路径,没有环境变量,也没有PII 已发送。 安装ID是本地生成的随机不透明UUID v4。
首次运行通知打印到 标准错误 (从来没有stdout——stdout是 MCP JSON-RPC通道),其中包含公开和选择退出指令。 每次安装时,通知都会发出一次,再也不会发出。
选择退出
这三种方法中的任何一种都会禁用安装ID:
- 集
ENDIAGRAM_TELEMETRY=off作为环境变量(也
接受 0, false, no).
- 在以下位置创建文件
~/.endiagram/telemetry包含单词off. - 删除
~/.endiagram/install-id(下一次生成一个新的
除非还设置了选项1或2,否则运行。)
当其中任何一个处于活动状态时 X-Endiagram-Install-Id 标头不是 根本不发送——服务器退回到其每IP HMAC cid 为了 相关性,这对于短期每会话跟踪非常有效。
完整隐私政策: endiagram.com/隐私
许可证
麻省理工学院
