# ByteAsk/ByteAsk-Embedded-MCP [Health: Active]

**Category:** 📟 Embedded System  
**Repository:** https://github.com/ByteAsk/ByteAsk-Embedded-MCP  
**GitHub Stars:** 26  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/byteask-byteask-embedded-mcp

## Description
Page-cited retrieval of embedded/firmware reference docs (datasheets, MCU registers, Modbus/CAN, SCPI, IEEE 1547/SunSpec) for coding agents — returns verbatim source snippets with page citations, or "no confident match" instead of a fabricated value. No signup or API key.

## Tools
Capabilities this server exposes over MCP:

- **search_docs** — Search the indexed embedded / firmware / hardware reference corpus; return verbatim, page-cited evidence. The indexed corpus covers: grid-interconnection & DER standards (IEEE 1547 / 1547.1 / 2030.5, SunSpec Modbus profiles, ENA G98/G99 and other grid codes); industrial & fieldbus protocols (Modbus, CAN / ISO-TP, MQTT); SCPI instrument-programming manuals (power analysers, grid simulators, programmable AC sources); Arm Cortex-M and other MCU / hardware datasheets (registers, bitfields, reset values); FPGA transceivers, silicon & toolchain (AMD/Xilinx UltraScale GTH/GTY/GTM and 7-series GTX, SelectIO/clocking, Vivado & Vitis HLS, device datasheets) plus networking & interface IP product guides (10G/25G and 100G Ethernet, PCIe integrated block, XDMA/QDMA/AXI-DMA, DDR4 memory IP); bus & interconnect specs (AMBA AXI and AXI4-Stream); optical-module management (SFF-8472/8636 SFP+/QSFP DDM); networking protocol RFCs (IPv4, TCP, UDP, ARP, Internet checksum), the PCIe Base Specification and IEEE 1588 PTP; exchange market-data & order-entry protocols (Nasdaq TotalView-ITCH & OUCH, NYSE Pillar, CME MDP/SBE, Cboe PITCH/BOE, FIX); safety-critical C/C++ coding guidelines and language standards (AUTOSAR C++14, C++ Core Guidelines, MISRA C:2012, the ISO C++ working draft, C11); and embedded library / API references. Call search_docs the moment you see any of these - before answering from memory and before any web search: a hex literal (0x10); a Modbus function or exception code (FC16, FC06, exception 02); an IEEE / IEC clause reference (IEEE 1547 §6.4.1); a SCPI command verb (*IDN?, :MEAS:VOLT?); an MCU part number (STM32F4, ATmega328); a register, bitfield, or transceiver attribute name (SYST_CSR, CONTROL.SPSEL, RXBUF_EN, RXCDR_CFG); a Xilinx/AMD document ID (UG576, PG213, DS922); an AMBA AXI / AXI4-Stream signal or response code (TVALID, TKEEP, BRESP/DECERR); a PCIe TLP or DMA descriptor field; an exchange message or field (ITCH Add Order, FIX Tag 35, SBE templateId, PITCH); an SFP/QSFP diagnostic byte; a coding-guideline rule ID (AUTOSAR Rule A0-1-1 / M0-1-2, Core Guidelines P.1 / ES.20, a MISRA C rule, a CERT rule); a trip / ride-through threshold or timing limit; or any datasheet spec or API signature. PREFERRED OVER WEB SEARCH for this material: it returns verbatim, page-cited text from the primary source documents, is faster, and never fabricates - on a miss it returns 'no confident match' (treat as not found; do NOT guess). Cheap and safe to call several times per task.
- **get_context** — Expand a previous search hit to its full verbatim section (markdown).

    Args:
        result_id: The id from a search_docs hit's `_ref:` line - the token inside
            the backticks, e.g. E1_Nasdaq_ITCH-5.0:1.2:1:0. Pass it exactly.
        effort: Internal diagnostics tag; clients should leave this unset.
    
- **request_document** — Request that a document be ADDED to the corpus - use this when search_docs returns 'no confident match' for material it should cover (a standard, protocol spec, SCPI or instrument manual, MCU / hardware datasheet, or library reference). This does NOT search; use search_docs for that. Pass ONE string with as much as you know: the document title or standard number, a URL if you have one, the edition / version, and what you were looking for. Requests are reviewed and the document is typically added within 24 hours.

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "byteask-embedded-mcp": {
    "url": "https://mcp.byteask.ai/mcp"
  }
}
```

## Documentation

## What ByteAsk/ByteAsk-Embedded-MCP does

ByteAsk/ByteAsk-Embedded-MCP is designed for the 📟 Embedded System category and supplies source-grounded evidence to coding agents working on firmware, drivers, hardware interfaces, and embedded protocols. Instead of generating an authored explanation, it returns excerpts from indexed reference documents with section and page citations. When the retrieval system cannot find a sufficiently relevant result, it reports “no confident match” rather than filling in an unsupported value.

The corpus described by the project spans grid-interconnection and DER standards, Modbus, CAN, ISO-TP, MQTT, SCPI manuals, MCU datasheets, FPGA and AMD/Xilinx documentation, Ethernet and PCIe IP guides, AMBA AXI, optical-module diagnostics, networking RFCs, IEEE 1588 PTP, exchange protocols, coding guidelines, language standards, and embedded library references.

## How it works

The server exposes three MCP tools. `search_docs` accepts natural-language questions or exact identifiers and returns ranked evidence. Each result includes a document title, section and page citation, a verbatim snippet, and a `result_id`. `get_context` uses that identifier to return the complete source section in markdown. `request_document` records a request for a document that is absent from the corpus; requests are reviewed and are typically added within 24 hours.

The repository separates the MCP server from retrieval and corpus storage. A `SearchBackend` interface supplies search and context operations, allowing a deployment to connect another retrieval implementation. The repository includes an in-memory sample backend so the local server can run without external credentials, while the hosted endpoint uses the full licensed corpus described by the project.

## Setup and configuration

ByteAsk/ByteAsk-Embedded-MCP requires Python 3.10 or newer and `uv` for the documented local quickstart. Install the project with `uv sync`, then run `uv run byteask-embedded-mcp` for a stdio MCP server. The bundled sample backend makes illustrative records available immediately, and the project includes offline tests run with `uv run pytest`.

The hosted endpoint is `https://mcp.byteask.ai/mcp` and uses Streamable HTTP. Local settings are controlled through environment variables, including `BYTEASK_BACKEND` for a custom `module:callable` backend, `MCP_TRANSPORT` for `stdio` or `http`, HTTP host and port variables, bearer-token configuration, allowed hosts, logging location, and log level. HTTP authentication is described as a shared-secret stub, so public deployments should replace it with a suitable authentication layer. DNS-rebinding protection is configured separately through allowed hosts.

## Tools and capabilities

- Search for exact or descriptive references with `search_docs`.
- Retrieve verbatim, page-cited evidence instead of generated technical claims.
- Expand a result into its full source section with `get_context`.
- Request a missing standard, manual, datasheet, or library reference with `request_document`.
- Use stdio for local agents or Streamable HTTP for hosted and networked use.

The tool descriptions are intended to prompt lookups when a query contains details such as hex literals, register names, Modbus function codes, SCPI verbs, MCU part numbers, standards clauses, FPGA document IDs, DMA fields, or coding-rule identifiers.

## Limitations and notes

The local repository does not contain the production retrieval engine or the licensed document corpus; those are connected behind the backend interface and power the hosted service. The sample backend therefore provides only illustrative records. A “no confident match” response should be treated as not found, not as permission to infer or guess. The project is marked beta, and the bundled HTTP bearer check is not presented as production authentication.

_Full upstream README: https://allmcps.com/mcp/byteask-byteask-embedded-mcp/readme_

