Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Transports: stdio vs HTTP
  • State of MCP (stats)
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI → MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE ↗ (opens in a new tab)
  • llms.txt ↗ (opens in a new tab)
  • Catalog JSON ↗ (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub ↗ (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. Travel & Transportation
  3. My Next Adventure
  4. README

My Next Adventure README

The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the My Next Adventure listing page.

Back to My Next Adventure View source on GitHub

MyNextAdventure MCP server

A remote Model Context Protocol server that lets an AI assistant plan trips in MyNextAdventure — create a trip, lay out the itinerary, propose flights and hotels, add things to do, and share the result.

It runs as a stateless Cloudflare Worker and is a thin, authenticated proxy in front of the MyNextAdventure public API: it holds no trip data of its own, and forwards every call to the API under the caller's own API key.

  • Production: https://mcp.mynextadventure.cloud/mcp (Streamable HTTP)
  • Upstream API: https://api.mynextadventure.cloud (v1 public API)

Authentication

Every request needs a MyNextAdventure API key. Create one in the app under Settings → API keys, then send it as either:

  • Authorization: Bearer <api-key> — what most MCP clients send, and what mcp-remote does, or
  • X-API-Key: <api-key> — for clients that only let you set custom headers.

The worker forwards it to the API as X-API-Key. Requests without a key get a 401. Whatever the key can do, the assistant can do: keys are per-user, so the assistant only ever sees that user's trips.

Where your key lives. The server is stateless: your key is read from the headers of each request, used to make that one call to the MyNextAdventure API, and never stored — there is no session storage and no Durable Object holding it between requests. It is never logged and is not shared between requests or users. Revoke a key any time in the app under Settings → API keys.

Tools

24 tools, covering the operations conversational planning actually needs. Each one is a curated view over a MyNextAdventure API operation — see Regenerating the tools.

ToolWhat it does
whoamiWhich account the API key belongs to (handy for checking the connection).
list_tripsList the user's trips; filter by status (planning, ready, finished, cancelled).
get_tripOne trip in full — variants, destinations, options, events. Needed before any edit.
create_tripCreate a new, empty trip.
update_tripRename, set a cover photo, or move the trip through its lifecycle.
create_trip_share_linkCreate/refresh a public read-only share link.
create_variantAdd an alternative plan (dates live here: exact or flexible).
duplicate_variantCopy a variant with everything in it.
update_variantRename a variant, change its dates or notes.
select_variantMark a variant as the chosen plan.
add_destinationAdd a stop to a variant, in itinerary order.
update_destinationChange a stop's place name, dates or notes.
reorder_destinationsReorder the stops in a variant.
add_accommodation_optionPropose a place to stay at a destination.
add_transport_optionPropose a way of getting to a destination.
add_getting_around_optionPropose local mobility (public transport, rental car, …).
update_destination_optionEdit an existing option of any of the three kinds.
select_destination_optionSelect — or, with no optionId, deselect — an option.
add_eventAdd an activity (museum, concert, restaurant, tour) to a variant.
update_eventEdit an activity.
toggle_eventFlip an activity between committed and "just an idea".
delete_trip_itemPermanently delete a variant, destination, option or event. Deleting a whole variant additionally requires confirm: true.
list_goalsList the user's travel goals / bucket list.
add_goalAdd a goal from a name or a URL.

The server also ships MCP instructions describing the data model (trip → variants → destinations → options, with events on the variant) and the usual order of operations, so a client does not have to guess the workflow.

Not exposed yet, though the API supports them: collaborator access management and invites, voting, collections, invite tokens, goal↔trip linking, API key management, and trip deletion.

Connecting

Claude Desktop

Settings → Developer → Edit Config, then add:

config.json
{
  "mcpServers": {
    "mynextadventure": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.mynextadventure.cloud/mcp",
        "--header",
        "Authorization: Bearer ${MNA_API_KEY}"
      ],
      "env": { "MNA_API_KEY": "your-api-key" }
    }
  }
}

Restart Claude Desktop; the tools appear under the connector.

claude.ai / Claude Code

Add a custom connector pointing at https://mcp.mynextadventure.cloud/mcp and set the Authorization: Bearer <api-key> header. From Claude Code:

Terminal
claude mcp add --transport http mynextadventure https://mcp.mynextadventure.cloud/mcp \
  --header "Authorization: Bearer <api-key>"

ChatGPT

Settings → Connectors → Add custom connector, MCP server URL https://mcp.mynextadventure.cloud/mcp, authentication "custom header" with X-API-Key: <api-key> (or Authorization: Bearer <api-key>).

Any other MCP client

Streamable HTTP at /mcp. GET / returns a small JSON health document with the endpoint and tool count.

Development

Terminal
npm install
npm run dev              # wrangler dev on http://localhost:8787
npm test                 # vitest: request building, schemas, generator freshness
npm run type-check       # tsc --noEmit
npm run generate:tools   # regenerate src/generated/tools.ts from the OpenAPI spec
npx tsx scripts/smoke.ts # drive the MCP protocol against localhost:8787

scripts/smoke.ts performs a real handshake (initialize → tools/list → one tools/call), reading the API key from $MNA_API_KEY or ~/.config/mna/credentials. It refuses to call mutating tools unless --force is passed. To exercise write tools without touching real data, point the worker at a local mock:

Terminal
npx wrangler dev --var MNA_API_BASE_URL:http://localhost:8899

Regenerating the tools

Tool schemas are generated, not hand-written:

Code
apps/server/openapi-v1.json   (the API's OpenAPI snapshot, kept fresh by server CI)
        +
scripts/tool-manifest.ts      (which operations become tools, their names and descriptions)
        ↓  scripts/generator.ts
src/generated/tools.ts        (committed; zod input schemas + request builders)

To add or change a tool, edit scripts/tool-manifest.ts and run npm run generate:tools. Never edit src/generated/tools.ts by hand — a test fails if it drifts from the spec.

A manifest entry names one API operation, or groups several body-less operations behind a discriminator argument (delete_trip_item's target, select_destination_option's action) to keep the tool count down. Path params can be renamed (id → tripId), query params can be narrowed to enums, and descriptions can be overridden — everything else, including the request-body schemas, comes from the spec.

Deployment

npm run deploy (wrangler) — production only, so it is gated on a maintainer; CI never deploys this worker.

Development

Terminal
npm ci
npm run type-check
npm test        # includes a drift test: src/generated/tools.ts must match the generator output
npm run dev     # wrangler dev

Tools are generated from the vendored OpenAPI snapshot in spec/openapi-v1.json (canonical live spec: https://api.mynextadventure.cloud/api/v1/openapi.json) via scripts/generate-tools.ts. Regenerate after refreshing the snapshot.

This repo is the deployable source for mcp.mynextadventure.cloud. Development also happens in the My Next Adventure monorepo and is synced here on release. Issues and PRs welcome.

License

MIT