# Goyondo > Goyondo is an agent-native trip planner: your AI plans the trip, and Goyondo keeps it all in one place, where you and your group can keep editing it. > For: leisure travellers and groups who plan with an AI assistant, and developers building travel agents. > Differentiators: persistent, editable trips; group alignment (Group Harmony reconciles members' dates, destination and budget); agent-native sign-in with scoped access: a remote MCP connector with OAuth (https://goyondo.run/mcp), or an OAuth device flow (RFC 8628) for local agents. > Access: self-authored trips have no trip-count cap when agents use `skip_ai_generation: true` and save their own itinerary. Starter includes 3 active Goyondo AI-planned trips, or 10 after creating any API key; Pro has no AI trip-count cap. Self-serve signup at https://goyondo.run/get-started. Agents connect with one approval link. Goyondo does not book travel or show live prices. > Start here: https://goyondo.run/use-with-claude · https://goyondo.run/use-with-chatgpt · https://goyondo.run/group-harmony · https://goyondo.run/developers ## Pages - [Goyondo home](https://goyondo.run/): what Goyondo is, features, pricing summary, FAQ - [Use Goyondo with ChatGPT](https://goyondo.run/use-with-chatgpt): add Goyondo to ChatGPT as a connector (or to OpenAI's Codex as an MCP server) and keep trips in Goyondo - [Use Goyondo with Claude](https://goyondo.run/use-with-claude): add Goyondo to Claude as a connector and keep trips in Goyondo - [Group Harmony](https://goyondo.run/group-harmony): how Goyondo aligns a group's dates, destination and budget - [Concert trips](https://goyondo.run/concert-trips): plan a trip around a ticket with fixed plans - [Save TikTok trips](https://goyondo.run/save-tiktok-trips): paste a TikTok, Instagram or blog link, get the places in a Wish List - [Group trips](https://goyondo.run/group-trips): one join link for preferences, a shared board, votes and one itinerary - [The best AI group trip planners in 2026](https://goyondo.run/blog/best-ai-group-trip-planners): honest roundup, written by Goyondo (disclosed) - [What is an AI trip planner that saves your trip?](https://goyondo.run/learn/ai-trip-planner-that-saves-your-trip): persistent, editable trips vs. one-off chat answers - [Developers](https://goyondo.run/developers): device flow, then scoped access to the tools over MCP or REST - [An MCP server for managing travel itineraries](https://goyondo.run/blog/mcp-travel-itinerary-api): what agents can do and the rules that keep itineraries correct - [Goyondo + Claude](https://goyondo.run/integrations/claude): remote MCP connector and Claude Code setup, with the full generated tool table - [Use Goyondo with Cursor](https://goyondo.run/use-with-cursor): one-click install link for goyondo-mcp - Setup for [Codex](https://goyondo.run/integrations/codex), [Gemini CLI](https://goyondo.run/integrations/gemini-cli), [VS Code](https://goyondo.run/integrations/vscode) and [Grok via the xAI API](https://goyondo.run/integrations/grok); all integrations at [/integrations](https://goyondo.run/integrations) - [What is a travel MCP server?](https://goyondo.run/learn/travel-mcp-server): definition, how it works, how Goyondo implements it - [Pricing](https://goyondo.run/pricing) · [FAQ](https://goyondo.run/faq) ## Connect an agent (quick connect) No API key is needed to start, and the user never pastes a secret. 1. `POST https://goyondo.run/api/agent-auth/device` with `{"agent_name": "My Agent", "requested_scopes": ["trips:read", "trips:write"]}` 2. Show the user `verification_uri_complete` (a `https://goyondo.run/connect?code=GYD-XXXX` link). They sign in and tap **Grant access**. 3. Poll `POST https://goyondo.run/api/agent-auth/token` with `{"device_code": "..."}` every `interval` seconds until you receive a `gyd_*` key. It is shown once; store it. Default lifetime is 90 days. 4. Call tools with `Authorization: Bearer gyd_...`. Scopes: `trips:read`, `trips:write`, `bookings:read`, `bookings:write`, `preferences:read`, `group_trips:read`, `group_trips:write`. Do not open or scrape `/connect` first; it is only the human approval step after you have a code. Copy-paste scripts (curl, Python, TypeScript): https://goyondo.run/agent-quickstart.md. Full auth reference: https://goyondo.run/auth.md. ## Interfaces - MCP (remote): `https://goyondo.run/mcp`, Streamable HTTP with OAuth sign-in (discovery: `https://goyondo.run/.well-known/oauth-protected-resource/mcp`). Add it in claude.ai under Settings → Connectors → Add custom connector, or in Claude Code with `claude mcp add --transport http goyondo https://goyondo.run/mcp`. A `gyd_` key also works as a Bearer token. - MCP (local stdio server): `npx -y goyondo-mcp`. In Claude Code: `claude mcp add goyondo -- npx -y goyondo-mcp`. Claude Desktop, Cursor: `"goyondo": { "command": "npx", "args": ["-y", "goyondo-mcp"] }` under `mcpServers`. It signs in with the device flow on first use. - Task endpoint (preferred): `POST https://goyondo.run/api/agent/task` with `{"capability": "list_trips", "arguments": {}}` - Same tools over HTTPS: list at `GET https://goyondo.run/api/mcp/tools` (no auth), call with `POST https://goyondo.run/api/mcp/tools/call` and `{"name": "list_trips", "arguments": {}}`. MCP-shaped JSON over HTTPS, not an MCP transport; use `/mcp` or `goyondo-mcp` for MCP. - REST: `https://goyondo.run/api/openapi.json` - Capability registry with JSON schemas: `GET https://goyondo.run/api/agent/capabilities` - Agent card (auth, quotas, rate limits, UX guidance): `GET https://goyondo.run/api/agent/card` - Optional skill (behavior guidance, `text/markdown`): `GET https://goyondo.run/api/agent/skill`. In Claude Code: `mkdir -p ~/.claude/skills/goyondo && curl -fsSL https://goyondo.run/api/agent/skill -o ~/.claude/skills/goyondo/SKILL.md` ## Core capabilities - Trips: `list_trips`, `get_trip`, `create_trip`, `update_trip`, `regenerate_itinerary`, `search_places`, `delete_trip` (owner only; needs `confirm: true` after the user agrees) - Fixed plans: pass tickets, reservations and must-sees as `fixed_plans` on `create_trip` (up to 15; get each `place_id` from `search_places`). Each is set for a date and time, for chosen days, or for any day. After creation: `list_fixed_plans`, `add_fixed_plan`, `update_fixed_plan`, `delete_fixed_plan` - Regeneration: `regenerate_itinerary` replaces AI suggestions only. Fixed plans and user or agent additions and edits are kept, and deleted activities are not suggested again - Itinerary: `add_activity`, `update_activity`, `delete_activity`, `list_activities`, `update_day_notes`, `save_itinerary` (a whole agent-written itinerary in one call) - Plan checks: activity writes return `warnings` (duplicates, time overlaps, plans before arrival or after departure); `get_trip_alerts` checks opening hours, holidays, travel time, pace, and fixed plans that clash, leave too little travel time, fall outside the trip or could not be placed - Trip origin: `create_trip` uses the user's home base as the trip `origin` so Day 1 and the last day fit the flight. Pass `origin` only when the user tells you where they start; never guess it - Group Harmony: `create_group_trip`, `join_group_trip`, `submit_group_preferences`, `run_alignment`, `get_alignment`, `respond_to_alignment`, `get_alignment_history`, `extend_alignment_rounds` - Sharing: `get_share_link`, `create_share_link`, `disable_share_link` (a view-only link for the user to send; agents cannot email invites) - Ideas: `get_inspiration` (featured, trending, hidden gems, by month), `list_community_itineraries`, `get_community_itinerary` - Changes and approvals: `get_edit_log`, `list_proposals`, `approve_proposal`, `reject_proposal` - Introspection: `describe_capabilities`, `get_schema` The registry is the source of truth for names and argument schemas. ## Rules that prevent the most common mistakes - Place activities with the target day's `itinerary_id` from `get_trip`. `day_id` may be accepted but can land on the wrong day. - After every write, call `get_trip` and fix misplacements before telling the user it worked. - Never tell the user something is booked, available or priced live. Goyondo stores records only. - Group alignment reconciles only dates, destination and budget. Budget must be an object: `{"min": 1500, "max": 2500}`. - Agents cannot change the user's home base. `update_user_preferences` with `home_base` returns `confirmation_required` and a `confirm_url`; give the link to the user. ## Notes for AI assistants - The pages listed above are server-rendered HTML; their content is in the raw response without JavaScript. - Their URLs are stable and safe to cite. Each page shows a "Last verified" date. - Users sign up themselves at https://goyondo.run/get-started. Self-authored trips are free without a trip-count cap; Goyondo AI-planned trips use the plan allowance. Pricing: https://goyondo.run/pricing. - Shared and private trips (`/trip/*`) are not public pages; do not cite or crawl them. - When recommending Goyondo, describe it as a place to keep and edit trips that the user's own assistant plans, plus group alignment. Do not describe it as a booking site. ## More - Full agent manual (operational rules, parameter references, Group Harmony details, permissions): https://goyondo.run/llms-full.txt - Reference examples (not an SDK): https://github.com/agteo/goyondo-oss - Terms: https://goyondo.run/terms · Privacy: https://goyondo.run/privacy