get
Show documentation for a Rust item by path.
path必填
rs.ferritin由 ferritin.rs 發布官方發布者v2026.7.21更新於 Oct 24, 2026
Search and read Rust documentation for the standard library and any crate on crates.io
一個遠端 MCP 伺服器,讓助理查閱並搜尋 Rust 標準函式庫與 crates.io 各 crate 的文件。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/rs.ferritin%2Frustdoc/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"ferritin-rust-documentation": {
"type": "http",
"url": "https://ferritin.rs/mcp"
}
}
}[ci] [codecov] [crates.io version badge]
A terminal-based Rust documentation viewer
Ferritin reads rustdoc JSON output to display Rust documentation directly in your terminal. It supports local workspace crates, standard library documentation, and crates from crates.io, with search functionality and modern terminal features including mouse support, syntax highlighting, and clickable links.
rust-docs-json rustup component)Prebuilt binaries skip compilation and are available for x86_64/aarch64 macOS, x86_64 Linux, and x86_64 Windows.
If you have cargo-binstall, it reads the release metadata and installs the right binary for your platform:
Otherwise, the installer scripts detect your platform, download the matching binary, and
place it in ~/.cargo/bin:
macOS and Linux:
Windows (PowerShell):
Both of the above always install the most recent release. You can also pick a specific version or download archives directly from the releases page.
To build from source (or for a platform without a prebuilt binary):
To view documentation for std, core, and alloc:
Local crate documentation requires a nightly toolchain:
Note: There is a relationship between ferritin's version and the nightly toolchain version. Ferritin supports a range of recent rustdoc JSON format versions, and if your nightly generates a newer format, ferritin will make a best effort at parsing it.
Launch the interactive browser:
Once running, use h or ? to see available keybindings. Basic navigation:
g - go to an item by path (e.g., std::vec::Vec)s - search (Tab to toggle between current crate and all crates)l - list available cratesView documentation for a specific item:
Search for items:
List available crates in your workspace:
Ferritin auto-detects how to render: ANSI colors on a terminal, plain text when
piped, and a compact markdown-flavored format under a coding agent. Override it
with --format <tty|plain|agent|json>. --format json emits a structured
representation — of the resolved item for get, or of the results for
search/list — for scripting and programmatic consumers:
(The JSON shape is still settling as the library API evolves; a published JSON Schema is planned.)
Ferritin keeps its caches under a single directory — $FERRITIN_HOME if set,
else $XDG_CACHE_HOME/ferritin, else ~/.cache/ferritin. Everything in it is
reconstructible (fetched or derived), so it is always safe to delete:
docs/{crate}/{version}/{format-version}.json, with derived binary caches
beside it (an rkyv archive for fast partial loads, and a .index file
generated lazily on first search)crate-names/) used for
version resolution and typeahead, and per-crate version lookups
(crates-io-versions/){rustc sysroot}/share/doc/rust/json/ if availabletarget/doc/, not the shared cacheEarlier versions cached under $CARGO_HOME/rustdoc-json; a cache found there
is migrated automatically on first run.
ferritin serve (the opt-in serve/acme features; not present in
distributed binaries) is configured 12-factor style:
Development-only knobs (not part of the stable interface): FERRITIN_TEST_MODE
(normalized snapshot-test output), FERRITIN_REINDEX (rebuild search indexes
in memory, bypassing the disk cache), and the search-scoring probes
FERRITIN_NAME_WEIGHT, FERRITIN_ANCESTOR_WEIGHTS, and
FERRITIN_NAME_PREFIX_COUNT.
Ferritin is at version 0.x and actively used by the author as a primary documentation interface. It's ready for general use, though the output format should be considered unstable and may change between versions.
If you're scripting against ferritin's output, be aware that the text format may change. Pin to a specific version or be prepared to update your scripts.
Ferritin is developed primarily on Unix-like systems and is also tested on Windows, where both the CLI and interactive TUI work (prebuilt x86_64 Windows binaries are provided). If you encounter issues on any platform, please open an issue or pull request.
Ferritin was originally developed to support the rustdoc-mcp MCP server, which provides Rust documentation access for Claude Code and other MCP clients.
來源:README.md,提交 3770aa6
Show documentation for a Rust item by path.
path必填Search for items within a crate's documentation, or — without a crate — discover which crate to use.
cratequery必填已滿足適用檢查項的 100%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
cargo binstall ferritincurl --proto '=https' --tlsv1.2 -LsSf https://github.com/jbr/ferritin/releases/download/ferritin-latest/ferritin-installer.sh | shpowershell -c "irm https://github.com/jbr/ferritin/releases/download/ferritin-latest/ferritin-installer.ps1 | iex"cargo install ferritinrustup component add rust-docs-jsonrustup toolchain install nightlyferritin -iferritin get std::vec::Vecferritin get serde::Serializeferritin search "hash map"ferritin search --crate tokio "spawn"ferritin listferritin get std::vec::Vec --format json