
Multidim
io.github.Cherridsaid由 GitHub 账号 Cherridsaid 发布v0.2.0更新于 Oct 25, 2026
Structured thinking grids for AI agents: deterministic analysis frames, validation, learned traps
概览
一个本地运行的确定性 MCP 服务器,为助手提供结构化分析框架供其填写,并逐节校验填写后的分析。
- 可以做什么
- 为某个主题构建分析框架,可选择深度以及文本或 JSON 框架格式,自动匹配最合适的上下文,并把已学习的陷阱作为必答问题注入。列出所有已知上下文及其轴和子视角。对照框架校验填写好的分析,按节返回 ACCEPT、WARNING 或 REJECT 及具名错误码,并拒绝被篡改或过期的框架。创建或扩充上下文的关键词、轴和陷阱,这是唯一的写入操作。
- 适用场景
- 适合希望助手在决策、代码审查或技术写作上的推理按固定结构接受检查,而不是自由行文时使用;也适合把反复出现的经验记录一次、在后续分析中强制执行。它只提供结构,思考仍由调用的模型完成。
- 运行要求
- 以 Python 包形式通过 stdio 在本地运行(Python 3.9+,仅用标准库),可从 PyPI 安装或用 uvx 运行。无需账号、API 密钥或网络访问。可选变量 MULTIDIM_MCP_HOME 可覆盖创建存储所用的每用户数据目录。
安装
在 SourceWeft 中
- 打开 控制台中的 Multidim,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[multidim-mcp: one subject, split through a prism into eight analysis lenses]
multidim-mcp
Structured thinking grids for AI agents — a standalone MCP server, pure standard library.
Multidim routes a subject to a set of analysis lenses (a context) and returns a hierarchical grid — axes, sub-lenses, mandatory questions — for the calling LLM to fill in. The thinking stays with the caller: the server provides structure, never cognition. It calls no LLM, makes no network requests, and the same input always produces the same frame.
- Zero dependencies — Python 3.9+, standard library only.
- Deterministic v2 contract — every frame carries a self-verifiable
frame_hash; a filled analysis is checked section by section with actionable error codes. - Learned traps — lessons you record once become mandatory questions injected into every future frame whose subject matches.
- Hardened store — atomic writes, native cross-process locking, additive
migrations, backed-up resets, and a guard that refuses to ever touch a foreign
~/.multidimstore.
See the difference
An agent analyses "Should we migrate the billing service from MySQL to
PostgreSQL?". Every section is filled, every sentence reads fine. Here is what
multidim_validate returns on that first pass:
The only alternative restated the hypothesis, the hypothesis carried no test that could prove it wrong, the second-order effect repeated the first one word for word, and the conclusion referenced none of the work above. None of that is visible when you read the answer; all of it is reported here, by name.
Redo the rejected sections and the same checker returns ACCEPT. Edit the frame
to delete the rule you find inconvenient, and it refuses the whole submission —
the frame carries a hash of its own content.
Full transcript, including what the fixed sections look like and what this
deliberately does not check: DEMO.md. Reproduce it in one
command: python demo.py.
Quickstart
Register the server with any MCP client (stdio transport):
Or run it directly: python -m multidim_mcp, or without installing: uvx multidim-mcp.
The server is listed in the official MCP Registry as
io.github.Cherridsaid/multidim-mcp.
Tools
How it works
multidim_analyzedetects the best context for your subject (word-boundary keyword matching, accent-folded) and returns a v2 frame: required sections, section schemas, validation rules, mandatory questions — including every learned trap whose triggers match the subject.- Your LLM fills the frame, section by section.
multidim_validaterebuilds the frame from the store, refuses a tampered or stale one (frame_hash), then checks the analysis: structural completeness, falsification tests on hypotheses, alternatives that genuinely differ from the primary, second-order effects distinct from first-order, a pre-mortem that does not copy the risk list, a synthesis that references real identifiers, and a filler-phrase density cap. Only rejected sections are redone, within the frame'smax_validation_rounds.
The four seed contexts are neutral and deterministic: generic (8 general
lenses), code_review, technical_writing, decision.
Storage
The store lives on a dedicated per-user data path (MULTIDIM_MCP_HOME overrides
it) and is created on first run from the neutral seeds. Writes are atomic and
serialized across processes with the OS's native file locking; a corrupt store is
backed up before any reset, never silently discarded. A tripwire refuses every
read or write that would resolve into a foreign personal ~/.multidim store.
Maintainers publishing forks can extend the neutrality guard with their own
private markers via MULTIDIM_MCP_EXTRA_FORBIDDEN (comma-separated), without
hardcoding them into public source.
Transparency
- Not an AI system. multidim-mcp contains no model and performs no inference: it is deterministic, rule-based software. Under the EU AI Act (Reg. 2024/1689) it is not an AI system in the sense of Art. 3(1), and as free and open-source software it falls under the Art. 2(12) exemption. It collects no data and makes no network calls.
- Illustrations in this README were generated with GPT and keep their C2PA provenance metadata intact.
Development
CI runs both on Ubuntu and Windows across Python 3.9 / 3.11 / 3.13.
License
来源:README.md,提交 0423ab8
工具
0版本历史
1- v0.2.0最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分