---
title: "Approve an MCP connection request"
method: POST
path: "/v1/mcp-oauth/consent/approve"
tags: ["mcp-oauth"]
---

# Approve an MCP connection request

`POST /v1/mcp-oauth/consent/approve`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/mcp-oauth/consent/approve`
- Auth: HTTP bearer

Approve a pending MCP connection request and return where to send the browser next.

## Headers

- `X-Tenant-Id` string, nullable

## Request body

- McpConsentDecisionBody: The parked-request handle, posted by the consent screen.
  - `request` string, required

## Response `200`

Successful Response

- McpConsentDecision: Where the dashboard must send the browser next.
  - `status` 'approved' | 'denied' | 'gone', required: What a decision call did.
  - `redirect_to` string, nullable

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden. Inspect response body `code` for the specific reason (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED, TENANT_ACCESS_REQUIRED, ROLE_UNRESOLVED)
- `409`: Conflict
- `422`: Validation error

---

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