Skip to main content
MCP servers give Embedder extra tools, such as issue trackers, documentation search, or a program that controls your test bench. Add a server from the catalog or your own, then choose which of its tools Embedder can use and which ones control hardware.
Embedder calls MCP tools without asking for approval, whatever your approval settings, and the tools are available in every mode, including Plan. Before you connect a server, review what its tools can do and what access it requests. Turn off any tool you don’t want Embedder to call. See Choose which tools Embedder can use.

Add a server from the catalog

The catalog includes these servers: Catalog servers and the credentials you enter are saved in plain text in your global configuration, ~/.embedder/mcp.json. To keep a secret out of the file, enter ${NAME} as the credential and set the NAME environment variable instead. See Credentials.
  1. Run /mcp in chat. The MCP Servers panel opens.
  2. Select Browse, then select Install next to the server.
  3. If the server needs credentials, enter them on the Configure screen and select Install & connect.
  4. Complete any browser sign-in the server asks for.
After it connects, the server shows Connected and its tool count. Ask Embedder to run a small read-only check, such as listing recent issues, before you use tools that change data.

Add your own server

Use a custom server for a local program, such as a bench controller, or for a remote MCP endpoint.
  1. Run /mcp and select Add custom.
  2. Enter a Name.
  3. Choose a Transport: stdio for a local program, or http or sse for a remote server.
  4. Enter the Command (for example, npx -y my-mcp-server) or the Endpoint URL.
  5. Select Add & connect.
To add environment variables or headers, use the command line or edit the configuration file. See Choose a configuration scope.
Servers you add from /mcp are saved in your global configuration. Use embedder mcp add --scope project or edit .embedder/mcp.json to share a server with everyone who works on the project.

Local programs

The program and everything it depends on must be installed on the machine that runs Embedder. Use an absolute path if the program is not on PATH. In VS Code, the program starts in the workspace folder. In the terminal UI, it starts in the folder where you started Embedder. A local server receives only basic variables, such as PATH and HOME, from your environment. Pass anything else it needs explicitly:
Each tool call times out after 60 seconds unless the server reports progress while it works. Keep long operations, such as a full flash, within that limit or have the server report progress.

Credentials

Keep secrets out of shared configuration. Write ${NAME} in a header, environment value, URL, command, or argument, and Embedder replaces it with the environment variable when it connects. ${NAME:-fallback} uses the fallback when the variable is not set or is empty.
Use single quotes so your shell does not replace the variable first. Set the variable in the environment that starts Embedder or VS Code. If it is missing and has no fallback, the server fails to connect with Environment variable "NAME" is not set and has no default value. For a server that uses browser sign-in, connect from /mcp. Embedder opens your browser to authorize the server, and the sign-in times out after 2 minutes. Browser sign-in needs a browser on the machine that runs Embedder.

Choose which tools Embedder can use

Run /mcp and open a server to turn it, or any one of its tools, on or off.
Select a server on the Installed tab. Its details show the connection, any credentials, and its Tools. The tool list appears while the server is connected.
Changes you make in /mcp are saved to your global configuration. For a server defined in .embedder/mcp.json, edit that file instead. Subagents can use only the tools that a server marks as read-only. General subagents can also use the tools you mark as hardware tools, unless you turn off their hardware access with /subagent-hardware.

Mark hardware tools

Mark every tool that controls a live target as a hardware tool. Embedder then lets one session or subagent use the board at a time, and the others wait until it is free, as with Embedder’s own hardware tools. Marking a tool doesn’t add an approval prompt. The setting does not check what the external program does. Confirm that the tool targets the intended device, and review its actions before you run a hardware workflow.

Choose a configuration scope

When both files define a server with the same name, the project entry replaces the global one.
Servers in a project’s .embedder/mcp.json connect automatically, and local programs start, when you chat in that project. Embedder doesn’t ask first. Review this file in any repository you clone before you use Embedder in it.
The file uses the same server format as other MCP clients, so you can paste a block from another client’s configuration. Embedder reads servers under servers or mcpServers. When type is missing, an entry with command is stdio and an entry with url is http, so set "type": "sse" for an SSE server.
.embedder/mcp.json
Embedder ignores any other fields and removes them the next time it saves the file. Use tool names from the server’s actual tool list, as shown in its details in /mcp. If the file isn’t valid JSON, for example because it has comments or a trailing comma, Embedder renames it to mcp.json.corrupt.<timestamp> and continues without it. If one server entry is invalid, Embedder ignores the whole file. Fix the file and reconnect.

Remove a server

In VS Code, open the server in /mcp and select Remove. In the terminal UI, open the server’s details with i and press x. Both remove servers in your global configuration, right away and without asking you to confirm. To remove a server in the project configuration, use the command line from the project root:
embedder mcp remove uses global scope unless you add --scope project.

Troubleshoot

Last modified on November 13, 2026