One endpoint. Every connected tool.

Point an MCP-compatible agent at one stateless Streamable HTTP endpoint. Controller keeps the upstream catalog behind a compact execution surface and loads schemas only when they are needed.

The gateway contract

Agents see three gateway tools. The connected integrations remain behind Controller and share one invocation model.

Gateway toolJobReturns
skillsInspect the connected catalog and schemasSearchable tool metadata
executeRun isolated TypeScript with lazy tool callsProgram result or approval checkpoint
resumeContinue an approved checkpointContinued program result

Search before you load

Code mode searches first, describes only the selected operation, and invokes it through a stable dotted path. A large upstream schema never needs to occupy the agent's initial context.

  • * Search across source protocols with one query
  • * Load an input schema only when the program needs it
  • * Carry normalized safety metadata into policy
  • * Keep dots inside address segments reversible
const { items } = await tools.search({
  query: "find a customer"
})

const path = items[0]?.path
const schema = await tools.describe.tool({ path })
const result = await tools[path]({ id: "cus_123" })

return { schema, result }

One contract, two catalog scopes

/orgs/:organizationId/mcp exposes every connection in the workspace. It is the broad surface for general agents and operator-owned workflows.

  • * Complete connected catalog
  • * Stateless Streamable HTTP
  • * Policy still decides every invocation