adhd-paper-visuals
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@adhd-paper-visualsDraw a real PNG paper map from the verified sections of this paper."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ADHD Paper Deep Learning v5.0 🧠
视觉优先的论文陪读 Skill + 真正可调用的 MCP 图形工具。
支持 GitHub Copilot、Claude Code、Cursor。中文设计,适合需要清楚逻辑地图、短段落、真实算例、证据边界与分层复习的学习场景。
本项目是双层架构,不是只有一份提示词:
Agent Skill:决定什么时候画图、如何用生活类比讲概念、怎样解释原文、何时复习。
独立 MCP Server:提供 5 个可由模型自动调用的渲染工具,真正返回
image/png内容,而不是把 Mermaid、SVG 或箭头纯文本丢给读者。
✅ 已测试:MCP stdio 初始化、5 工具发现、真实 PNG ImageContent、无效参数拒绝、Linux 字体下的五类图、Python 单元与协议级端到端测试。
⚠️ 未宣称:本仓库上传到 GitHub 后就自动注册到用户所有 AI 账号、已经经过三种商业客户端的端到端现场授权测试、能自行读懂所有 PDF、或能保证 ADHD 学习者一次就永久记住。
先看看真正会生成什么图
① 论文宏观结构:先认方向

读者先知道“现在在哪、上一节做了什么、下一节为什么要出现”。
② 概念解构:生活类比 → 真机制 → 计算 → 边界

③ 公式:符号、单位、计算链与极端条件

④ 三棱镜:图表能说明什么、不能说明什么

查看五张示例图 · 打开交互演示(HTML)(GitHub Pages 可从 /docs 发布;静态页面不等于已连接 MCP)
Related MCP server: diagram-mcp
一、最短安装:三步完成本地 Tool 注册
环境:Python 3.11+、可以 pip install、本机安装有支持中文的字体(Noto Sans CJK、苹方或微软雅黑)。本 MCP Server 无需网络 API Key,只运行本地 stdio。
下载仓库解压并用 GitHub Copilot(VS Code)/ Claude Code / Cursor 打开仓库根目录。
在该仓库目录的终端执行:
python -m pip install -e .重启 Agent 或刷新 MCP 配置,并在宿主的 MCP 工具列表里查看
adhd-paper-visuals。然后输入:用
adhd-paper-deep-learning帮我分析论文。请先核实论文目录,再调用render_paper_map给我一张真正显示的全局流程图。之后进入重要章节先做三问,概念四步解析,公式和图表使用对应 MCP 工具。不要给我纯文本框冒充流程图。
如果命令 python 找不到:Linux/macOS 可能需要 python3;Windows 可查看 py -0p。随后把 .mcp.json / .cursor/mcp.json 里的 "command": "python" 替换成同一个解释器的绝对路径,否则 Agent 找不到你安装的包。
中文显示为方块:在系统上安装支持中文的字体;也可以设置 ADHD_PAPER_FONT 到本机字体路径。不要向 GitHub 上传字体文件。如果服务器提示缺少字体,它不会伪装图片已正确生成。
二、跨平台配置与安装状态
平台 | 可自动发现的项目 Skill | MCP 配置文件 | 是否需要用户操作 |
GitHub Copilot(VS Code / CLI) |
| 根目录 | 安装本地包、信任项目、开启工具 |
GitHub Copilot cloud agent |
| 手动粘贴 | 需要管理员设置,并使 setup steps 位于默认分支 |
Claude Code |
| 根目录 | 安装包、接受项目 MCP 信任 |
Cursor |
|
| 安装包、在 Tools 中启用 |
旧式 VS Code MCP |
| 可选 | 用于不读取根目录 |
GitHub Copilot(本地 VS Code / CLI)
打开仓库,确认
.github/skills/adhd-paper-deep-learning/SKILL.md存在。确认
.mcp.json已被信任;Copilot CLI 可以在工作区 MCP 配置被加载时使用。VS Code 当前支持根目录.mcp.json(旧版本可能只支持.vscode/mcp.json)。运行
python -m pip install -e .并在 VS Code 命令面板运行 MCP: List Servers;应显示adhd-paper-visuals。在 Chat 中明确提到 Skill 或选择相关论文工作;是否自动选中由模型和产品设置决定。
官方:GitHub Agent Skills · VS Code MCP 配置
GitHub Copilot Cloud Agent(额外设置)
仓库中有 Skill ≠ 云端 MCP 已注册。 请用具备权限的仓库账号:
将整个项目上传到 GitHub,确保
.github/workflows/copilot-setup-steps.yml在默认分支。打开仓库 Settings → Copilot → MCP servers。
将
configs/copilot-cloud-mcp.json的完整 JSON 复制到该页面,保存。该配置明确 allowlist 五个只读绘图工具。云端使用 setup steps 安装 Python 包与中文字体;配置仍可能受组织授权、网络、运行器及策略限制。
在 cloud agent 任务中请求“用
adhd-paper-deep-learning并调用adhd-paper-visuals绘制论文总览”,检查工具调用日志和图片返回情况。
注意:GitHub 的 cloud agent / code review 对 MCP 使用有独立权限机制;这里是已准备好可复制的配置,并不是在你的 GitHub 账号中自动操作完成的注册。
官方:配置仓库 MCP · Copilot 环境预安装
Claude Code
项目 Skill 路径为
.claude/skills/adhd-paper-deep-learning/SKILL.md;MCP 路径为仓库根目录.mcp.json。启动
claude,确认项目目录受信任,并批准.mcp.json中的 MCP 服务器。终端执行
claude mcp list,或在 Claude Code 输入/mcp核验连接。可以明确输入
/adhd-paper-deep-learning,或给出与 Skill 匹配的任务请求。
官方:Claude Code Skills · Claude Code MCP
Cursor
项目 Skill:
.cursor/skills/adhd-paper-deep-learning/SKILL.md。工具注册:
.cursor/mcp.json,包含本地python -m adhd_paper_mcp。安装依赖后,在 Cursor Settings → MCP / Tools 检查
adhd-paper-visuals。Cursor CLI 可用cursor-agent mcp list及cursor-agent mcp list-tools adhd-paper-visuals。请求论文地图时工具应返回 PNG 图片内容,否则先查看 MCP 运行日志。
官方:Cursor Skills · Cursor MCP
三、服务确实注册了哪些独立工具?
MCP 工具名 | 输入要提供什么 | 返回 |
| 核实过的章节、职责、关系、当前所在节与来源说明 | 真实 PNG 论文全局图 |
| 本节真实步骤、对应问题与前后关系 | 真实 PNG 章节流程图 |
| 生活类比、映射、机制、数字例子、失效边界 | 真实 PNG 概念图 |
| 原式、变量与单位、逐步计算、例子、限制 | 真实 PNG 公式结构图 |
| 看哪里、能说明什么、不能说明什么及来源 | 真实 PNG 证据三棱镜 |
五个工具都标记为 MCP read-only:它们不写文件、不查询网络、不调用系统命令、不读取你的论文文档。调用者提供文字,服务校验输入并绘制图像。为了避免被错误资料欺骗,Skill 层必须先读原文并确保输入准确。有疑点必须明确写在 source_note,不能补造图中未知数字。
图片返回基于 MCP tools/call → content: [TextContent, ImageContent]。如果客户端不显示 ImageContent,协议层返回图片不代表所有 UI 都会自动渲染;可参见测试或另行导出 PNG。
四、实际的完整项目结构
adhd-paper-deep-learning/
├── README.md # GitHub 首页
├── pyproject.toml # pip 安装的独立工具服务
├── .mcp.json # Claude Code / Copilot 工作区 MCP
├── .github/
│ ├── skills/adhd-paper-deep-learning/ # Copilot 项目 Skill
│ └── workflows/ # CI + Cloud agent setup
├── .claude/skills/adhd-paper-deep-learning/ # Claude 项目 Skill
├── .cursor/
│ ├── skills/adhd-paper-deep-learning/ # Cursor 项目 Skill
│ └── mcp.json # Cursor MCP
├── skill/ # 唯一需要人工维护的源 Skill
│ ├── SKILL.md
│ ├── references/ # 学术解构、ADHD 设计、视觉规范
│ ├── assets/ # 模板和静态 SVG/PNG 示例
│ └── examples/
├── src/adhd_paper_mcp/ # 真正运行的 stdio MCP Server
│ ├── server.py # initialize / tools/list / tools/call
│ ├── graphics.py # 绘制 PNG
│ └── __main__.py
├── configs/ # Copilot 云端 / VS Code 配置参考
├── examples/ # 5 张真实工具输出 PNG + 输入 JSON
├── docs/ # 可选独立静态展示网页
├── tests/test_mcp.py # MCP 协议与图片测试
└── scripts/ # 演示及三平台 Skill 镜像同步五、测试:你可以自己验证是否“真能调用”
在仓库根目录执行:
python -m pip install -e .
python scripts/sync_platform_skills.py --check
python scripts/validate_repo.py
python -m unittest discover -s tests -v
python scripts/demo.py其中 test_mcp_wire_returns_real_image 会:
真实启动
python -m adhd_paper_mcp子进程;发送 MCP
initialize;发送
tools/list;发送
tools/call;从标准
ImageContent中解码 PNG 并检查图像。
运行结果应包括 Ran ... tests ... OK。如果某一步失败,不应继续声称平台已经完成安装。
测试环境说明:项目在开发环境的中文字体上完成图像验证,GitHub Actions 也会安装 Noto CJK 再测试;我们没有代表你在 GitHub.com、Claude 或 Cursor 内执行需要你的账号授权的最终上线操作。
六、把 ZIP 上传 GitHub(重要)
下载 ZIP,解压。
创建新仓库
adhd-paper-deep-learning。把压缩包中
adhd-paper-deep-learning/内部所有文件上传至仓库根目录(含.github、.claude、.cursor等隐藏目录)。提交后,GitHub Actions 会执行测试。若测试通过,再按你要用的平台完成 MCP 信任/仓库设置。
推荐命令行上传,能避免漏传隐藏目录:
git init
git add -A
git commit -m "Add ADHD paper visual Skill and MCP v5"
git branch -M main
git remote add origin https://github.com/<your-user>/<your-repo>.git
git push -u origin main这只是需要你在自己电脑上操作的示例;不能把整段原样执行前,先替换 <your-user> / <your-repo>,并确认仓库地址与已有 Git 状态。
七、设计边界与安全
不是治疗方案:针对 ADHD 的阅读分块、回忆与低负荷视觉设计可由读者选择,不假定存在统一的认知风格。
不会伪造事实:最重要的内容边界来自论文原文,不来自漂亮的图。
不会神奇地自动发现所有图:需要宿主/模型能读取论文 PDF 并调用 MCP;MCP 绘图服务不负责 PDF 解析。
只实现 MCP stdio 的工具子集:本项目是轻量独立实现,支持常用 MCP 客户端需要的 initialize、ping、tools/list、tools/call 和通知处理;不提供 HTTP、OAuth、resources、prompts 或远程托管。希望加入远端部署可在此基础上迁移到官方 MCP SDK。
隐私:MCP 工具无网络请求、无写入图像到磁盘的副作用;示范脚本
scripts/demo.py会把图片保存进本地examples/,这是用户显式执行时的行为。开源许可:本项目采用 MIT License,允许他人使用、修改和再分发,包括商业用途;保留版权和许可声明即可。
版本 v5.0。 项目内所有示范研究与样本数值均显式区分真实论文和教学模拟;演示图片本身不构成科学证据。
Available Tools
5 toolsrender_concept_diagramRender Concept DiagramBRead-onlyIdempotent
绘制一个晦涩概念的生活类比↔科学机制映射图,包含完整具体例子和类比失效边界。
| Name | Required | Description | Default |
|---|---|---|---|
| concept | Yes | 真实概念名称 | |
| mappings | Yes | ||
| source_note | Yes | 原文节号、证据与教学例子区分 | |
| analogy_limit | Yes | 生活类比失效的关键情况 | |
| mechanism_steps | Yes | ||
| numeric_example | Yes | 完整数值/定性情境示例及来源标签 | |
| everyday_analogy | Yes | 日常场景/故事 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered without help from the description. The description adds real value by disclosing what the diagram must contain (concrete numeric example and the analogy failure boundary), but says nothing about the rendered output form (image, SVG, mermaid, markup) or whether rendering can fail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler: verb, artifact, and contents in one pass. It is efficient, though for a seven-parameter rendering tool it is arguably too terse to be fully 'appropriately sized'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description carries the burden of saying what a 'render' returns, and it does not. For a tool with seven required structured inputs sitting among four similar render_* siblings, the agent is left without return-format or routing information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 71% and every one of the seven required parameters carries its own description, so the schema does most of the work. The description only gestures at the parameter set (类比, 例子, 失效边界) without adding format, sizing, or dependency rules (e.g. 1-3 mappings, 2-4 mechanism steps) beyond what the schema enforces.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (绘制/render) and a specific artifact (生活类比↔科学机制映射图) plus the required contents (具体例子、类比失效边界), so an agent knows exactly what gets produced. It does not, however, distinguish itself from the four sibling render_* tools (paper map, section flow, formula structure, evidence prism), which is the one thing an agent must decide between here.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to choose this over render_paper_map, render_section_flow, render_formula_structure, or render_evidence_prism, and no prerequisites or trigger conditions. The only hint is the phrase 晦涩概念, which weakly implies the tool targets hard-to-grasp concepts, but no explicit guidance or exclusion is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_evidence_prismRender Evidence PrismBRead-onlyIdempotent
绘制图表证据三棱镜:看哪里、说明什么、不能说明什么,阻止过度推断。
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | 真实图号/表号与主题 | |
| look_at | Yes | 具体轴/单位/行列与关键比较 | |
| supports | Yes | 图表真正直接支持的结论 | |
| source_note | Yes | 原文位置、原图是否可见、数据是否模拟 | |
| cannot_conclude | Yes | 不能推出的结论、混淆、局限 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety and idempotency profile is fully covered. The description adds the conceptual output structure (three evidence facets), which is useful, but says nothing about rendering behavior, output form, or limits beyond what annotations carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tightly written sentence with the verb+resource front-loaded and the three facets enumerated efficiently. Nothing is redundant, though the extreme brevity leaves no room for the routing context an agent would also want.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only rendering tool with five fully documented required parameters and a complete safety annotation set, the description is nearly sufficient; 'draw' plus the named facets convey what is produced. It could say more about the output artifact, but no output schema exists and none is strictly required here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with per-field descriptions and length bounds, so the schema does the heavy lifting. The description names the three content facets (look_at/supports/cannot_conclude) but adds no syntax, format, or constraint detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (绘制/draw) and a specific resource (图表证据三棱镜/chart evidence prism), and unpacks it into three concrete facets: what to look at, what it supports, what it cannot conclude. It is clear what the tool does, but it does not explicitly distinguish itself from the sibling render_* tools (render_paper_map, render_section_flow, etc.), so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use, when-not-to-use, or alternative-selection guidance. '阻止过度推断' (prevent over-inference) hints at the goal but not at the scenario or the sibling it competes with, leaving the agent to infer when to pick this over render_concept_diagram or render_paper_map.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_formula_structureRender Formula StructureBRead-onlyIdempotent
将关键公式画成符号卡+逐步运算图;必须保留已知条件、数字验算及不成立的情形。
| Name | Required | Description | Default |
|---|---|---|---|
| steps | Yes | ||
| title | Yes | 公式名称与原文编号 | |
| formula | Yes | 原式可读文本,不支持 LaTeX 排版,符号应有定义 | |
| symbols | Yes | ||
| limitation | Yes | 成立条件或反例 | |
| source_note | Yes | 原文来源定位、是否教学示例 | |
| numeric_example | Yes | 完整数字验算及来源 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is fully covered structurally. The description adds a content contract (must preserve known conditions, numeric verification, and non-holding cases) but discloses nothing beyond annotations about rendering behavior, auth, or limits. This is additive but modest against an annotation-covered tool, and there is no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core action first and the requirements after a semicolon; nothing is padded. It is perhaps over-compressed for a seven-required-parameter tool, but every clause carries content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of explaining what the rendered artifact is, yet it gives only a terse '符号卡+逐步运算图' sketch. For a seven-required-parameter tool with strict length caps on every field, the description is minimally adequate but leaves the return shape and depth of rendering unclear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 71%, so the schema largely documents the seven required fields already. The description loosely maps to three of them (已知条件、数字验算、不成立的情形 ≈ numeric_example, limitation, and conditions), adding only marginal meaning over the schema's own per-field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and output form: rendering a key formula as a symbol card plus a step-by-step computation diagram, which distinguishes it from render_concept_diagram and render_section_flow by content type. It is clear but never names or contrasts a sibling explicitly, so differentiation is inferred from the word 'formula' rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The text is a set of content requirements ('必修保留已知条件、数字验算及不成立的情形'), not guidance on when to choose this tool over the sibling render_* tools. There is no stated condition, trigger, or exclusion that tells an agent when render_formula_structure is the right pick versus render_evidence_prism.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_paper_mapRender Paper MapARead-onlyIdempotent
把已核实的论文章节职责转换为可见 PNG 论证流程图;不得臆造标题或因果箭头。输入来源注释必填。
| Name | Required | Description | Default |
|---|---|---|---|
| nodes | Yes | ||
| title | Yes | 简洁图标题 | |
| subtitle | Yes | 一行图的任务 | |
| source_note | Yes | 原文定位与不能确定的内容。必须提供。 | |
| current_index | No | ||
| relationships | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive). The description adds genuine behavioral context beyond them: the output is a visible PNG image, titles and causal arrows must not be fabricated, and a source note is mandatory. It still omits error behavior and output limitations, but it adds real value on top of the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence with the purpose front-loaded and two semicolon-separated constraints. Every clause earns its place and there is no filler, though the telegraphic style is terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter rendering tool with no output schema, the description correctly discloses the PNG output format and the mandatory source_note, but leaves the meaning and interplay of relationships, nodes, current_index, and subtitle unaddressed, so it is only partially complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%, so the description must carry more weight, but it only reinforces that source_note is required and hints that titles must be real (matching the nodes.title 'cannot fabricate' constraint). It says nothing about nodes, relationships, current_index, or subtitle structure, leaving half the parameter surface unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: converting verified paper section responsibilities into a visible PNG argument-flow diagram. This is concrete enough to distinguish it from most siblings, though it does not explicitly differentiate itself from the similar-sounding render_section_flow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives constraints (no fabricated titles or causal arrows; source_note is mandatory) which imply the tool should be used only on verified content, but it never states when to choose this over render_section_flow, render_evidence_prism, or the other render_* siblings. Usage is implied, not directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_section_flowRender Section FlowARead-onlyIdempotent
画当前章节的 2–7 步结构流程图,含每步任务与承接关系,返回真正的 PNG 图片。
| Name | Required | Description | Default |
|---|---|---|---|
| stages | Yes | ||
| source_note | Yes | 原文节号/页码及不确定性说明 | |
| current_index | No | ||
| relationships | Yes | ||
| section_title | Yes | 原文真实章节标题 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world behavior, so the safety profile is covered. The description adds the genuinely useful disclosure that it returns a real PNG image (important with no output schema, distinguishing it from a tool that merely returns a spec), plus the 2–7 step constraint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that packs the output type, the step range, and the per-step content with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter tool with no output schema, stating the PNG return is a good start, but current_index (a 0–6 index into the stages) is left entirely undefined, and there is no note on how the input stages/relationships shape the rendered layout. Adequate but with a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 40%, so the description carries extra burden. It does map '每步任务' to the per-stage fields and '承接关系' to relationships, and restates the 2–7 stage bound, but current_index and section_title semantics are never explained in either place.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource (画…流程图 / draw a section flow diagram), bounds the scope to 2–7 steps, and names the content carried by each step (task + connecting relationships). It is clearly distinguishable from render_formula_structure or render_concept_diagram by resource, though it never explicitly names those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no mention of the sibling render_* tools, even though the family contains four close alternatives. Usage is only implied by the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v5.0.0- First observed
render_concept_diagram - First observed
render_evidence_prism - First observed
render_formula_structure - First observed
render_paper_map - First observed
render_section_flow
TDQS
Scored across 5 tools
All five tools render distinct visual artifacts (evidence prism, paper map, section flow, concept analogy, formula structure), and the descriptions clearly delimit their scope. Minor overlap exists between paper map and section flow since both produce structural flowcharts, but the whole-paper vs. current-section distinction is stated.
All tool names follow a consistent render_<snake_case_noun> pattern with no deviations or mixed conventions.
Five tools is well-scoped for a specialized paper-visual generator; each tool earns its place by targeting a different visual type.
The set covers key argumentative and explanatory visuals for papers, but lacks tools for generic data plots/tables or updating existing diagrams. These are minor gaps that agents can work around given the server's focused purpose.
Maintenance
Related MCP Connectors
Render, verify, describe, and safely edit Mermaid diagrams through MCP.
Generate org charts, MCD/ERD data models, and C4 architecture diagrams — pilot OrgGen AI via MCP.
Deterministic image rendering for agents: JSON template in, on-brand PNG out.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Related MCP Servers
- AlicenseAqualityAmaintenanceGenerates UML and other diagrams (30+ types) via the Model Context Protocol, supporting multiple output formats and deployment options.4106MIT
- AlicenseAqualityDmaintenanceRenders Mermaid diagrams and Plotly charts to SVG, PNG, or PDF formats via the Model Context Protocol.26 npmMIT
- AlicenseNot gradedqualityBmaintenanceMCP server that renders AI-authored documents to images and returns typed diagnostics for self-correction. It also provides visual QA metrics, raster-to-vector reconstruction, and image-to-draft proposals.MIT
- FlicenseNot gradedqualityAmaintenanceEnables agents to create, customize, analyze and export relationship diagrams — theorem dependencies, paper maps, task RACI, org charts, conversation graphs — through 25 MCP tools, with cycle detection, centrality bottleneck reports, dependency closure and Mermaid/DOT/Markdown/JSON interop. Graphs stay local-first in a diff-friendly JSON source of truth and can be refined on a visual canvas.1-