MCP
Add your own MCP servers for your bots, connect n8n or Zapier, and use Murage's own MCP server from another AI app.
Add a custom MCP server
Custom servers are managed in the desktop app only. A paired phone has no MCP settings.
- Choose Connected apps in the sidebar, then the MCP servers tab.
- Press Add server and paste a link, a command or a config snippet. Murage works out the type.
- If the server needs a sign-in, you get a Sign in to… button. If you have a token instead, see Add an MCP server with a token instead of a sign-in.
Bots can use the server's tools from their next task. No restart is needed. Use Turn off to park a server without deleting it, the edit button to change it, and the remove button to delete it.
What's supported in this release
- Links, commands and config snippets. Paste any of them and Murage works out the type.
- Sign-in when a server needs it. You get a Sign in to… button.
- Up to 20 servers, 64 arguments and 64 environment values each.
Which bots get them
Custom servers aren't switched on per bot. Once a server is on, it reaches every bot whose engine can use custom MCP servers. That's Claude Code, Codex and the engines Murage runs through ACP. Bots on other engines don't see it. See Engines.
On Claude Code and Codex, tool calls from your servers follow each bot's approval settings and the stop line. They're never pre-approved, so you'll see approval cards for them like any other action. On Hermes and other ACP engines, Murage only sees what the engine asks about. Hermes asks before MCP tools too, so they follow the same approval settings and stop line. See Permissions and the stop line.
Where they're stored
Custom servers are saved in config.json in your data folder (see Data locations), under mcpServers:
{
"mcpServers": {
"notes": {
"command": "npx",
"args": ["-y", "@example/notes-mcp"],
"env": { "NOTES_TOKEN": "…" },
"enabled": false
}
}
}
If you edit the file by hand, restart Murage. An entry you write by hand is switched on unless it says "enabled": false. An entry Murage can't read is skipped, and the rest still load.
Environment values are kept in plain text in this file, which only your user account can read. They're passed to the server when it starts, not shown on its command line. Use a token scoped to that one server.
Names Murage refuses
Some names belong to Murage's built-in tools and can't be used, including computer, agents, browser, phone, dweb and muragebox, among others. Environment names starting with MURAGE_ are reserved too.
About Test
Test stops the server after it connects, or after eight seconds. The server gets only the environment values you set for it, none of Murage's own keys. Its error output isn't shown in the app.
n8n and Zapier
Your bots can run n8n workflows and Zaps today through the n8n and Zapier MCP servers. Add the n8n or Zapier MCP server as a custom MCP server, using the steps above.
Follow n8n's or Zapier's own MCP instructions for the link or command and the key it needs, and paste it into Add server. n8n exposes no workflow over MCP until you enable it in n8n.
To have n8n or Zapier start a Murage task, use a webhook instead. See Webhooks. Deeper built-in n8n support is coming.
Use Murage from another AI app
The desktop app includes its own MCP server. Another MCP app on your computer can use it to work with your Murage team while Murage is running.
It can:
- check that Murage is running, and list your bots and channels with what they're working on;
- read conversations in pages of up to 200 messages, and search them (up to 100 results);
- create bots, channels and tasks, and edit a bot's or channel's profile;
- send work to a bot or channel, wait for the result, and interrupt a running turn;
- list available models and switch an idle bot to one of them.
It can't approve requests, remember permission grants, delete data, import teams, change keys, or start and stop computers. Those stay in Murage, with you. Screenshots and permission details are removed from what it returns.
Connect another app to Murage
Add a server entry to your MCP app's settings. The command is the Murage app itself, run with ELECTRON_RUN_AS_NODE=1, so you don't need Node.js installed.
Mac:
{
"mcpServers": {
"murage": {
"command": "/Applications/Murage.app/Contents/MacOS/Murage",
"args": ["/Applications/Murage.app/Contents/Resources/server/mcp-server.js"],
"env": { "ELECTRON_RUN_AS_NODE": "1" }
}
}
}
Windows: use the installed Murage.exe as the command and the resources\server\mcp-server.js file next to it as the argument. The usual install folder is %LOCALAPPDATA%\Programs\Murage. Keep the same ELECTRON_RUN_AS_NODE setting.
Ubuntu (.deb): use /opt/Murage/murage as the command and /opt/Murage/resources/server/mcp-server.js as the argument, with the same setting.
Connection settings
With no extra settings, the MCP server looks for Murage on ports 8799, 18799 and 28799 and only connects to one that identifies itself as Murage. You can add these to the env block:
MURAGE_PORT: use one local port.MURAGE_URL: use an exact address. Plainhttpto another machine is refused unlessALLOW_INSECURE_HTTP=true; usehttpsoutside your own computer.MURAGE_TOKEN: sent as a bearer token, for a proxy that needs one. When you set it, also setMURAGE_URLorMURAGE_PORT.MURAGE_MCP_TIMEOUT_MS: request timeout, from 1,000 to 120,000 milliseconds. The default is 30,000.
Troubleshooting
You see
Test failsDo this
Check the command runs on its own in a terminal, and that its key is under Environment.
You see
A bot doesn't see the toolsDo this
Check the server is on and the bot's engine supports custom MCP servers. Start a new task.
You see
Your MCP app can't reach MurageDo this
Make sure Murage is open and ready, then restart the MCP app.