{"service":"abtests-vendor-control-plane","api_version":"1","release":{"environment":"production","version":"0.3.0","commit":"006a031be3e608dda8505e1d1b57e2642440ff78","release_sha":"006a031be3e608dda8505e1d1b57e2642440ff78","deployed_at":"2026-09-26T15:22:36.358096+00:00","persistence_environment":"production","persistence_configured":true},"links":{"openapi":"https://abtests.dev/api/v1/openapi.json","version":"https://abtests.dev/api/v1/version","mcp":"https://abtests.dev/mcp","projects":"https://abtests.dev/api/v1/projects","workflows":"https://abtests.dev/api/v1/workflows","workflow_runs":"https://abtests.dev/api/v1/workflow-runs"},"authentication":{"tenant_source":"verified_identity_or_persisted_token","device_flow":"/api/v1/device/start","bearer_kinds":["clerk_session","abdev_device"],"runtime_bearer_kind":"abrt_runtime","mcp_requires_scope":"manage","oauth_discovery":false},"workflows":["personal_projects","vendor_inventory","login_references","implementation_checklists","bounded_agent_runs","private_run_evidence","human_handoffs","chatgpt_subscription_connection","operator_assisted_setup_workflows"],"mcp":{"transport":"streamable_http","stateless":true,"protocol_versions":["2026-07-28","2025-11-25","2025-06-18","2025-03-26","2024-11-05","2024-10-07"],"image_access":"explicit_runs_read_image","tool_clusters":{"project_providers":["project_provider_status","project_provider_connect","project_provider_provision","project_provider_disconnect"],"projects":["projects_list","projects_get","projects_create","projects_update"],"workflows":["workflows_list","workflows_get","workflows_start"],"workflow_runs":["workflow_runs_list","workflow_runs_get","workflow_steps_record","workflow_runs_cancel"],"vendors":["vendors_list","vendors_get","vendors_create","vendors_update"],"runs":["runs_list","runs_get","runs_start","runs_cancel","runs_read_image"],"handoffs":["handoffs_list","handoffs_resolve"],"model_auth":["model_auth_status","model_auth_start","model_auth_logout"]}},"personal_projects":{"endpoint":"/api/v1/projects","ownership":"verified_individual_user","organization_independent":true,"creation_provisions_infrastructure":false,"initial_infrastructure_status":"not_connected","executor_status":"unassigned","providers":{"stripe_projects":{"optional":true,"ownership":"customer_owned","runtime":"modal","endpoint":"/api/v1/projects/{id}/providers/stripe-projects","operations":["status","connect","provision","disconnect"],"authorization":"user_completes_official_stripe_cli_approval","provisioning":"empty_project_only","services":false,"purchases":false,"verification":"provider_receipt_with_external_project_id_and_verified_at","uncertain_mutation":"read_status_before_retry","disconnect_deletes_resources":false}}},"setup_workflows":{"catalog":"/api/v1/workflows","runs":"/api/v1/workflow-runs","policy":{"version":"1","preferred_interfaces":["api","cli","mcp"],"principle":"Use supported API, CLI or MCP access for ongoing work. Use computer use to establish the accounts, credentials, permissions and integrations that enable those interfaces.","browser_scope":"Bootstrap missing access or provider setup without a supported programmatic interface; return to API, CLI or MCP when ready.","browser_execution":"modal","bootstrap_execution":"operator_assisted","automated_browser_writes_available":false,"runtime_note":"The deployed Modal inspector is read-only. Provisioning steps currently require an operator; creating a workflow run does not dispatch a write-capable browser agent.","credentials":"Store private credential references only. Keep passwords, OAuth secrets, cookies and tokens out of workflow inputs, notes, screenshots and model context.","verification":"Recorded steps are operator reports. A new run does not inherit verification from the recipe, and marking steps recorded does not establish external access.","purchase_allowed":false},"externally_verified":false},"model_auth":{"provider":"chatgpt","runtime":"modal","configured":true,"status":"/api/v1/model-auth","start":"/api/v1/model-auth/start","logout":"/api/v1/model-auth/logout","verification":"user_completes_official_device_flow","subscription_limits_apply":true,"model_availability_verified_by_run":true},"limits":{"projects_per_user":100,"project_creates_per_hour":30,"workflow_runs_per_tenant":1000,"active_workflow_runs_per_tenant":50,"workflow_creates_per_hour":30,"workflow_updates_per_hour":300,"vendors_per_tenant":1000,"active_runs_per_tenant":25,"run_history_page":200,"request_bytes":262144,"screenshot_encoded_characters":240000},"policy":{"model":"gpt-6-astra","reasoning_effort":"low","purchases":false,"outreach":false,"arbitrary_commands":false,"raw_credentials":false,"authenticated_implementation_requires_evidence":true}}