Keyboard

Shortcuts

Global

?Show this listapp routes— Other screen
CtrlKSearchwherever the search panel mounts— Other screen
EscClose the top layer✓ Available here

Trip

15Open a tool by positionTrip page, design fixture— Other screen
Move along the railThe trip page rail— Other screen
nAdd an itemAdds a trip on the trips list— Other screen
uUpload a documentThe trips list— Other screen
aShow or hide archived tripsThe trips list— Other screen

Editing

CtrlBBoldWhile the cursor is in a note— Other screen
CtrlIItalicWhile the cursor is in a note— Other screen
Stub

Connect

Point the AI you already use at one server URL and ask about your own trips. Read-only unless you allow writes.

Let your AI set it up

Never added one of these before? Paste this to Claude, Codex, or ChatGPT. It reads the setup guide, then connects Stub itself if the app allows it, or tells you where to click if it does not.

Connect Stub to this app for me. Stub is a travel organizer that keeps my trips together and plugs into AI apps over MCP; the server URL is https://mcp.stub.travel/mcp and the setup steps for every app are at https://stub.travel/connect.txt. Read that first, then add the server yourself if this app lets you, or tell me exactly where to click if it doesn't. It signs in with the Miles account I already use for Stub, and it's read-only unless I grant writes.

Rather do it yourself? The server URL, the two commands, and the click-by-click paths are all below.

The server URL

https://mcp.stub.travel/mcp

Stub speaks MCP over streamable HTTP. That is one endpoint, one sign-in, and twenty-six tools — one per verb. They are the same tools the rest of Stub is built on, so what your AI can do and what the app can do cannot drift apart.

Signing in goes through Miles. Your client opens a Miles approval screen, you approve it there, and your client ends up holding a token scoped to Stub. Stub never sees a password, and your AI client never sees your Miles account.

Point and click

claude.ai and Claude Desktop

Open Settings → Connectors → Add custom connector and paste the server URL. The + menu beside the message box reaches the same screen. Nothing goes under Advanced settings — the server tells Claude where to sign you in.

That Connectors screen is also where you switch Stub off for a while without removing it.

ChatGPT

Custom connectors are behind Developer mode, which OpenAI marks as elevated risk. The toggle is under Settings → Security and login; the Developer mode row under Settings → Plugins links to the same place. Then open chatgpt.com/plugins, click +, name it, choose Server URL, and paste the URL above. Leave authentication on OAuth — not “No auth” — and ChatGPT fills in the rest itself.

ChatGPT warns that custom connectors are unreviewed and could misuse your data. That warning is about connectors as a category; what Stub itself enforces is under what a connected AI can see. Expect to switch Stub on again in each new chat, and note that connectors do not work in voice mode.

One command

Claude Code

claude mcp add --transport http stub https://mcp.stub.travel/mcp

Add --scope user to have it in every project rather than the one you are standing in. That command writes the configuration; it does not sign you in. Run /mcp and authenticate there — a server you added but never approved answers nothing.

Codex CLI

codex mcp add stub --url https://mcp.stub.travel/mcp

This one opens your browser on the spot. Read what the approval screen lists before you accept it: stub:read is enough to read your trips, and stub:write is the one that lets an AI change them.

What a connected AI can see

It can read

  • Your trips, and every item on them
  • Cash and points, per item and per journey
  • To-dos, notes, and a search across every trip

It cannot reach

  • Your Stub account — the sign-in, the sessions, the forwarding address
  • Your Miles wallet, your balances, or your cards
  • Anything that changes a trip, unless you grant write access

Stub enforces that on its own side, not only on the approval screen. Five of the twenty-six tools are read-only. Every other one refuses a token that was not granted stub:write, whatever the client asked for.

Item titles and notes originate in forwarded email, so everything Stub hands back is marked as untrusted content before your AI reads it. That is a hint to the model, not a guarantee about it.

If you grant write access

Then an AI can create a trip, add and edit items, file a booking, and keep the to-do list. It is the same twenty-six tools; twenty-one of them stop answering read-only access. Seventeen of those write to your trips. The other four — trip_suggest_item, trip_suggest_edit, trip_suggest_items and trip_suggest_nothing — propose a card for you to tap in Stub’s own chat. Over a connection there is no card to draw, so they change nothing and say so.

One tool exists to take it back. trip_undo_last restores the most recent machine write and names the field it restored and the direction it moved. An undo you cannot verify is not a safety net, so it never answers “done” on its own.

Underneath it, every machine write is recorded, and removing an item moves it to a drawer rather than out of the database.

Pause or disconnect

Both live in Miles, because Miles issued the token. Settings → Connected AI Apps pauses every connected app at once: Stub starts refusing their calls immediately and resumes when you switch it back on. Nothing is lost in between.

To end one connection for good, disconnect that app there instead. Removing the server from your client stops the client from calling; disconnecting in Miles is what retires the token.

Try asking

  • “What did the Tokyo trip cost, in cash and in points?”
  • “Do I have a way from Narita to the hotel?”
  • “Which bookings can I still cancel for free?”

Each of those is answered out of your own trips. Stub does not price a redemption for you — what your points are worth is a question for Miles, which is where the wallet lives.

If it isn’t working

It connects, and every trip list comes back empty
Check which account you approved with. The approval screen names it, and a second Miles account is easy to approve by accident.
Reads work and every write says read-only access
The token carries stub:read and nothing else. Remove the server from your client, add it again, and grant write on the approval screen.
Nothing works, and it did yesterday
Check whether AI app connections are paused in Miles settings. That switch pauses every connected app at once.
Sign-in fails right after adding the server
Close the window and start it again. The first attempt can fire before setup finishes.
Codex is stuck in a sign-in loop
Codex keeps its tokens in the macOS login Keychain, not in ~/.mcp-auth — deleting that directory does nothing. Run codex mcp logout stub instead.

Connecting needs a Miles account, the same one you sign in to Stub with. Security says how your trips are protected, and what is not.

Home