Connect your own MCP server
Register a Streamable HTTP MCP server, discover its tools, and grant the minimum a routine needs.
Managed providers cover GitHub, PostHog, and Zernio. Everything else — Stripe, an internal service, a vendor's hosted server — connects as a self-managed MCP connection: a URL plus optional headers, encrypted at rest.
What Work on Repeat expects
- A Streamable HTTP MCP server reachable over HTTPS.
- Authentication expressed as request headers, if the server needs any.
- Tool definitions with JSON Schema inputs, returned from the server's tool listing.
Register the connection
Add the server
Open Connections → Add MCP server and provide:
Prop
Type
A new connection starts with status untested. It becomes ready the first
time tool discovery succeeds.
Discover tools from a routine
Tool policies belong to a routine, not to the connection — the same server can expose three tools to one routine and one tool to another.
Open the routine, choose the connection, and select Discover tools. Work on Repeat asks the server for its current tool definitions and creates a policy row for each.
If the server cannot be reached or does not return valid tools, the request
fails with 502 mcp_discovery_failed.
Enable the minimum
Every discovered tool is disabled. Enable only the ones the responsibility requires, and grant automatic execution only where you have decided the routine may act unattended.
In the model's context each tool is named <connection-slug>__<tool-name>, so
traces stay unambiguous when two servers expose a tool with the same name.
Network rules
Production connections reject unsafe destinations — loopback, link-local, and private network addresses — and refuse credentials embedded in URLs or introduced by redirects.
The DNS answers validated at connection time are pinned to the outbound request, which closes the gap where a hostname resolves safely during validation and to an internal address during use.
Local development can point at an explicit fixture server so integration tests do not need a public endpoint.
Rediscovery
Rediscovering refreshes the remote schema and resets prior approvals. This
is deliberate: a server that changes what a tool does cannot inherit an old
automatic-execution grant. Rediscovery also returns the routine to draft, so
you re-prove it before it runs unattended again.