Bookworm

Bookworm

Rust 文档的 MCP 服务器

dcdpr

开发者工具
访问服务器

README

Bookworm

一个用于处理 docs.rs 文档的工具集合。

Crates

wrm_dl

docs.rs 下载 crate 的文档,并将其存储在本地目录中。

它既可以作为库使用,也可以作为二进制文件使用。您可以使用以下命令在本地运行它:

cargo run --bin wrm-dl --features cli -- regex
Documentation downloaded successfully to /tmp/...

wrm_index

将本地存储的 crate 文档索引到 SQLite 数据库中。

它既可以作为库使用,也可以作为二进制文件使用。您可以使用以下命令在本地运行它:

cargo run --bin wrm-index --features cli -- /tmp/...
Documentation indexed successfully to ./index.sqlite

wrm_query

使用本地存储的 crate 文档和索引数据库,查询 crate 的文档。

wrm_docs

从本地缓存的 docs.rs 文档中获取详细信息。

wrm_mcp

一个 模型上下文协议 服务器,用于提供 crate 的文档。

使用以下命令在本地运行它:

cargo run --bin wrm-mcp

将服务器添加到您的 MCP 客户端取决于客户端,但以下示例适用于 Claude.ai:

{
  "mcpServers": {
    "bookworm": {
      "command": "/path/to/wrm-mcp"
    }
  }
}

工具

以下工具可供具有 MCP 客户端功能的 LLM 使用:

crates_search

获取与给定查询匹配的 crate 列表。

返回的列表包含每个 crate 的 URI 列表,用于获取其他 crate 信息。

crate_search_items

获取与给定查询匹配的条目列表。

每个条目类型包含以下信息:

  • 条目路径 (例如 serde_json::value::Value)
  • 条目类型 (例如 enum)
  • 类型签名
  • 文档
  • 相关资源 URI
crate_search_src (TODO)

在 crate 的所有源代码中搜索给定的查询。

每个条目包含源代码文件的 URI、行号以及匹配行的内容,包括任何可选的上下文。

crate_resource

一旦您找到一个 crate(或知道 crate 名称),您可以通过 crate_resource 工具获取相关资源。 此工具接受资源的 URI。

支持以下 URI:

  • crate://{crate_name} - 列出 crate 版本
  • crate://{crate_name}/{crate_version} - 获取元数据
  • crate://{crate_name}/{crate_version}/readme - 获取 readme 内容
  • crate://{crate_name}/{crate_version}/items - 列出条目资源
  • crate://{crate_name}/{crate_version}/src - 列出源代码资源
  • crate://{crate_name}/{crate_version}/{path} - 获取条目/src 资源
crate://{crate_name} - 列出 crate 版本

返回给定 crate 名称的 crate 版本列表。

列表中的每个条目包含以下信息:

  • 版本
  • 发布日期
  • MSRV
  • 下载量
  • 发布者
crate://{crate_name}/{crate_version} - 获取 crate 元数据

返回以下元数据:

  • 名称
  • 版本
  • 发布日期
  • 描述
  • 主页
  • 仓库
  • 许可证
  • URI:
    • Readme (例如 crate://serde_json/1.0.85/readme)
    • Crate 条目 (例如 crate://serde_json/1.0.85/items)
    • 源代码 (例如 crate://serde_json/1.0.85/src)
crate://{crate_name}/{crate_version}/readme - 获取 crate readme

以 Markdown 格式返回 crate README 作为字符串。

crate://{crate_name}/{crate_version}/items - 列出 crate 条目

返回给定 crate 版本的条目列表。

条目是 crate 的一个组成部分。 有几种类型的条目:

  • 模块
  • 函数定义
  • 类型定义
  • 结构体定义
  • 枚举定义
  • 特征定义
  • 实现

使用 search_crate_items 搜索特定条目。

crate://{crate_name}/{crate_version}/src - 列出 crate 源代码资源

返回给定 crate 版本的源代码资源列表。

例如:

<Resources>
  <Resource uri="crate://serde_json/1.0.85/src/serde_json/lib.rs" />
  <Resource uri="crate://serde_json/1.0.85/src/serde_json/value.rs" />
  <Resource uri="crate://serde_json/1.0.85/src/serde_json/map.rs" />
  <Resource uri="crate://serde_json/1.0.85/src/serde_json/value/mod.rs" />
  ...
</Resources>

使用 search_crate_src 搜索 crate 的所有源代码。

crate://{crate_name}/{crate_version}/{crate_resource_path} - 获取 crate 资源

返回给定路径下资源的内容。

URL 模板
  • {crate_name} 是 crate 的确切名称。
  • {crate_version} 是一个(部分)semver 兼容的版本号,或者 latest 表示最新的已发布 crate 版本。

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Curri MCP Server

Curri MCP Server

通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。

官方
本地
JavaScript