Docs · Platform MCP

The Qoren platform MCP.

Every agent Qoren deploys is handed one extra tool server: Qoren itself. Through it an agent can look at itself, message the agents beside it, operate your fleet, and read your account usage. Nothing beyond reading itself is on until you switch it on, and the environment an agent runs on sets the maximum it can ever be given.

What it is

The platform MCP is a hosted Model Context Protocol server run by Qoren, not a package installed on your environment. Your agent connects to it over HTTPS with a token that belongs to that one agent, and the tools it sees are exactly the tools you allowed. It is the same server for every runtime, so an OpenClaw agent, a Hermes agent, a Codex agent and a Claude Code agent all reach it the same way.

  • The server is remote and stateless: every call re-reads your current access policy, so a switch you flip takes effect on the agent's next call.
  • Listing is filtered per agent. A tool you did not allow is not merely refused, it is not offered, so the agent never plans around a capability it does not have.
  • Secret values are never exposed. Tools that touch configuration return the NAMES of injected secrets and nothing else.

How the agent gets its token

Qoren mints a token per agent and writes it into that agent's environment file at setup, and again on every reprovision and move. The MCP entry is written into the agent's runtime configuration at the same time, referencing the token by variable rather than inlining it, so the credential never lands in a config file you would read or share.

  1. 1Deploy or reprovision the agentThe control plane mints a fresh token, stores only its hash, and writes the value into the agent's .env alongside the MCP server entry.
  2. 2The runtime connects at startupEach supported runtime renders the same entry in its own format and sends the token as a bearer credential with the agent's id.
  3. 3Rotate whenever you wantRotate platform token on the agent's page mints a new one and rewrites the file through a configure job. The previous token stops working immediately.

The five capability groups

Access is set by group for speed and by tool for precision. A group switch turns its whole set on; switching one tool off inside an on group leaves the rest alone. Groups are the same everywhere: on an environment, on a single agent, and as the default carried by a template.

  • Itself. Always on and never switchable. The agent can read its own identity, environment, configuration, logs and telemetry, and post a status line the console shows.
  • Teammates. Discover the other agents on the same environment and send them messages.
  • Mail. Adds no Qoren tools. Switching it on attaches the agent's own mailbox server so it can read and send its email.
  • Fleet. Inspect and operate your environments, agents, jobs and templates. The destructive half asks a human first.
  • Account. Read usage, spending and plan entitlements. No billing details, no payment data.

The environment is the ceiling

Two switches decide every call. The environment says what the agents standing on it may ever do; the agent's own policy can only narrow that. If Fleet is off on the environment, switching it on for one agent there changes nothing, and the console shows those tools as disabled by the environment rather than pretending they are available.

  • Environment policy is authoritative once set, so widening an agent past it is not possible from any surface.
  • A template carries a default policy, not a ceiling. It decides what a new agent starts with; the environment still decides the maximum.
  • An agent that creates another agent cannot choose its access. The new agent gets the template default, or reading itself only.
  • Agents can never read or change an access policy, their own included.

Approvals, audit and rate limits

Anything that destroys or rebuilds goes to a person. When an agent calls one of those tools, the call is parked in the same approval queue your agents already use for risky actions, and the tool returns a pending result instead of acting. A human approves or refuses; approval runs the action under the approver, and an untouched request expires after 24 hours.

  • Every write is recorded in the account log with the actor type agent and the agent's id. Reads are not recorded.
  • Each agent gets 60 platform calls per minute. Past that the server refuses further calls until the window rolls over.
  • Plan limits apply to anything an agent creates, exactly as they do when you create it yourself, and are re-checked when an approved action finally runs.

Every tool, by group

The full set the platform MCP can offer. Write marks a tool that changes something and is recorded in your account log; Asks a human marks one that is parked for approval instead of running.

ToolGroupWhat it doesWriteAsks a human
self_whoamiItselfReturn this agent's name, runtime, model, template and current state.NoNo
self_environmentItselfReturn the environment it runs on: size, region, status and the peers on it.NoNo
self_configItselfReturn its configuration: tasks, MCP servers, gateways and the names of injected secrets.NoNo
self_logsItselfRead a slice of its own recent runtime log output.NoNo
self_telemetryItselfRead its own recent activity and resource telemetry.NoNo
self_report_statusItselfPost a short status line, and optional progress, that the console shows.YesNo
list_teammatesTeammatesList the other agents on this environment that can be messaged.NoNo
send_to_teammateTeammatesSend a message to another agent on the same environment.YesNo
fleet_list_environmentsFleetList the account's environments with size, region and status.NoNo
fleet_get_environmentFleetRead one environment in detail, including the agents on it.NoNo
fleet_list_agentsFleetList the account's agents across every environment.NoNo
fleet_get_agentFleetRead one agent in detail: runtime, model, template, state and configuration.NoNo
fleet_list_jobsFleetList recent control plane jobs and their status.NoNo
fleet_get_jobFleetRead one job in detail, including its events and any failure reason.NoNo
fleet_list_secret_namesFleetList the names of the account's vault secrets. Values are never returned.NoNo
fleet_list_templatesFleetList the account's agent templates.NoNo
fleet_get_templateFleetRead one agent template in detail.NoNo
fleet_create_environmentFleetProvision a new environment on the account's plan.YesNo
fleet_create_agentFleetDeploy a new agent from a template onto an environment.YesNo
fleet_configure_agentFleetChange another agent's configuration, such as its model or scheduled tasks.YesNo
fleet_message_agentFleetSend a message to any agent on the account, not just peers on this environment.YesNo
fleet_cancel_jobFleetCancel a queued or running control plane job.YesNo
fleet_destroy_environmentFleetTear down an environment and everything on it.YesYes
fleet_destroy_agentFleetRemove an agent from its environment.YesYes
fleet_resize_environmentFleetMove an environment to a different size, which reboots it.YesYes
fleet_reprovision_agentFleetRebuild an agent from its template on the same environment.YesYes
fleet_move_agentFleetMove an agent to a different environment.YesYes
account_usageAccountRead the account's usage for the current period.NoNo
account_spendingAccountRead the account's recorded spending for the current period.NoNo
account_entitlementsAccountRead what the plan allows, such as environment and agent limits.NoNo

Frequently asked questions

Read itself, and nothing more. Teammates, Mail, Fleet and Account are all off until you switch them on, either on the environment or through the template the agent was deployed from.

Keep reading

See it with a real agent.

The fastest way to understand the flow is to deploy a template and watch its first run.

Start free trial