Skip to Content
GuidesOpenClaw

Connect OpenClaw to Traveler.md

OpenClaw is open-source and self-hosted, and it can connect to any remote MCP server. Once connected, OpenClaw agents can read your Traveler.md and Trip.md files and keep them updated.

In this guide:

Before you start

  • These steps run on the machine hosting your OpenClaw gateway.
  • OpenClaw reads its config from ~/.openclaw/openclaw.json (JSON5). You restart the gateway after config changes.
  • Set the transport explicitly. Traveler.md is a Streamable HTTP server, and OpenClaw’s canonical value for that is streamable-http. When transport is omitted, OpenClaw falls back to sse, which the Traveler.md server does not speak.
  1. Run:

    Bash
    openclaw mcp add travelermd \ --url https://mcp.traveler.md/mcp \ --transport streamable-http \ --auth oauth
  2. Complete the OAuth flow:

    Bash
    openclaw mcp login travelermd

    A browser window opens; sign in to Traveler.md and approve the scopes. On a remote or headless host the browser callback can’t reach you, so use the --code command OpenClaw prints as the fallback.

  3. Confirm the connection and that tools are visible:

    Bash
    openclaw mcp probe travelermd

    probe is one of the two commands (with doctor --probe) that opens a live session against the server. The other registry commands report on config without connecting, so they will look healthy even when the server is unreachable.

Option B: edit the config

  1. Add a travelermd entry under mcp.servers in ~/.openclaw/openclaw.json:

    JSON5
    { mcp: { servers: { travelermd: { url: 'https://mcp.traveler.md/mcp', transport: 'streamable-http', auth: 'oauth' } } } }
  2. Restart the OpenClaw gateway so it picks up the change.

  3. Run openclaw mcp login travelermd to complete the OAuth flow, then openclaw mcp probe travelermd to confirm tools are available.

Embedded OpenClaw exposes configured MCP tools in the coding and messaging tool profiles. The minimal profile hides them, and tools.deny: ["bundle-mcp"] turns them off explicitly, so check both if the Traveler.md tools never reach the model.

Finally, paste the instruction block below into the agent’s instructions or system prompt:

Send this to your OpenClaw agent:

I use Traveler.md as my travel memory, so my preferences and my trips live in one place I can connect to the travel tools I use. There are two kinds of files, and I manage both on the Traveler.md platform: one profile with my lasting travel preferences, and one file per trip with the details for that trip. You can read and update both through the Traveler.md connector. Follow these rules whenever travel comes up: - Read before answering. For any travel-related request, first read my profile and the relevant trip file. Use what's there, and don't ask me for anything the files already contain. - If you can't reach my files, say so. Don't guess or invent preferences. Tell me the connector isn't responding so I can reconnect it. - Capture durable preferences immediately. When I state a lasting travel preference, even casually with no trip in progress (e.g. "I prefer aisle seats"), update my profile right away, then confirm in one line what changed. Make the actual update, don't just say you will. - Keep one-off details in the trip file. Needs specific to a single trip (e.g. "ground-floor room this time") go in that trip's file, not my profile. For that trip, the trip file overrides my general defaults. - One file per trip. Create a new trip file when a trip takes shape, store the itinerary and ideas in it, and update it as plans firm up. - Keep everything clean. No duplicates, and preserve existing entries unless you're correcting or replacing them. If a new preference conflicts with an old one, replace it and note the change. - Flag the edits that matter. Tell me briefly when you create a trip file or make a significant change, and skip announcing trivial ones.

Troubleshooting

  • Tools don’t appear after adding the server? Usually the transport or the tool profile. Confirm transport: "streamable-http" (not the default sse), then check that the agent is not on the minimal profile and that bundle-mcp is not in tools.deny.
  • Want a narrower surface? Per-server toolFilter.include and toolFilter.exclude filter the discovered tools before they become OpenClaw tools, so you can expose the reads and leave the writes out.
  • Scope or revocation change not reflected? Changes can take up to 15 minutes to propagate. Re-run openclaw mcp login travelermd to pick it up immediately.
  • Other issues: see Support.