MCP Servers
Wink’s MCP tools are published as toolsets — focused endpoints, each covering one job. You connect your AI client to the one or two that match your work, not to all of them.
Every endpoint uses interactive OAuth2 login (PKCE authorization code flow): your AI agent opens a browser tab, you sign in with your Wink account, and that is it. No client secrets to manage.
claude mcp add wink-channel-manager https://integrations.wink.travel/mcp/channel-manager --transport httpclaude mcp add wink-rates https://api.wink.travel/mcp/extranet/rates --transport httpWhy the tools are split across endpoints
Section titled “Why the tools are split across endpoints”Wink exposes around 500 tools. Handing all of them to an agent at once is technically possible — and a bad idea.
Tool definitions cost context. Every tool an MCP server advertises is loaded into the model’s context window before it does any work, along with its description and full parameter schema. Five hundred of those consume a large share of the budget your actual task needs, on every single request.
Choice quality falls as the list grows. An agent picking from 500 similarly-named tools makes worse choices than one picking from 40. If you integrate a channel manager, roughly twenty tools are relevant to you; the other 480 are noise that makes the right tool harder to find.
The work is genuinely separable. Someone syncing availability from a PMS and someone curating affiliate landing pages share almost no tools. Splitting by job means each connection carries the vocabulary of one job.
Endpoint directory
Section titled “Endpoint directory”Two hosts serve toolsets. Tool counts are approximate and grow over time.
https://api.wink.travel — the platform
Section titled “https://api.wink.travel — the platform”| Endpoint | Tools | What it covers |
|---|---|---|
/mcp/extranet/facilities | ~64 | The bookable and on-site inventory: guest rooms and room types, spas, restaurants, meeting rooms, activities, attractions, places, other sellable items |
/mcp/extranet/property | ~62 | The property record and its commercial terms: profile and content, add-ons, cancellation policies, perks, announcements |
/mcp/settings | ~60 | Account administration: managing-entity profile and branding, managers and their grants, customization, webhooks, notification preferences |
/mcp/studio/embeds | ~48 | Publishing curated inventory: widgets, grids and ranked grids, cards, maps, deep links to inventory and supplier pages |
/mcp/extranet/rates | ~44 | Prices and availability: inventory rate periods and allotments, rate plans, master rates, special and promotional rates |
/mcp/extranet/operations | ~39 | Running a live property: reservations and their lifecycle, guest reviews and responses, calendar feeds, scheduled tasks |
/mcp/extranet/distribution | ~37 | Where inventory is sold: sales channels and rate modifiers, affiliate and supplier relationship requests, registration, lead capture |
/mcp/studio/curation | ~35 | Building merchandisable collections: static and dynamic lists, ranked lists, saved searches, property aggregates |
/mcp/link-manager | ~28 | Syndicated link collections, their design, categories and tags, plus shortened URLs |
/mcp/reference | ~24 | Read-only lookup data: countries, currencies and exchange rates, languages, timezones, geo lookups, IP geolocation |
/mcp/analytics | ~18 | Booking and revenue analytics: overviews, line charts, leaderboards, affiliate performance, share metrics |
/mcp/payment | ~18 | Financial operations: the ledger, withdrawals and fee estimates, booking funds aggregates |
/mcp/booking-engine | ~17 | The traveller-facing shopping path: search and lookup, shopping cart and checkout, bucket lists, campaign customization |
/mcp/social | ~17 | Connected social accounts, publishing and scheduling posts, reading post insights |
/mcp/travel-agent | ~8 | Agent-facilitated bookings on behalf of travellers, and agent reports |
https://integrations.wink.travel — channel manager integrations
Section titled “https://integrations.wink.travel — channel manager integrations”One endpoint, because this host exists for one job.
| Endpoint | Tools | What it covers |
|---|---|---|
/mcp/channel-manager | ~9 | Connecting and verifying a channel manager, PMS or CRS integration |
Every endpoint also carries a ping tool, so you can confirm a connection is live before asking it to do real work.
Which toolsets do I need?
Section titled “Which toolsets do I need?”| If you are… | Connect to |
|---|---|
| Integrating a channel manager, PMS or CRS | integrations.wink.travel/mcp/channel-manager — just this one |
| Managing a property’s content | /mcp/extranet/property + /mcp/extranet/facilities |
| Managing rooms and room types | /mcp/extranet/facilities |
| Managing prices and availability | /mcp/extranet/rates |
| Running day-to-day reservations | /mcp/extranet/operations |
| Growing distribution | /mcp/extranet/distribution + /mcp/analytics |
| Building affiliate pages | /mcp/studio/curation + /mcp/studio/embeds |
| Running link-in-bio pages | /mcp/link-manager + /mcp/social |
| Booking on behalf of travellers | /mcp/travel-agent |
| Reconciling money | /mcp/payment |
| Building a booking experience | /mcp/booking-engine + /mcp/reference |
Start with one. Add another when you find yourself asking for something it cannot do — each connection is independent, and adding one never affects the others.
How authentication works
Section titled “How authentication works”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:
- Your AI client discovers the authorization server from the MCP endpoint’s
/.well-known/oauth-protected-resourcemetadata. - The client self-registers via Dynamic Client Registration — no manual application setup required.
- 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. - Wink issues an access token scoped to your account and linked to your identity.
- The AI client attaches the token to every MCP request. All tool results are automatically scoped to your managing entity.
- 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.
Connect your AI client
Section titled “Connect your AI client”-
Make sure Claude Code is up to date:
Terminal window npm install -g @anthropic-ai/claude-code -
Pick a toolset from the directory above and add it. For example, prices and availability:
Terminal window claude mcp add wink-rates https://api.wink.travel/mcp/extranet/rates --transport http -
Claude Code contacts the server, discovers the authorization server, and opens your default browser.
-
Sign in to Wink and approve the permission request on the consent screen.
-
Claude Code confirms the connection. Type
/mcpto verify the server appears and its tools have loaded.
Add as many toolsets as your work needs — each is a separate server entry with its own name:
claude mcp add wink-operations https://api.wink.travel/mcp/extranet/operations --transport httpclaude mcp add wink-analytics https://api.wink.travel/mcp/analytics --transport httpYou only sign in once. After the first browser approval, Claude Code reuses your Wink session for additional Wink endpoints.
-
Edit the Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Add the MCP server entries:
claude_desktop_config.json {"mcpServers": {"wink-extranet-rates": {"type": "http","url": "https://api.wink.travel/mcp/extranet/rates"},"wink-extranet-operations": {"type": "http","url": "https://api.wink.travel/mcp/extranet/operations"}}} -
Fully quit and restart Claude Desktop (use Quit from the menu bar — closing the window is not enough).
-
Claude Desktop opens a browser tab for each new server. Sign in to Wink and approve permissions.
-
The plug icon in the bottom toolbar shows both servers as connected.
-
Make sure Codex CLI is installed:
Terminal window npm install -g @openai/codex -
Open (or create) the Codex config file:
- macOS / Linux:
~/.codex/config.json - Windows:
%USERPROFILE%\.codex\config.json
- macOS / Linux:
-
Add the Wink MCP server entries:
~/.codex/config.json {"mcpServers": {"wink-extranet-rates": {"type": "http","url": "https://api.wink.travel/mcp/extranet/rates"},"wink-extranet-operations": {"type": "http","url": "https://api.wink.travel/mcp/extranet/operations"}}} -
Start Codex. On first use, Codex opens a browser tab to
https://iam.wink.travel. -
Sign in to Wink and approve the requested permissions.
-
Codex confirms the connection. Run
codexand ask it to list available tools to verify the Wink servers are active.
MCP server support is available in the ChatGPT desktop app for Plus, Pro, Team, and Enterprise subscribers.
-
Download and install the ChatGPT desktop app if you haven’t already.
-
Open the app and click your profile icon in the top-right corner, then choose Settings.
-
Go to Connectors (or MCP Servers depending on your app version) and click Add.
-
Enter the URL of a toolset from the directory above, for example:
https://api.wink.travel/mcp/extranet/ratesThen click Connect.
-
ChatGPT opens a browser tab to
https://iam.wink.travel. Sign in to Wink and approve permissions. -
Repeat steps 4–5 for any other toolset your work needs, for example:
https://api.wink.travel/mcp/extranet/operations -
Each toolset appears in your Connectors list. Start a new chat — Wink tools are available automatically.
-
Open (or create) the Cursor MCP config file:
- macOS / Linux:
~/.cursor/mcp.json - Windows:
%USERPROFILE%\.cursor\mcp.json
- macOS / Linux:
-
Add the Wink MCP server entries:
~/.cursor/mcp.json {"mcpServers": {"wink-extranet-rates": {"type": "http","url": "https://api.wink.travel/mcp/extranet/rates"},"wink-extranet-operations": {"type": "http","url": "https://api.wink.travel/mcp/extranet/operations"}}} -
Open Cursor. Go to Settings → Cursor Settings → MCP and confirm both servers appear with a green status indicator. If they show red, click Refresh.
-
Cursor opens a browser tab to
https://iam.wink.travel. Sign in to Wink and approve permissions. -
Open a chat (
Ctrl+L/Cmd+L) and ask Cursor to list available Wink tools to confirm the connection.
-
Open (or create) the Windsurf MCP config file:
- macOS / Linux:
~/.codeium/windsurf/mcp_config.json - Windows:
%USERPROFILE%\.codeium\windsurf\mcp_config.json
- macOS / Linux:
-
Add the Wink MCP server entries:
~/.codeium/windsurf/mcp_config.json {"mcpServers": {"wink-extranet-rates": {"type": "http","url": "https://api.wink.travel/mcp/extranet/rates"},"wink-extranet-operations": {"type": "http","url": "https://api.wink.travel/mcp/extranet/operations"}}} -
Fully restart Windsurf (File → Quit, then reopen).
-
Go to Settings → MCP Servers and verify both servers show as connected. Windsurf opens a browser tab to
https://iam.wink.travelon first use. -
Sign in to Wink and approve permissions. The servers turn green in the settings panel once authenticated.
Cline is a VS Code extension with a built-in MCP server manager. No manual JSON editing is required.
-
Install Cline from the VS Code Marketplace:
- Open VS Code and press
Ctrl+Shift+X/Cmd+Shift+X - Search for Cline and click Install
- Open VS Code and press
-
Click the Cline icon in the Activity Bar (left sidebar) to open the Cline panel.
-
Click the MCP Servers icon (plug icon) in the Cline toolbar, then choose Edit MCP Settings.
-
VS Code opens
cline_mcp_settings.json. Add the Wink entries:cline_mcp_settings.json {"mcpServers": {"wink-extranet-rates": {"type": "http","url": "https://api.wink.travel/mcp/extranet/rates"},"wink-extranet-operations": {"type": "http","url": "https://api.wink.travel/mcp/extranet/operations"}}} -
Save the file. Cline reloads automatically and opens a browser tab to
https://iam.wink.travel. -
Sign in to Wink and approve permissions. Both servers appear as active in the MCP Servers panel.
Scopes
Section titled “Scopes”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.readmcp.writemcp.removescopes are additionally required to open the MCP transport. A client that holds anmcp.*scope is admitted to any Wink MCP endpoint, 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.
Toolsets do not change any of this. The endpoint you connect to decides which tools are listed,
not what they are allowed to do. Connecting to /mcp/payment grants no financial permission you
did not already have, and connecting to /mcp/reference does not stop a tool there from enforcing
its own scope. Authorization is decided per tool call, from your token and your account’s grants.
Troubleshooting
Section titled “Troubleshooting”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:
# Claude Codeclaude mcp remove wink-ratesclaude mcp add wink-rates https://api.wink.travel/mcp/extranet/rates --transport httpFor 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, or a permission your account does not hold. Reconnect the server — the consent screen will appear again and you can approve the missing permission. If it still fails, the tool needs an account permission you do not have; connecting to a different toolset will not help, because toolsets do not grant permissions.
The tool I need isn’t in the list
You are probably connected to a toolset that does not cover that job. Check the endpoint directory and add the toolset that does — connections are independent, so adding one changes nothing about the others. If you are unsure which one has it, connect to https://api.wink.travel/mcp temporarily, find the tool, then look up which toolset lists it.
404 Not Found on a toolset endpoint
Check the path carefully — the nested toolsets have two segments (/mcp/extranet/rates, not /mcp/extranet-rates), and the flat ones have one (/mcp/link-manager). Note that an unauthenticated request to any path under /mcp returns 401, not 404, so a 401 alone does not tell you whether the endpoint exists.
I connected to api.wink.travel/mcp/channel-manager and got nothing
That endpoint does not exist. Channel manager integration is served from https://integrations.wink.travel/mcp/channel-manager only. If you also need to read or write a property’s own rates by hand, that is a separate job on a separate endpoint — see /mcp/extranet/rates.
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
