Plan trips from your AI, with the ConMigo MCP
ConMigo runs a Model Context Protocol (MCP) server — so you can plan trips the ConMigo way from inside Claude, ChatGPT or any MCP-compatible client. Six tools, no account, no API key, no cost.
The endpoint
https://conmigo.uk/api/mcpIt speaks JSON-RPC 2.0 over HTTP POST (MCP "Streamable HTTP") and needs no authentication. Point any remote-MCP configuration at that URL and the six tools appear automatically.
Claude Desktop
Add it under Settings → Connectors → Add custom connector, or put this in claude_desktop_config.json and restart the app:
{
"mcpServers": {
"conmigo": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://conmigo.uk/api/mcp"]
}
}
}
Claude Code
One command, from any project:
claude mcp add --transport http conmigo https://conmigo.uk/api/mcp
ChatGPT
In a Custom GPT or under Developer settings, add a remote MCP server with the URL https://conmigo.uk/api/mcp and leave authentication set to none.
Anything else
Any client that supports remote MCP servers works — Cursor, Zed, LibreChat, your own script. To poke at it by hand, ask it for its own tool list:
curl -s https://conmigo.uk/api/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
That returns all six tools with their full JSON schemas — the same ones documented below.
What you can ask
You don't call the tools yourself — you type a normal sentence and your AI picks the right one. Things people actually ask:
- "Split 10 nights across Tokyo, Kyoto and Osaka."Uses
split_trip_nights - "Is my Rome plan any good? Here's what I've got so far."Uses
check_plan - "What do I need to book ahead for Barcelona?"Uses
book_ahead_check - "I've got these six stops on Tuesday — put them in a sensible order."Uses
sequence_stops - "Find me a proper itinerary for a week in Andalusia, then outline my four days in Barcelona."Uses
find_guide, thenplan_trip_outline
Every answer below on this page is the real, unedited text the server returned for the example call shown with it.
The six tools
Each one is stateless trip-planning logic — the same maths and the same opinions the ConMigo app runs on.
split_trip_nights
Splits a total number of nights proportionally across your cities, with a floor of one night each and the spare nights going to the cities you listed first.
Reach for it at the very start of a multi-city trip, when you know how long you've got and which cities are in, but not how to carve the time up.
| Name | Type | Required? | Description |
|---|---|---|---|
| cities | array of string | Required | Cities in visit order, biggest/most-to-see first. |
| total_nights | number | Required | Total nights available for the whole trip. |
You ask
"I've got 10 nights in Japan — Tokyo, Kyoto and Osaka. How should I split them?"
Your client calls
{
"name": "split_trip_nights",
"arguments": {
"cities": ["Tokyo","Kyoto","Osaka"],
"total_nights": 10
}
}
ConMigo answers
Suggested nights split for 10 nights across 3 cities:
• Tokyo: 4 nights
• Kyoto: 3 nights
• Osaka: 3 nights
Rule of thumb: move hotels as few times as possible, and mark the days you travel between cities as their own thing. See conmigo.uk/guides/plan-a-multi-city-trip for the full method.
find_guide
Searches ConMigo's free travel guides — real itineraries with the nights split and the bookings that sell out — and returns the matching titles, one-line summaries and links.
Reach for it when you'd rather steal a route that already works than invent one, or when you want a second opinion on the shape of a trip before committing.
| Name | Type | Required? | Description |
|---|---|---|---|
| query | string | Required | Destination or theme, e.g. "japan", "multi-city spain", "iceland road trip". |
You ask
"Has ConMigo got a guide for a multi-city trip around Spain?"
Your client calls
{
"name": "find_guide",
"arguments": { "query": "multi-city spain" }
}
ConMigo answers
ConMigo guides for "multi-city spain":
• Andalusia in a week — Seville, Córdoba and Granada by train — with the Alhambra booking warning.
https://conmigo.uk/guides/andalusia-week
• Tokyo & Kyoto in 10 days — First-timer Japan route with bullet-train logistics and a Nara day trip.
https://conmigo.uk/guides/tokyo-kyoto-10-days
• Barcelona in 3 days — Essential first-timer route with Gaudí done sensibly.
https://conmigo.uk/guides/barcelona-3-days
• Rome & Florence in one week — A 7-day split giving both cities room, train solved.
https://conmigo.uk/guides/rome-florence-multi-city
• Split & Dubrovnik — A week on the Dalmatian coast with island ferries.
https://conmigo.uk/guides/croatia-split-dubrovnik
plan_trip_outline
Produces a paced, day-by-day skeleton for one destination: an arrival day that isn't over-booked, anchor-sight days that stay in one neighbourhood, a light departure day, and a link to the matching ConMigo guide.
Reach for it when you know where and how long, and want a shape to fill in — before you start naming specific restaurants and museums.
| Name | Type | Required? | Description |
|---|---|---|---|
| destination | string | Required | City or region, e.g. "Barcelona". |
| days | number | Required | Number of days. |
| interests | string | Optional | Optional: e.g. "food, art, hiking". |
You ask
"Outline four days in Barcelona for me — I'm mostly there for the architecture and the food."
Your client calls
{
"name": "plan_trip_outline",
"arguments": {
"destination": "Barcelona",
"days": 4,
"interests": "architecture, food"
}
}
ConMigo answers
A 4-day outline for Barcelona (focus: architecture, food), the ConMigo way:
Day 1 — Arrive and orient. Stay central; a relaxed wander to get your bearings and beat jet lag.
Day 2 — One anchor sight in the morning (book any timed-entry ticket ahead), lunch nearby, an unhurried afternoon in one neighbourhood. Don't cross the city twice in a day.
Day 3 — One anchor sight in the morning (book any timed-entry ticket ahead), lunch nearby, an unhurried afternoon in one neighbourhood. Don't cross the city twice in a day.
Day 4 — A slower morning near your hotel, then travel out. Keep it light so you're not rushing to the airport.
ConMigo principles applied: respect opening hours and travel time, keep each day geographically tight, and pre-book the sights that sell out.
Related ConMigo guide: Barcelona in 3 days — https://conmigo.uk/guides/barcelona-3-days
Plan it for real (free) at https://conmigo.uk
sequence_stops
Takes one day's stops in any order and returns the order they should actually happen in — chained by real distance, meals pinned to mealtimes, and an honest clock time on every stop including the walking and transit between them.
Reach for it once you have a shortlist for a specific day and want to know whether it holds together — this is the tool that catches the day that crosses the city twice.
| Name | Type | Required? | Description |
|---|---|---|---|
| stops | array of object | Required | The stops for ONE day, in any order. |
| stops[].name | string | Required | What the stop is, e.g. "Sagrada Família". |
| stops[].lat | number | Optional | Latitude, if known — coordinates are what make the ordering real. |
| stops[].lng | number | Optional | Longitude, if known. |
| stops[].kind | string — one of food, activity, hotel, transport | Optional | Defaults to activity. Food stops are pinned to mealtimes rather than slotted into the distance chain. |
| day_start | string | Optional | When the day starts, as "HH:MM". Defaults to 09:00. |
You ask
"Here's my Barcelona Tuesday — Casa Batlló, Park Güell, lunch at El Nacional, Sagrada Família, a wander round the Gothic Quarter and dinner at Bar Cañete. What order should I do them in?"
Your client calls
{
"name": "sequence_stops",
"arguments": {
"stops": [
{ "name": "Casa Batlló", "lat": 41.3917, "lng": 2.1649 },
{ "name": "Park Güell", "lat": 41.4145, "lng": 2.1527 },
{ "name": "Lunch at El Nacional", "lat": 41.3906, "lng": 2.1707, "kind": "food" },
{ "name": "Sagrada Família", "lat": 41.4036, "lng": 2.1744 },
{ "name": "Gothic Quarter wander", "lat": 41.3833, "lng": 2.1767 },
{ "name": "Dinner at Bar Cañete", "lat": 41.3792, "lng": 2.1723, "kind": "food" }
],
"day_start": "09:00"
}
}
ConMigo answers
Your day in order, starting 09:00:
09:00 · Casa Batlló
10:52 · Gothic Quarter wander
12:41 · Sagrada Família
14:29 · Lunch — Lunch at El Nacional
15:29 · Park Güell
19:30 · Dinner — Dinner at Bar Cañete
3 hops between stops — 5.8 km and about 59m of moving in total, and the longest single hop is 2.3 km, so that one is transit rather than a walk.
ConMigo rule applied: keep each day geographically tight; don’t cross the city twice.
check_plan
Grades a draft itinerary the way ConMigo grades its own before showing it to anyone: it catches a plan that has quietly become all eating, a multi-day trip with no landmark or landscape anywhere in it, and days with nothing on them.
Reach for it last, on a plan you or your AI already wrote — it's the second opinion, and it will tell you when a plan is fine as well as when it isn't.
| Name | Type | Required? | Description |
|---|---|---|---|
| items | array of object | Required | Everything in the plan, one entry per stop. |
| items[].day | number | Required | Day number, starting at 1. |
| items[].title | string | Required | The stop as the traveller would read it, e.g. "Chocolate workshop". |
| items[].kind | string — one of food, activity, hotel, transport | Optional | Meals are structural and judged separately; anything unlabelled counts as an activity. |
| days | number | Optional | Total days the plan is meant to cover — needed to spot empty days. |
You ask
"Check this three-day Lisbon plan before I book anything."
Your client calls
{
"name": "check_plan",
"arguments": {
"items": [
{ "day": 1, "title": "Pastéis de Belém", "kind": "food" },
{ "day": 1, "title": "Time Out Market food hall" },
{ "day": 1, "title": "Port wine tasting" },
{ "day": 2, "title": "Cooking class in Alfama" },
{ "day": 2, "title": "Petiscos bar crawl" }
],
"days": 3
}
}
ConMigo answers
Checked 5 items across 2 days.
3 things worth fixing before anyone travels on this:
1. Most of this is eating. 4 of 4 non-meal activities are food-and-drink experiences (Time Out Market food hall, Port wine tasting, Cooking class in Alfama, Petiscos bar crawl). Keep at most half, and give the rest to the sights, landscapes and neighbourhoods the place is actually known for — a food preference should change WHICH version of an experience you pick, not turn the whole trip into eating.
2. Nothing here is a reason to go. There is no landmark, museum, viewpoint, landscape or signature experience anywhere in the plan — add the things a first-time visitor would regret missing.
3. Day 3 has nothing on it. Every day of the trip needs at least one thing — even a slow one.
book_ahead_check
Scans a sight, a list of sights or a whole draft itinerary and flags the ones that genuinely sell out, with roughly how far ahead to book each and why.
Reach for it the moment your dates are fixed — the Anne Frank House and Machu Picchu don't care that you'd planned to sort tickets nearer the time.
| Name | Type | Required? | Description |
|---|---|---|---|
| text | string | Required | A sight, a comma-separated list of them, or a whole draft itinerary to scan. |
You ask
"What do I need to book ahead in Barcelona? I want the Sagrada Família, Park Güell, the Gothic Quarter and Barceloneta beach."
Your client calls
{
"name": "book_ahead_check",
"arguments": {
"text": "Sagrada Família, Park Güell, Gothic Quarter, Barceloneta beach"
}
}
ConMigo answers
2 of these sell out — book them before you go:
• Sagrada Família — a week or two ahead. Timed-entry tickets regularly sell out a week or more ahead.
• Park Güell — a few days ahead. The monumental zone is timed-entry and caps daily visitors.
No warning needed for: Gothic Quarter, Barceloneta beach — ordinary sights with no ticketing don’t need booking ahead.
Lead times are conservative "by this far out you’re safe" guidance, not promises, and they stretch in peak season. ConMigo can’t book any of this for you — it links out to the official seller, that’s all.
What it can't do
Worth knowing before you install it, so nothing here surprises you later:
- No live prices. Nothing here quotes a fare, a room rate or a ticket price, and it never will from this endpoint. Any number an AI gives you alongside these answers came from the model, not from ConMigo.
- No live opening hours. The day outlines and sequencing are built on travel time and sensible pacing, not on today's actual hours. Check the venue's own site for the date you're going — especially Mondays, public holidays and off-season.
- It cannot book anything. There is no booking, holding or confirming here.
book_ahead_checktells you what sells out and roughly when to act; buying the ticket is still on you, from the official seller. - It doesn't know your saved ConMigo trips. Every tool is stateless and unauthenticated — there's no account attached, so it can't read the trips, bookings or documents in your ConMigo app. Per-account trip management is a future, token-authenticated phase.
- The sell-out list is curated, not exhaustive. It covers the world-famous timed-entry places we're confident about. Anything ticketed in peak season is still worth checking yourself.