
Verso
io.github.nvlang由 GitHub 账号 nvlang 发布v0.4.2更新于 Oct 25, 2026
MCP server to read Verso-generated documentation sites (e.g., the Lean Language Reference).
概览
一个本地 MCP 服务器,让助手以 Markdown 形式搜索和阅读 Verso 生成的文档站点,例如 Lean 语言参考。
- 可以做什么
- 列出已配置的 Verso 站点及其别名,并列出某站点的条目类型及数量(策略、术语、章节、选项等)。按名称搜索站点的交叉引用索引,支持按类型过滤和分页。获取整页或单个锚点条目,并以 Markdown 或 JSON 返回。
- 适用场景
- 适合在查阅 Lean 或其他由 Verso 编写的参考文档和书籍时使用,让助手在对话中直接查找定义、策略、选项或章节。它是只读的,适合文档查阅,而非编辑或全文检索。
- 运行要求
- 以 stdio 在本地运行,需要 uv,首次启动时自动获取软件包及依赖。通过环境变量 VERSO_MCP_SITES 配置站点(alias=url 对);未设置时默认使用 Lean 语言参考。可选变量可设置缓存目录和速率限制。需要能访问所配置站点的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Verso,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
An MCP (Model Context Protocol) server that lets an AI agent search and read documentation built with Verso, Lean's documentation authoring tool.
Verso powers most of the Lean ecosystem's reference docs and books — the
Lean Language Reference,
Functional Programming in Lean,
Theorem Proving in Lean 4,
and more. Verso Manual-genre sites publish a machine-readable cross-reference
index (xref.json); this server consumes that index and the rendered HTML.
[!WARNING] The format of the
xref.jsonfiles that this server depends on is Verso-internal and may change at any time. Such changes could render this server non-functional. I'll try to keep up with any such changes, but can't make any promises.
Point it at one or more Verso sites and an agent gets four read-only tools:
list_sites, list_kinds, search, and fetch_page.
Tools
list_kinds, search, and fetch_page take an optional site argument (an
alias from list_sites); omit it to use the default site. All tools are
read-only and accept a response_format of markdown (default) or json.
Entry "kinds" are derived dynamically from each site's xref.json, so
project-specific domains (Lake commands, error explanations, …) are picked up
automatically — nothing about a particular site is hard-coded.
Configuring sites
Set the VERSO_MCP_SITES environment variable to a comma-separated list of
alias=url pairs. A bare URL (no alias=) gets an alias derived from its path.
The first site listed is the default. If VERSO_MCP_SITES is unset, the server
defaults to a single site, the Lean Language Reference.
A site URL must be the root directory that contains xref.json (Verso writes it
there for Manual- and Tutorial-genre sites). The configured site roots also
serve as the network allowlist — see Safety.
Requirements
uv. uv fetches the package and its dependencies
automatically on first launch — no manual virtualenv or pip install step.
Use with Claude Code / Claude Desktop
Add an entry to your MCP configuration (.mcp.json, ~/.claude.json, or
claude_desktop_config.json):
Environment variables
All optional:
Safety & etiquette
[!WARNING] MCP servers have a lot of risks. As far as MCP servers go, this one (
verso-mcp) should be relatively innocuous: it is read-only, runs no shell commands, and only reaches the documentation sites you configure (or just the Lean Language Reference, if left unconfigured). The main caveat is that a malicious or compromised documentation site could try to steer the model via indirect prompt injection.verso-mcpcannot prevent that, so don't let an agent that uses it take consequential actions without your review.
The server is built to be a well-behaved client of documentation sites:
- Scoped network access — fetches are restricted to the configured site
roots; the site list doubles as the allowlist. Enforced on the request URL
and the final post-redirect URL, so a same-host URL outside a configured
root is still refused. Path traversal (
..,%2e%2e, backslash variants) is rejected. - Obeys
robots.txt— each host'srobots.txtis fetched and respected for this server'sUser-Agent; a host can target it specifically with aUser-agent: verso-mcpgroup. - Rate limiting — a shared token bucket caps outbound requests across all sites (default 2 req/s, burst 5); a hit falls back to cached content rather than hammering the origin.
- Caching & revalidation —
xref.jsonand pages are cached on disk per site (24 h TTL) withETag/If-None-Matchconditional revalidation, so a repeated lookup costs at most a304 Not Modified. - Bounded responses — HTTP bodies are streamed with an 8 MB cap; Markdown output is capped at 200 KB; each site's page cache is LRU-evicted at 200 MB.
- Identifying
User-Agenton every request.
Evaluation
evaluation.xml is a 10-question evaluation suite in the format used by
Anthropic's mcp-builder skill. The questions target the default site (the
Lean Language Reference); each is read-only, independent, and has a single
stable, verifiable answer.
Limitations
- Works with Verso Manual-genre sites (those that publish
xref.json). Blog-genre sites have noxref.json. Tutorial-genre sites also emit one and should work, but are untested. searchis name-based — it matches entry names and titles in the cross-reference index, the same granularity as Verso's own on-site search. It does not do full-text search of page bodies.- The
xref.jsonschema is an undocumented Verso internal; it may shift between Verso releases, which could break this MCP server if it doesn't keep up.
Disclaimer
This project was written almost entirely by Claude Opus 4.7 (1M), an AI assistant. It was built for my own personal use and is shared here only in case it is useful to others. It comes with no warranty whatsoever. Use it at your own risk.
来源:README.md,提交 90b8aa0
工具
0版本历史
1- v0.4.2最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分