ByteAsk Embedded MCP
Gives coding agents cited answers from firmware and embedded reference docs, and returns "no match" instead of guessing a register value.
Overview
ByteAsk Embedded MCP is the open source server behind ByteAsk Embedded Docs, an evidence retrieval MCP server for coding agents that write firmware, driver, or protocol code. It exposes three tools over stdio or Streamable HTTP and returns verbatim source snippets with a section and page citation, or an honest "no confident match" instead of an invented value.
How it works
- The agent calls
search_docs(query, limit)the moment it hits a hex literal, a Modbus code, an IEEE clause, an SCPI verb, or an MCU part number. - The server returns ranked hits, each with a document title, a section and page citation, the verbatim snippet, and a
result_id. - The agent can expand any hit with
get_context(result_id)to see the full source section, or log a request for a missing document withrequest_document(request). - Retrieval is pluggable through a small
SearchBackendinterface. The bundledSampleBackendserves a couple of illustrative records so the server runs right away, while the hosted endpoint atmcp.byteask.aiis backed by ByteAsk's full licensed corpus.
Examples
claude mcp add byteask-embedded-docs -- uv run byteask-embedded-mcp
## Results for "what Modbus function code writes multiple registers"
### Sample — Modbus Application Protocol (illustrative) — §6.12, p.30
> Function code 16 (0x10), Write Multiple Registers, writes a block of contiguous
> holding registers (1 to 123 registers) in a remote device. ...
_ref: sample:modbus-fc16_
Only the server code is open here. The document corpus and the retrieval engine behind the hosted endpoint stay proprietary to ByteAsk, so the free demo above runs on a small sample set rather than the full firmware library.
Installation
You need Python 3.10 or newer and uv.
- Clone the repository:
git clone https://github.com/ByteAsk/ByteAsk-Embedded-MCP - Install dependencies:
uv sync - Start the server:
uv run byteask-embedded-mcp(stdio transport by default) - Register it with Claude Code:
claude mcp add byteask-embedded-docs -- uv run byteask-embedded-mcp - Verify it worked by asking the agent something like "what Modbus function code writes multiple registers." It should call
search_docsand return a cited snippet from the bundled sample corpus.
Related assets
Langflow
Visual Python platform for building and deploying AI agents and workflows, with full component source access, multi-agent orchestration and one-click export as an API or MCP server.
Graphify
Turns a codebase, plus its docs, PDFs, images, and video, into a queryable knowledge graph that a coding agent can traverse instead of grepping raw files, and never guesses silently: every edge is tagged EXTRACTED, INFERRED, or AMBIGUOUS so you know what was found versus inferred.
Awesome MCP Servers
The largest community catalog of MCP servers: thousands of entries across dozens of categories (databases, browser automation, cloud, communication and more), tagged by language and scope.