First release. 21 MCP tools turning the Game Boy Pan Docs into precise, low-token, citable lookups for decompilation work.
pip install gbdocs-mcp
claude mcp add gbdocs -- uvx gbdocs-mcpWhat it answers
| Question | Tool |
|---|---|
What is $FF41? |
gb_lookup_register |
What does ld a,$91 / ldh [rLCDC],a configure? |
gb_decode_register_value |
What does a write to $2000 do on MBC1? |
gb_mbc_decode_write |
What is opcode $CB 7C? |
gb_decode_opcode |
What state does my ROM inherit at $0100? |
gb_boot_state |
Plus search, navigation, memory-map and cartridge-header tools — 21 in all, listed in the README.
Design rules
Nothing is fabricated. Every response carries a source block naming the page, section and gbdev.io URL. Where Pan Docs is silent — opcode cycle counts, undocumented register bits — the response says so instead of guessing.
The docs are read-only input. Pan Docs markdown (CC0-1.0, upstream fe246067) ships inside the package so pip install works standalone; a local clone or PANDOCS_ROOT takes precedence when present.
Provenance
The markdown parsers are deliberate ports of Pan Docs' own mdBook preprocessor — slugify from anchors.rs, the {{#bits}} parser from bit_descrs.rs, admonitions from admonitions.rs — so anchors match gbdev.io exactly.
Instruction mnemonics, operands and encodings are derived from the docs' {{#bits}} groupings. Cycles and flag effects come from a vendored gb-opcodes table, because Pan Docs deliberately documents neither, and every field is labelled with its source. The test suite cross-checks all 512 opcodes between the two.
Full details in CHANGELOG.md.