---
title: "Approve or cancel MCP OAuth authorization from traxy."
method: POST
path: "/mcp/oauth/authorize/complete"
tags: ["MCP OAuth"]
---

# Approve or cancel MCP OAuth authorization from traxy.

`POST /mcp/oauth/authorize/complete`

Any active workspace member can approve a request containing only non-sensitive read scopes. The default OAuth grant includes saved contact and profile access, which requires an owner or admin. Scopes that can change workspace data or spend credits also require an owner or admin. Cancellation returns a clean access_denied callback without requiring admin access.

## Request body

- union
  - object
    - `requestToken` string, required
    - `organizationId` string, uuid, required
    - `approved` true, required
  - object
    - `requestToken` string, required
    - `organizationId` string, uuid
    - `approved` false, required

## Response `200`

Redirect URL for the MCP client callback.

- McpOAuthAuthorizeCompleteResponse
  - `redirectUrl` string, uri, required — Client callback URL. Do not log or send to analytics because it may contain an authorization code.

## Other responses

- `401` — Invalid, expired, or revoked API key.
- `403` — Key or OAuth grant lacks the required scope.

---

[API](https://skmtc.net/windmill-growth/apis/traxy-customer-api-and-mcp-v1.md) · [All operations](https://skmtc.net/windmill-growth/apis/traxy-customer-api-and-mcp-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/windmill-growth/traxy-customer-api-and-mcp-v1/revisions/5ea23c14f8cf/schema)
