Skip to content

eMCP

MCP for devices.

Serve your tools in four lines

let server = emcp::Server::serve(info, Arc::new(Clock))?;
let token = server.grant(&run, "EXP-12");
// { "clock": { "type": "http", "url": server.url(),
// "headers": { "Authorization": token.header() } } }

Every server behind one endpoint

Claude Code
Codex
One endpoint, one token per run
Your tools
Upstream servers
Code mode

Connect once, per member

Settings → MCP: the endpoint, connected servers and tools

Consent for every tool

Claude Code asks to use the team's apps: Off, Read only or Full per app, and the upstreams each needs