# MCP server

An MCP (Model Context Protocol) server that gives coding agents and assistants EdgeTech product specifications, the standards status, and a compatibility check for a site. Runs locally over stdio or as a hosted HTTP endpoint.

Canonical: https://edgetech.eu/docs/mcp  
Updated: 2026-09-22

If you are using Claude Code, Cursor, Copilot or another agent to design a charger or a site around Edge boards, the agent can ask this server instead of scraping pages.

## Tools

| Tool | Input | Returns |
|---|---|---|
| `list_products` | — | Every board and charger with part number, one-line summary and URL |
| `get_product` | `part_number` or `slug` | Full specification table, interfaces, standards, price, FAQ, Markdown body |
| `standards_status` | optional `standard` | The status table from the standards page: revision, status word, where implemented |
| `check_compatibility` | `meter` (`p1-dsmr5`, `p1-dsmr4`, `none`), `phases` (1 or 3), `main_fuse_a`, `charge_points`, `solar`, `cabled` (bool), `third_party_loads` (bool) | A recommended set of parts with reasons, and the caveats that apply |
| `get_page_markdown` | `path` | The Markdown twin of any page on this site |

All data comes from the same content files as this website, published as JSON at [`/data/products.json`](/data/products.json) and [`/data/standards.json`](/data/standards.json).

## Run it locally (stdio)

```bash
npx @edgetech/mcp-server
```

Or from the site repository: `node mcp/server.mjs`. Add it to Claude Code:

```bash
claude mcp add edgetech -- npx @edgetech/mcp-server
```

Cursor and others: add a `command` server with the same command in their MCP settings.

## Hosted endpoint

`https://mcp.edgetech.eu/mcp` speaks Streamable HTTP. It is read-only and needs no key.

## Example

Ask: "I have a 3×25 A connection, a DSMR 5 meter, four charge points and solar panels. What do I need?"

`check_compatibility` answers with one EVSE-SC-02, four EVSE-C-3x32A, four EVSE-X-DCD, and the caveat that on 3×25 A with four cars at 6 A minimum, the fourth car waits when the house draws more than 1 A per phase.

## What it does not do

It does not control chargers. Control of live chargers goes through the charging platform, and we do not put a language model in a real-time control loop. The Matter module has a separate, authenticated MCP interface for that, with TTL-bounded setpoints, described on request.
