Skip to content

MCP Servers

Wink exposes two authenticated MCP servers. Both use interactive OAuth2 login (PKCE authorization code flow) — your AI agent opens a browser tab so you sign in with your Wink account. No client secrets to manage.

ServerURLWhat it does
Inventory APIhttps://api.wink.travel/mcpInventory, bookings, rates, sales channels, analytics, and all platform operations
Integrationshttps://integrations.wink.travel/mcpChannel manager integrations — sync properties, rates, and availability with OTAs

Wink MCP servers use the OAuth2 Authorization Code + PKCE flow and support Dynamic Client Registration (RFC 7591). Here is what happens when you connect for the first time:

  1. Your AI client discovers the authorization server from the MCP endpoint’s /.well-known/oauth-protected-resource metadata.
  2. The client self-registers via Dynamic Client Registration — no manual application setup required.
  3. The client opens a browser tab to https://iam.wink.travel. You sign in with your Wink account and approve the requested permissions on the consent screen.
  4. Wink issues an access token scoped to your account and linked to your identity.
  5. The AI client attaches the token to every MCP request. All tool results are automatically scoped to your managing entity.
  6. Tokens expire after 3 hours. Your AI client refreshes silently in the background without prompting again.

Every tool call runs under your identity — the same ACL rules that protect the web portal apply to the AI agent.


  1. Make sure Claude Code is up to date:

    Terminal window
    npm install -g @anthropic-ai/claude-code
  2. Add the Wink Inventory MCP server:

    Terminal window
    claude mcp add wink-inventory https://api.wink.travel/mcp --transport http
  3. Claude Code contacts the server, discovers the authorization server, and opens your default browser.

  4. Sign in to Wink and approve the permission request on the consent screen.

  5. Claude Code confirms the connection. Type /mcp to verify the server appears and its tools have loaded.

To add the Integrations server as well:

Terminal window
claude mcp add wink-integrations https://integrations.wink.travel/mcp --transport http

When you approve the consent screen you will see a breakdown of what the agent is requesting. MCP clients use the same permission vocabulary as the rest of the platform — see the full scope reference on the Authentication page.

Two things are specific to MCP:

  • The mcp.read mcp.write mcp.remove scopes are additionally required to open the MCP transport. A client that holds an mcp.* scope is admitted to /mcp, but every tool it invokes still enforces the section scope of the endpoint it wraps (e.g. booking.read).
  • The AI client requests only the scopes it needs. You can deny individual permissions on the consent screen — tools that require a denied scope will return an error when invoked.

Browser tab doesn’t open

Your AI client may not support the interactive PKCE flow yet. Verify you are running a recent version:

  • Claude Code: npm install -g @anthropic-ai/claude-code
  • Codex CLI: npm install -g @openai/codex
  • Claude Desktop / ChatGPT desktop: update from the app’s built-in updater

401 Unauthorized after signing in

Your cached token may be stale. Remove and re-add the server to trigger a fresh sign-in:

Terminal window
# Claude Code
claude mcp remove wink-inventory
claude mcp add wink-inventory https://api.wink.travel/mcp --transport http

For Claude Desktop and ChatGPT, remove the server entry from settings, restart the app, and add it again.

403 Forbidden when calling a specific tool

The tool requires a scope you did not approve on the consent screen. Reconnect the server — the consent screen will appear again and you can approve the missing permission.

The server appears but tool calls return “account not found”

You are signed in to a Wink account that has no managing entity. Go to Wink Portal and ensure your account is set up before using the MCP server.

Token expires mid-session

Tokens are valid for 3 hours. Claude Code and Claude Desktop refresh tokens silently without interrupting your session. If you see auth errors after a long idle period, type a new message — the client will re-authenticate automatically.

Codex CLI shows “MCP server unreachable”

Check that your ~/.codex/config.json is valid JSON (no trailing commas) and that "type": "http" is set. Codex requires HTTP transport for remote servers; stdio transport is for local binaries only.

ChatGPT “Connectors” menu is missing

MCP support requires ChatGPT desktop app version 1.2024.352 or later and an active Plus, Pro, Team, or Enterprise subscription. Update the app and verify your plan in Settings → Account.

Cursor server shows red / “Failed to connect”

Verify your ~/.cursor/mcp.json is valid JSON and contains "type": "http". Then go to Settings → Cursor Settings → MCP and click Refresh. If the error persists, fully restart Cursor — config changes are not always picked up without a restart.

Windsurf MCP servers not listed in settings

Windsurf requires a full restart (not just a window reload) to pick up changes to mcp_config.json. Use File → Quit and relaunch. If servers still don’t appear, confirm you are on Windsurf 1.4+ via Help → About Windsurf.

Cline “Add Server” option is not visible

The MCP server manager requires Cline 2.0 or later. Open the VS Code Extensions panel, find Cline, and click Update if an update is available. After updating, reload VS Code (Ctrl+Shift+P → “Developer: Reload Window”).


Open Wink Portal Wink on GitHub