---
title: "Oauth Preflight"
method: GET
path: "/v1/workspaces/{workspace}/mcp-oauth/preflight"
tags: ["v1", "protected", "mcp-oauth-connect"]
---

# Oauth Preflight

`GET /v1/workspaces/{workspace}/mcp-oauth/preflight`

Report whether a connection can be authorized, and with what.

Takes an existing instance, or a catalog spec so the create page can ask
before it creates anything. Every outcome is a 200: "this server has no
OAuth" is an answer the UI renders, not a failure it has to decode.

## Path parameters

- `workspace` string, required — Slug of the workspace the request acts in

## Query parameters

- `instance_id` string, uuid, nullable — MCP instance to inspect
- `server_id` string, uuid, nullable — Catalog spec to inspect before any instance exists

## Response `200`

Successful Response

- MCPOAuthPreflightResponse — What the UI needs before it can offer a Connect action. ``ready`` — Connect can run unattended (the server supports DCR). ``oauth_app_required`` — ask for a client ID/secret first. ``unsupported`` — this server cannot be authorized this way; say why.
  - `authorization_endpoint` string, nullable
  - `connected` boolean, required
  - `detail` string
  - `instance_id` string, uuid, nullable
  - `issuer` string, nullable
  - `scopes` string[]
  - `server_id` string, uuid, nullable
  - `status` 'ready' | 'oauth_app_required' | 'unsupported', required

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-26** `d3ad8e1a3681` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/agentarea/apis/agentarea-api/changes/v1/workspaces/:workspace/mcp-oauth/preflight/get.md)

---

[API](https://skmtc.dev/agentarea/apis/agentarea-api.md) · [All operations](https://skmtc.dev/agentarea/apis/agentarea-api/llms.txt) · [OpenAPI document](https://skmtc.dev/agentarea/apis/agentarea-api/revisions/286327d8bd86?raw)
