Documentation menu

Commands

embr mcp

Last updated October 22, 2026

embr mcp

Runs a Model Context Protocol server on stdio. A coding agent uses it to search the Ember registry and to read the details of a package.

The server only reads. It changes no files, installs nothing, and publishes nothing. To install what the agent finds, run the embr add command that each answer gives.

Register the server#

For Claude Code:

claude mcp add ember -- embr mcp

Other clients read an mcpServers block like this one:

{
  "mcpServers": {
    "ember": {
      "command": "embr",
      "args": ["mcp"]
    }
  }
}

The client starts embr itself, so embr must be on the PATH that the client sees. Installing Ember puts it in ~/.ember/bin.

Tools#

search_packages#

Finds packages by name or description in the registry's search index. Case does not matter, and an empty query matches every package. The most downloaded packages come first.

ArgumentTypeMeaning
querystring, requiredthe text to find, for example signal or chief/
environmentstringonly packages for this environment
languagestringonly packages in this language: luau, alloy, loom, or luwu
limitinteger, 1 to 50the most packages to return; the default is 20

Each result gives the name, the latest version, the environments, and the download count. It also gives the language when it is not Luau, the description, a deprecation reason, and the embr add command.

package_info#

Shows one package from the Ember index.

ArgumentTypeMeaning
namestring, requiredthe package as scope/name, for example chief/core

The answer lists every version, newest first, with its environment, its language, and its yanked or deprecated marks. It also gives the dependencies of the newest version that is not yanked.

The protocol#

The server speaks JSON-RPC 2.0, one message on each line. It writes only protocol messages to stdout, so nothing else can break the client's parse.