Skip to main content

MCP server for embedded systems documentation

Project description

bitwise-mcp

MCP server for embedded developers. Ingests PDF reference manuals (1000+ pages), extracts register definitions, and provides fast semantic search.

Features

  • PDF Ingestion - Parses large reference manuals preserving structure
  • Register Table Extraction - Detects and converts register definitions to structured JSON
  • Hybrid Search - Combines keyword matching (SQLite FTS5) with semantic similarity (FAISS)
  • Compact Output - Formats responses to minimize token usage

Installation

poetry install

# Add to Claude Code
claude mcp add embedded-docs --command poetry --args "run" "mcp-embedded-docs" "serve" --cwd "<path-to-this-repo>"

Restart Claude Code after adding the server.

Usage

Place PDFs in a docs/ directory, then in Claude Code:

What PDFs are available?
Ingest any files that haven't been ingested yet
What's the base address for FlexCAN0?

Example: Checking Available PDFs

Listing available PDFs

Example: Searching Documentation

The MCP server automatically queries the indexed documentation when you ask questions:

Documentation search in action

CLI Usage

Or use CLI directly:

poetry run mcp-embedded-docs ingest docs/manual.pdf --title "MCU Manual"
poetry run mcp-embedded-docs list  # View indexed documents

MCP Tools

  • search_docs - Search documentation with hybrid retrieval
  • find_register - Find specific register definitions
  • list_docs - List all documentation files with status (indexed + available)
  • ingest_docs - Ingest documentation files into the search index
  • remove_docs - Remove documents from the search index by ID

Tech Stack

Python 3.10+ • PyMuPDF • pdfplumber • sentence-transformers • FAISS • SQLite FTS5

Performance

Tested: S32K144 Reference Manual (2,179 pages, 14MB) Results: 3min indexing, <500ms search, ~500MB memory

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_michaelayles_mcp_embedded_docs-0.1.0.tar.gz.

File metadata

File hashes

Hashes for iflow_mcp_michaelayles_mcp_embedded_docs-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c0955b74addb31bacf2cacdebd784c62e589fac3e581960734d19bff56ca938e
MD5 9c9708a57fa5269b3f7e489bd5bc6b38
BLAKE2b-256 b7eed65c04cb170857139e0e7a27e454a1f1c0e3ddea4eebe51c044c0ede6029

See more details on using hashes here.

File details

Details for the file iflow_mcp_michaelayles_mcp_embedded_docs-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for iflow_mcp_michaelayles_mcp_embedded_docs-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6759fc57d8a3134854f8eef0ef8e18fc12d0d50d8fd40ebf708f18113a45e0b3
MD5 4d6ef1cf53ec69f7c99babdd6525e102
BLAKE2b-256 a24999121c1a3535e0815fbe2b8902e42ae77350008fb6b69287866d74e277c8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page