Configure identity
Create a Runlayer Agent Account for code-first and autonomous agents. Use an token for autonomous work. When an agent acts for a user, map the authenticated caller to a Runlayer user with an active delegation and mint an token. Interactive platform integrations may establish the Runlayer user directly through OAuth instead. A vendor identity, service account, or user token does not automatically become a Runlayer identity. Perform that mapping in the application unless Runlayer recognizes the user token directly.Connect tools
Configure the runtime’s remote Streamable HTTP MCP client with the Runlayer Plugin endpoint or an individual connector endpoint. Pass the short-lived token asAuthorization: Bearer <token>.
Prefer an individual connector endpoint plus
resource-scoped tokens
for narrowly privileged agents. Use Runlayer Plugin when the agent needs a
broader, policy-filtered connector catalog. Resource-scoped tokens cannot be
used with aggregate or plugin endpoints.
Apply policies
Grant each Runlayer principal access to only the required connectors and tools with access rules. Calls through Runlayer MCP inherit those policies plus ToolGuard scanning, approval rules, and audit logging. For OBO calls, Runlayer applies the intersection of the agent’s and user’s access. Platform-native browser, shell, code, function, and direct HTTP tools do not cross Runlayer merely because the agent also uses Runlayer MCP. Disable overlapping capabilities, route them through MCP, or wrap them with Runlayer where supported.Monitor activity
Every proxied call appears in Runlayer Audit Logs. When the runtime supports custom headers, send its stable conversation or run identifier asx-runlayer-session-id; allowlist that header in any intermediary gateway. Add
a native Runlayer adapter or the Hooks SDK to capture
prompts, reasoning, responses, and tools that do not pass through MCP. Before
sending hook events, enable the matching client under Settings → Agent session
monitoring → Full session scanning APIs.
Compare platform coverage
Every platform can route MCP calls through Runlayer for identity, policy, ToolGuard, approvals, and Audit Logs. The table compares its connection and additional session options.
Runlayer MCP is the inline enforcement point in every row. A custom or native
session integration expands visibility; it does not make unwrapped vendor tools
pass through the gateway.
Platform guides
- AWS Bedrock AgentCore
- Claude Managed Agents
- Cloudflare Agents
- Google Vertex AI Agent Engine
- LangSmith Deployment / LangGraph
- Microsoft Foundry Agent Service
- OpenAI Agents
- Vercel Eve
Amazon Bedrock AgentCore
is a set of modular services. Harness provides a managed loop, Runtime hosts
custom agents, Gateway aggregates MCP targets, and Identity supplies
outbound credentials.
Configure identity
Create a Runlayer Agent Account. Keep its client credentials in AgentCore’s secret store and mint short-lived tokens at runtime. Use M2M for autonomous work or map the caller to a delegated Runlayer user for OBO access.AgentCore OBO requires bearer-JWT inbound authorization. Default SigV4 invocation does not carry end-user identity. For Gateway token exchange, configure the provider and target withTOKEN_EXCHANGE, set
actorTokenContent to M2M, and set
customParameters.subject_token_type to
urn:ietf:params:oauth:token-type:access_token. Without that override,
AgentCore labels the inbound JWT as urn:ietf:params:oauth:token-type:jwt,
which Runlayer rejects.Pass an inbound token directly only when Runlayer recognizes it and the
user has an active delegation. Otherwise map the caller to a Runlayer user
and exchange the token in application code.Connect tools
From Runtime, point the agent’s remote MCP client directly at the Runlayer endpoint. From managed Harness, prefer a Runlayer external MCP target behind AgentCore Gateway and Identity. Direct Harness MCP accepts request headers, but the caller must replace an expiring bearer itself.For Gateway, configure a custom OAuth provider and enter Runlayer’s token endpoint manually; AgentCore’s automatic discovery expects OIDC metadata. SelectDYNAMIC Gateway tool discovery when Runlayer tool visibility varies
by caller. DYNAMIC is incompatible with semantic search and outbound 3LO.Apply policies
If Gateway discovery is notDYNAMIC, call SynchronizeGatewayTargets
after connector or policy-driven tool-visibility changes. Runlayer still
evaluates every call at execution time.Use a Harness allowedTools allowlist and, where practical, a dedicated
Gateway whose only target is Runlayer. If other targets must remain, use
AgentCore Policy and IAM as complementary controls. Restrict direct remote
MCP, Browser, Code Interpreter, inline functions, shell, and
file_operations when they overlap with governed tools. allowedTools
does not constrain InvokeAgentRuntimeCommand; deny that IAM action when
direct Runtime commands would bypass Runlayer.Monitor activity
Every proxied call appears in Runlayer Audit Logs. In Runtime or another custom MCP client, send the stable AgentCore session or run ID asx-runlayer-session-id. When using Gateway, allowlist it in the target’s
metadataConfiguration.allowedRequestHeaders before setting it in the
client or interceptor.Managed Harness does not document injecting its runtimeSessionId into
Gateway MCP calls. Only claim session correlation when an
application-specific path obtains and injects a trustworthy ID.For deeper Runlayer Sessions, enable the matching
Hooks SDK session monitoring client,
then add the SDK to Runtime code and emit the lifecycle events you need.
There is no native Strands or managed Harness adapter. Exporting a Harness
agent to Strands and deploying it on Runtime makes custom instrumentation
possible; it does not add it automatically.Keep AgentCore observability and CloudWatch enabled for model, memory,
shell, and runtime activity that does not pass through Runlayer.