Windmill MCP server
Windmill in any MCP client, through Memtro: Windmill does not publish this server. Memtro's Windmill connector reads Windmill through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.
What the model can do
Windmill (cloud or self-hosted) workflow engine: recent runs with their state, duration and, for failures, the error; queued, running and suspended jobs; one job; scripts, flows and schedules with their cron, timezone, target and last error; when you ask, can run a script or a flow now or at a time, cancel a job, resume a suspended flow, restart a flow from a step, create, enable, disable or delete a schedule, and archive a script or a flow.
Reads
windmill_list_workspacesThe Windmill workspaces the token's user belongs to, with id and name.windmill_list_runsCompleted Windmill jobs, newest first: id, script or flow path, kind, state (success, failure, canceled, skipped), schedule, start, completion…windmill_list_queueWindmill jobs not finished yet: queued, running and suspended (waiting for approval or an event), with path, kind, created…windmill_get_jobOne Windmill job by id: path, state, timing and, if it failed, the error message.windmill_list_scriptsScripts in the Windmill workspace: path, summary, language, kind, created date, whether archived, and the names of their arguments (for running one).windmill_list_flowsFlows in the Windmill workspace: path, summary, description, last edited, whether archived, and the names of their inputs.windmill_list_schedulesSchedules in the Windmill workspace: path, cron (six fields, seconds first), timezone, enabled, the script or flow it runs…
Acts, when you ask
These change something in Windmill. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.
windmill_run_scriptRuns one Windmill script, by path, with the arguments given, now or at scheduled_for.windmill_run_flowRuns one Windmill flow, by path, with the inputs given, now or at scheduled_for.windmill_cancel_jobCancels one queued or running Windmill job, with an optional reason.windmill_resume_flowResumes one suspended Windmill flow (one waiting at an approval or suspend step) as its owner, with an optional resume payload…windmill_restart_flowStarts a new run of a completed Windmill flow from one of its top-level steps, keeping the earlier steps' results.windmill_create_scheduleCreates a Windmill schedule that runs one script or flow on a six-field cron (seconds first: '0 0 9 * * 1' is 09:00 on Mondays) in a timezone…windmill_set_schedule_enabledEnables or disables one Windmill schedule.windmill_delete_schedulePermanently deletes one Windmill schedule, so it never runs again.windmill_archive_scriptArchives one Windmill script by path, so it no longer appears in lists and cannot be run by path; schedules and flows that use it will fail.windmill_archive_flowArchives one Windmill flow by path (archived true), or brings it back (false).
Connect it
First connect Windmill on Dashboard → Connections, then add Memtro to your client once. The Windmill tools appear alongside the tools of everything else you have connected; nothing is configured per connector.
Claude Code
The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.
claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...Cursor
Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.
{
"mcpServers": {
"memtro": {
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Claude Desktop
Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…
OpenCode
A remote server in opencode.json.
{
"mcp": {
"memtro": {
"type": "remote",
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Pi
One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.
Any other client
Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.
Who may use it
The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Windmill connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.
Ask it like this
- › Which runs failed overnight, and why?
- › Which flows are suspended waiting for approval?
- › Which schedules have a last error?
- › What inputs does the invoice sync flow take?
- › Disable the nightly export schedule.
Questions
- Is this an official Windmill MCP server?
- No. It is Memtro's MCP server with Memtro's Windmill connector behind it: the connector reads Windmill through its API with the credentials you connect on Dashboard → Connections, and Windmill publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
- What does it cost?
- Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
- Can it change anything in Windmill?
- Only when you ask, and only what it has been granted: run a script (now or at a set time); run a flow (now or at a set time); cancel a queued or running job; resume a suspended flow as its owner; restart a completed flow from a step; create a schedule; enable or disable a schedule; delete a schedule; archive a script; archive or unarchive a flow. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
- Which clients work?
- Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.