| Workspace tenancyHarbor: apps/api schema. Runlayer: runlayer.com | Harbor's pick: Harbor.Workspace is the top-level isolation primitiveevery plugin connection, OAuth grant, run, and trace is bound to a workspace_id | Not publicly disclosedverify Runlayer’s current account / project / tenant model on runlayer.com docs before quoting |
|---|
| MCP server hosting modelHarbor: CLAUDE.md "MCP Mental Model". Runlayer: runlayer.com | Harbor's pick: tie.Consumes third-party MCP servers; exposes a protected Harbor MCP endpointmcp.tryharbor.ai/mcp advertises protected-resource metadata; Harbor also installs third-party MCP servers as plugins | Harbor's pick: tie.Positioned explicitly as an MCP control planeRunlayer markets a hosted MCP surface; confirm the exact set of supported modes (consume / proxy / expose) on runlayer.com |
|---|
| Integration / plugin countHarbor: registry catalog (build-time). Runlayer: runlayer.com | 149 registry entries / 135 unique provider familiesderived at build time from packages/sdk/registry-catalog/data/v1/catalog.json | Not publicly disclosedverify whether Runlayer publishes a public connector / tool count on runlayer.com before quoting a number |
|---|
| Deployment modelHarbor: apps/api Cloudflare Workers deploy. Runlayer: runlayer.com | Hosted onlymanaged tryharbor.ai; first-party self-host is on the Enterprise roadmap | Not publicly disclosedverify whether Runlayer offers self-host or hosted-only on runlayer.com |
|---|
| Runtime substrateHarbor: apps/api/wrangler.jsonc. Runlayer: runlayer.com | Harbor's pick: Harbor.Cloudflare Workers + D1 + KV + R2 + Vectorize + Workflows + Durable Objectsapps/api on Workers; runs persisted to D1; credential state is KV-backed | Not publicly disclosedRunlayer runs a managed cloud product; the underlying substrate is not stated on runlayer.com |
|---|
| OAuth modelHarbor: apps/api/src/plugins/oauth/. Runlayer: runlayer.com | Workspace-scoped grants and policy checksauthorization above the provider consent screen; tokens bound to workspace_id, not user profile | MCP-security-shaped grantsRunlayer markets MCP-security depth (Dynamic Client Registration, OWASP MCP Top 10, OAuth CIMD); confirm the per-tool / per-server granularity on runlayer.com |
|---|
| OSS licenseHarbor: github.com/zonko-ai. Runlayer: runlayer.com + github.com | SDK public on github.com/zonko-ai/harbor-sdkcontrol plane closed source | Not publicly disclosedcheck github.com for a public Runlayer org / repos before classifying OSS posture |
|---|
| Pricing modelHarbor: tryharbor.ai/. Runlayer: runlayer.com | Free + Workspace + Enterprise tiersWorkspace tier usage-based units not yet priced publicly | Not publicly disclosedverify whether Runlayer publishes self-serve pricing or contact-sales only on runlayer.com |
|---|
| Observability surfaceHarbor: apps/api/src/plugins/worker/. Runlayer: runlayer.com | Harbor's pick: Harbor.Runs + spans + workspace-scoped history, persisted to D1exec paths create runs with spans for query and inspection | Not publicly disclosed as a first-class product objectverify whether Runlayer surfaces runs / traces as a product object on runlayer.com |
|---|
| Identity & inbound authHarbor: WorkOS dashboard + apps/api auth routes. Runlayer: runlayer.com | Harbor's pick: tie.WorkOS / AuthKit for web sign-in; protected metadata for inbound MCPSAML / OIDC / SCIM available via WorkOS on Enterprise | Harbor's pick: tie.OAuth 2.1 + DCR for inbound MCP (per marketing)Runlayer markets Dynamic Client Registration and OAuth CIMD for MCP; confirm SAML / OIDC / SCIM dashboard auth and tier availability on runlayer.com |
|---|
| Sandbox / execution isolationHarbor: apps/api/src/plugins/worker/. Runlayer: runlayer.com | Harbor's pick: Harbor.Cloudflare codemode Worker isolate, separate from the Harbor API Workerprovider tokens are never exposed to executing code; credentials are dispatched host-side | Not publicly disclosedverify Runlayer’s isolation model and token-exposure behaviour on runlayer.com |
|---|
| Durable workflow supportHarbor: harbor-workflows skill. Runlayer: runlayer.com | Harbor's pick: Harbor.step.do / step.sleep / step.waitForEvent via hrbr exec → Cloudflare Workflowsauto-routed to the Workflows lane when hrbr exec uses step.*; survives the 30s synchronous cap | Not publicly disclosedverify durable-execution primitives on runlayer.com |
|---|
| Public docsHarbor: docs.tryharbor.ai. Runlayer: runlayer.com | Harbor's pick: Harbor.docs.tryharbor.ai with concept docs, guides, recipes; llms.txt publishedllms.txt is live; verify any expanded LLM docs when they ship | runlayer.com with marketing + MCP-security contentrecord docs subdomain (if any) and llms.txt presence at edit time |
|---|