
MPM-Coding
io.github.halflifezyf2680Published by GitHub account halflifezyf2680v2.11.0Updated Oct 24, 2026
Tool-first MCP: AST nav, impact/flow, task chains, memo/recall.
Overview
A local coding assistant MCP server that indexes a project's code with AST parsing so an assistant can locate symbols, trace call chains, assess change impact,
- What you can do
- Locate code: search symbols precisely with AST-level lookup, view project structure and symbol lists, and trace function call chains before editing. Assess risk: check who calls a function or what it calls to gauge the blast radius of a change. Run staged work: set hooks that let a blocked task resume once a condition is met. Record and recall: write persistent memos explaining why a change was made and search past history and facts across sessions. Manage the index: initialize the project index, check background indexing progress, download missing language grammars, and switch assistant personas.
- When to use it
- Useful for working in real, larger codebases where the assistant must find the right function, understand dependencies before editing, and keep a record of why changes were made across sessions. Less relevant for tiny scripts or one-off edits.
- Requirements
- Runs as a local stdio process on the user's machine (desktop only); install from the release archive or the MCP Registry package and point the client at the mpm-go binary. Go 1.21+ and SQLite are used internally, and tree-sitter grammars for 30+ languages are downloaded on demand, so network access may be needed. No accounts, API keys or environment variables are declared.
Installation
In SourceWeft
- Open MPM-Coding in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
MPM-Coding
让 AI 编程从"能演示"变成"能交付"
中文 | English
[License] [Go] [MCP] [Platform] [Languages]
问题
AI 写代码的快乐,很容易被真实项目剥夺:
MPM 不负责让模型变聪明。MPM 负责把活干完。
📄 想看工程深度? 阅读 技术白皮书 —— AST 引擎、5 层搜索降级、BFS + Dice Random Walk 影响分析、贝叶斯置信度演化……13 章拆解每一个核心设计。
安装
从 Release 安装
从 Releases 下载:
解压。让 MCP 客户端指向 mpm-go。完事。
从 MCP Registry 安装
已在 MCP Registry 发布:io.github.halflifezyf2680/mpm-coding
从源码编译
快速开始
让 MCP 客户端指向 mcp-server-go/bin/mpm-go(.exe),然后:
就这样。工具编排交给 AI,决策权在你手上。
使用示例
把这段直接贴进 MCP 客户端:
AI 会自动执行:initialize_project → code_search → code_impact → 改代码 → memo。
原理
每次修改必须走:找定位 → 查影响 → 改代码 → 记原因。 不猜。不盲改。不留死角。
为什么用 AST 索引而不是 LSP
AI 编程的核心瓶颈不是模型能力,是上下文窗口里的垃圾太多。
一个 5000 文件的项目,AI 如果靠读文件来理解代码,它要么全读(token 爆炸),要么猜着读(遗漏关键依赖)。两种都是灾难。LSP 解决的是 IDE 的人机交互问题——补全、跳转、重命名。这些东西 AI 客户端自己就能做。
MPM 解决的是另一个问题:如何用最少的 token 让 AI 精确理解代码结构。
code_search 返回的是符号定义的精确位置,不是一堆 grep 结果。code_impact 返回的是调用链全景,不是让 AI 一个文件一个文件地猜谁调了它。flow_trace 返回的是业务逻辑主链路,不是目录列表。这些工具的 output 本身就构成了对上下文的清洗——只注入确定性的结构信息,把噪声过滤掉。
这就是注意力收敛:AI 不再需要在大片代码中盲目搜索,工具的输出已经把它的注意力聚焦到必须关注的那几个符号和关系上。真正有价值的不是底层用了什么解析器,而是这些结果被注入上下文后产生的作用。
工具箱
导航
安全
执行
记忆
系统
文档
架构
- Go 1.21+ — 零 CGO,纯
modernc.org/sqlite - Tree-sitter — Rust AST 索引器,30+ 语言按需下载
- SQLite — 嵌入式存储,数据在
.mpm-data/(不提交到 git)
常见问题
完整手册:docs/MANUAL.md
许可证
MIT
本项目使用 tree-sitter(MIT License)进行 AST 解析。
Source: README.md at commit 7f8a001
Tools
0Version history
1- v2.11.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts