Bevy Manual MCP

io.github.kinkirill由 GitHub 帳號 kinkirill 發布v0.5.2更新於 Oct 30, 2026

Version-accurate Bevy API docs, Book, migration guides and examples for AI agents.

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

在本機執行的 Rust MCP 伺服器,讓助理取得與專案所用 Bevy 版本精確對應的 API 文件、Book 內容、範例與遷移指南。

可以做什麼
  • 在 Bevy 語料中進行 API 與文件混合搜尋,並依符號精確查詢真實簽章與文件
  • 尋找可執行的引擎與 Book 範例,以及效能主題和變更偵測提示
  • 跨版本比對:版本間的破壞性變更、單一符號在多個版本的情況、最新發行版本與外掛相容性
  • 檢查專案:啟用的 Cargo 特性、某符號是否可用,以及此安裝能回答哪些 Bevy 版本
  • 檢查系統存取模式的語法問題、解釋貼上的 panic 或警告、產生自包含外掛骨架
  • 讀取 bevy:// 資源,涵蓋版本、API 路徑、kind、模組、crate、owner 與 rustdoc 檔案
適用情境
適合開發 Bevy 遊戲時使用,希望回答與專案實際引擎版本一致,而非籠統或過時的文件。可用於 API 查詢、Bevy 版本間遷移、外掛相容性判斷與 panic 排查。
執行需求
以 stdio 在本機執行,需 Rust 工具鏈透過 cargo 安裝,不需要 Node 或 npm。它從 BEVY_PROJECT_ROOT 下的 Cargo.lock 或 Cargo.toml 讀取 Bevy 版本,也可用 BEVY_VERSION 指定。索引包預設從 GitHub Releases 下載,存放於 BEVY_MCP_DATA_DIR,可用 BEVY_MCP_OFFLINE=1 關閉,或以 BEVY_MCP_INDEX_BASE_URL 指向鏡像。
安裝前請注意
首次使用時會在背景從 GitHub Releases 下載對應版本的索引包(約 33 MB),除非設定 BEVY_MCP_OFFLINE=1,因此會連上網路並寫入資料目錄。其檢查器只做語法層面分析、不做型別檢查,產生的外掛未經編譯,相容性結果可能為 unknown,應將這些結果視為提示而非驗證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Bevy Manual MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

bevy-manual-mcp

This MCP was designed by a human and built using AI tools to increase development speed.

Bevy is a fast-moving project that changes with every release. Its documentation is large and scattered, so finding an answer that actually matches your version often means digging through rustdoc signatures, the Bevy Book, migration guides, release notes and runnable examples - and still landing on something written for a different release. This server tries its best to remove that friction.

You ask your agent a question and it answers from knowledge pinned to the exact Bevy version your project is using.

Key points:

  • MCP Registry name: mcp-name: io.github.kinkirill/bevy-manual-mcp

  • Native. Rust, stdio MCP, no Node or npm in the user's path. (The initial version of this MCP was written in JS and later in TS.)

  • Small. A 33 MB bundle per Bevy version (125 MB corpus + 15 MB tantivy index, zstd-compressed).

  • Fast. ~10 ms cold start, 22–30 ms concept queries, sub-millisecond exact lookups.

  • Honest. Every tool says what it cannot do: bevy_validate_systems is a syntax-level linter, compatibility can be "unknown", and missing metadata is reported as missing.

Install

bash
cargo install bevy-manual-mcp

Requires a Rust toolchain. There is no prebuilt binary matrix and no npm shim.

The server starts answering immediately. If the detected Bevy version has no installed index, it downloads the prebuilt bundle in the background (progress on stderr) and reloads the index when the install completes. To install it explicitly before starting the server:

bash
bevy-manual-mcp fetch-index 0.20.1bevy-manual-mcp status

Index releases are per Bevy minor (v0.20); an exact-patch corpus is used when present, otherwise the same minor's newest corpus answers for the patch. Status, search results and resources report both the project version and the corpus version that actually supplied the data. BEVY_MCP_OFFLINE=1 disables all downloads, including the background fetch.

Use it

The bare command is the MCP server (stdio), exactly as MCP clients launch it.

bash
bevy-manual-mcp                 # serve MCP over stdiobevy-manual-mcp serve           # explicit formbevy-manual-mcp --helpbevy-manual-mcp status          # detected version, corpus state, pathsbevy-manual-mcp versions        # installed corporabevy-manual-mcp search "system ordering"bevy-manual-mcp lookup Query::iter --json

MCP client configuration

Most clients only need a command:

json
{  "mcpServers": {    "bevy-manual-mcp": {      "type": "stdio",      "command": "bevy-manual-mcp",      "env": {        "BEVY_PROJECT_ROOT": "/path/to/your/bevy/game"      }    }  }}

BEVY_PROJECT_ROOT is optional if the client's working directory is the Cargo project; the version is read from Cargo.lock first and Cargo.toml second.

Tools

toolwhat it answers
bevy_searchHybrid API + prose search: signatures, Book, guides, examples
bevy_apiExact symbol lookup with the real signature, docs and related items
bevy_examplesRunnable engine/Book examples for a task
bevy_migrationBreaking changes between two Bevy versions
bevy_api_diffOne symbol across the compiled versions you name
bevy_check_versionNewest published Bevy, patch vs breaking, pre-releases
bevy_indexed_versionsWhich Bevy versions this install can answer for
bevy_index_statusSelf-diagnosis: active version, corpus, paths
bevy_mcp_check_release_indexWhether this server's GitHub index release has a newer corpus/revision
bevy_check_manifestEnabled Cargo features and whether a symbol is available
bevy_validate_systemsSyntax-level B0001/B0002 lint (tuple-aware, filters)
bevy_explain_errorExplain a pasted panic/warning, version-checked
bevy_ecosystem_searchFan-out over the Bevy corpus and installed plugin corpora
bevy_ecosystem_compatPlugin ↔ Bevy compatibility from the vendored snapshot
bevy_generate_pluginSelf-contained plugin scaffold, parsed with syn
bevy_perf_advisorPerformance topics and is_changed/is_added detection

bevy_validate_systems does not type-check and cannot decide Bevy runtime panics; it recognises the B0001/B0002 access patterns and says when its analysis is incomplete. bevy_generate_plugin reports compile_verified: false because no compiler runs. bevy_ecosystem_compat is offline-only and returns compatible: "unknown" for requirement operators it does not evaluate.

Resources

The server also exposes bevy:// resources and templates:

bevy://index/versionsbevy://api/<version>/<full::path>bevy://kind/<version>/<kind>bevy://module/<version>/<module>bevy://crate/<version>/<subcrate>bevy://owner/<version>/<Type>bevy://doc/<version>/<rustdoc file>

Listings page at 50 items with query-bound cursors; reads open the requested version on demand.

Configuration

File (bevy-mcp.config.json), environment and defaults combine in that order; environment variables win.

variablemeaning
BEVY_PROJECT_ROOTCargo project used for version detection
BEVY_VERSIONExplicit version override, e.g. 0.20.0
BEVY_MCP_DATA_DIRPersistent corpus directory (default ~/.cache/bevy-mcp/data)
BEVY_MCP_OFFLINE1 disables downloads
BEVY_MCP_INDEX_BASE_URLMirror for fetch-index releases
BEVY_DOC_DIRLocal rustdoc tree for build --doc-dir
BEVY_WEBSITE_DIR / BEVY_EXAMPLES_DIRLocal prose/examples sources for rebuilds
BEVY_META_DIRVendored bevy-meta root (feature graphs, error codes)
BEVY_MCP_COMPAT_PATHExplicit compat.json path
BEVY_MCP_MAX_RESULTSDefault result count, 1–20
BEVY_MCP_DEBUG1 for timing/progress diagnostics

The config file additionally accepts a corpora array for plugin corpora:

json
{  "corpora": [    { "crate": "bevy_egui", "version": "0.43.1" },    { "crate": "bevy_rapier3d", "auto": true }  ]}

Plugin corpora live under data/corpora/<crate>/<version>/ and are built with the normal build command.

Rebuilding indexes

bash
# From a local `cargo doc` tree (or a docs.rs mirror)bevy-manual-mcp build --doc-dir target/doc
# Canonical NDJSON inputbevy-manual-mcp build --records records.ndjson --out data/versions/0.20.0
# Release bundle + manifestbevy-manual-mcp build --doc-dir ~/.cache/bevy-mcp/bevy-0.20.0 \  --pack dist/bevy-0.20.0-fmt1.tar.zst \  --manifest dist/index-manifest.json

A full 0.20.0 rebuild from 8,665 rustdoc pages takes ~30 s in release mode and produces exactly the canonical corpus: 253,196 records, 653,264 symbol keys, 15.2 MB tantivy index. See GETTING-API-DOCS.md and HOW-IT-WORKS.md.

Development

See docs/DEVELOPING.md for the layout, tests, index rebuilds and release process.

License

MIT. Vendored Bevy metadata and website prose are covered in docs/THIRD-PARTY-NOTICES.md.

來源:README.md,提交 f3ea7b0

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:該軟體包類型無法在沙箱中執行。

版本歷史

2
  1. v0.5.2最新Oct 30, 2026
  2. v0.2.2Oct 29, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分