_ registry / mcp streamable-http · checked 2h ago

Nomads.com

https://nomads.com

Registry code: f9164c0e2e408bdf

api record

Use search_cities to find cities to live and work remotely, then get_city for details. Results are capped and rate limited; this is not a bulk data source.

endpoint
https://nomads.com/mcp
protocol
streamable-http ·2024-11-05
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is Nomads.com live?
Yes — it answered the hub's last check (checked 2h ago). It answered 100% of checks over the last 30 days.
Is Nomads.com free to use?
Partly — some of its tools are open, others need a key or payment.
What tools does Nomads.com have?
14 tools: create_meetup, get_city, search_cities, edit_meetup, cancel_meetup, get_country, add_favorite, remove_favorite, ….
Is Nomads.com safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 100%· all time 100%

latency
393ms

last good check

priced tools
0

of 14 tools

_ answered our checks, 90 days 1 checks · signed record
  • unknown → live
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 14 tools
1 open2 auth-required 11 never probed 3 of 14 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • list_meetups open 2h ago

    Upcoming Nomads.com meetups: where and when nomads meet in person, and how many people are going. Filter by city slug, country or how far ahead to look. Attendance is a count only; who attends is private.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "city": {
          "type": "string",
          "description": "City slug from search_cities, e.g. lisbon-portugal"
        },
        "limit": {
          "type": "integer",
          "description": "1 to 100, default 50"
        },
        "country": {
          "type": "string"
        },
        "days_ahead": {
          "type": "integer",
          "description": "How far ahead to look, 1 to 365, default 90"
        }
      }
    }
    arguments 20 lines
  • get_favorites auth-required 2h ago

    Get a Nomads.com member's own favorite cities and countries (the places they hearted: places they want to go or come back to). Authenticated as the member: signed in through the connector (OAuth sign-in or an Authorization header) if set up, otherwise pass the member's username and their personal key from https://nomads.com/settings - this is private data, not for looking up other people.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        }
      }
    }
    arguments 14 lines
  • get_trips auth-required 2h ago

    Get a Nomads.com member's own trip history (past and upcoming stays: city, country, dates), newest first, 200 by default; use from_date/to_date for a period and limit for more. Authenticated as the member: signed in through the connector (OAuth sign-in or an Authorization header) if set up, otherwise pass the member's username and their personal key from https://nomads.com/settings - this is private data, not for looking up other people.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "limit": {
          "type": "integer",
          "description": "How many trips, newest first: 1 to 1000, default 200"
        },
        "to_date": {
          "type": "string",
          "description": "Only trips that start on or before this date, YYYY-MM-DD"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "from_date": {
          "type": "string",
          "description": "Only trips that end on or after this date, YYYY-MM-DD"
        }
      }
    }
    arguments 26 lines
  • create_meetup unknown never probed

    Host a Nomads.com meetup as the member: it is posted in the community chat, members in that city then get notified, and at 2 RSVPs it is also shared in the country channel and on X. Authenticated as the member (signed in through the connector with OAuth or an Authorization header, or username + personal key from https://nomads.com/settings). The member needs a profile photo and Telegram connected. Ask the member to confirm the details before calling this, it is posted publicly.

    mcp-tool

    {
      "type": "object",
      "required": [
        "city_slug",
        "date",
        "time",
        "category",
        "description",
        "venue",
        "address"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "date": {
          "type": "string",
          "description": "YYYY-MM-DD, in the next 3 months"
        },
        "time": {
          "type": "string",
          "description": "Local start time as a whole hour, e.g. 19 or 19:00"
        },
        "title": {
          "type": "string",
          "description": "Short title, max 60 characters"
        },
        "venue": {
          "type": "string",
          "description": "Name of the cafe, bar or restaurant"
        },
        "address": {
          "type": "string",
          "description": "Street address only, no links"
        },
        "category": {
          "enum": [
            "drinks",
            "coffee",
            "brunch",
            "dinner",
            "foodtour",
            "picnic",
            "coworking",
            "networking",
            "language",
            "bookclub",
            "party",
            "karaoke",
            "games",
            "movies",
            "festival",
            "culture",
            "daytrip",
            "boat",
            "beach",
            "hiking",
            "running",
            "cycling",
            "surf",
            "climbing",
            "fitness",
            "sports",
            "yoga",
            "wellness",
            "other"
          ],
          "type": "string",
          "description": "The main activity"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "city_slug": {
          "type": "string",
          "description": "From search_cities or get_city, e.g. lisbon-portugal"
        },
        "recurrence": {
          "enum": [
            "",
            "weekly",
            "monthly"
          ],
          "type": "string",
          "description": "Optional: repeat every week (same weekday) or every month (same nth weekday)"
        },
        "description": {
          "type": "string",
          "description": "What you will do. No paid tickets or selling"
        }
      }
    }
    arguments 94 lines
  • get_city unknown never probed

    Get the curated data for one city by its slug (from search_cities), e.g. lisbon-portugal.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • search_cities unknown never probed

    Search Nomads.com for the best cities to live and work remotely. Filters: budget, region, country, internet speed, safety, temperature. Returns at most 100 cities sorted by overall score. Each city includes costs, internet, weather, air quality, safety/cleanliness/healthcare/fun and other 0-5 scores, air conditioning (share of households, availability 1-5), tax burden (tax revenue as % of GDP) and an animated thumbnail video.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "limit": {
          "type": "integer",
          "description": "1 to 100"
        },
        "region": {
          "type": "string",
          "description": "One of: Europe, Asia, North America, Latin America, Africa, Middle East, Oceania"
        },
        "country": {
          "type": "string"
        },
        "min_safety": {
          "type": "number",
          "description": "0 to 5"
        },
        "max_cost_usd": {
          "type": "integer",
          "description": "Max monthly cost for a nomad in USD (responses also carry expat, local, family, rent and coworking costs)"
        },
        "max_temperature_c": {
          "type": "number"
        },
        "min_internet_mbps": {
          "type": "number"
        },
        "min_temperature_c": {
          "type": "number"
        }
      }
    }
    arguments 33 lines
  • edit_meetup unknown never probed

    Change a Nomads.com meetup the member organized: date, time, type, title, description, venue or address. Fields left out keep their current value. The change is posted in the community chat. Once 2+ people RSVP'd, the date and time can no longer change. Call without meetup_id to get the member's upcoming meetups with their ids. Authenticated as the member, like create_meetup. Ask the member to confirm the change first.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "date": {
          "type": "string",
          "description": "YYYY-MM-DD"
        },
        "time": {
          "type": "string",
          "description": "Local start time as a whole hour, e.g. 19 or 19:00"
        },
        "title": {
          "type": "string",
          "description": "Short title, max 60 characters"
        },
        "venue": {
          "type": "string",
          "description": "Name of the cafe, bar or restaurant"
        },
        "address": {
          "type": "string",
          "description": "Street address only, no links"
        },
        "category": {
          "enum": [
            "drinks",
            "coffee",
            "brunch",
            "dinner",
            "foodtour",
            "picnic",
            "coworking",
            "networking",
            "language",
            "bookclub",
            "party",
            "karaoke",
            "games",
            "movies",
            "festival",
            "culture",
            "daytrip",
            "boat",
            "beach",
            "hiking",
            "running",
            "cycling",
            "surf",
            "climbing",
            "fitness",
            "sports",
            "yoga",
            "wellness",
            "other"
          ],
          "type": "string",
          "description": "The main activity"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "meetup_id": {
          "type": "string",
          "description": "From create_meetup, list_meetups, or this tool called without it"
        },
        "description": {
          "type": "string",
          "description": "What you will do. No paid tickets or selling"
        }
      }
    }
    arguments 76 lines
  • cancel_meetup unknown never probed

    Cancel a Nomads.com meetup the member organized. The cancel is posted in the community chat and everyone who RSVP'd gets a notification. It cannot be undone. Call without meetup_id to get the member's upcoming meetups with their ids. Authenticated as the member, like create_meetup. Ask the member to confirm first.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "meetup_id": {
          "type": "string",
          "description": "From create_meetup, list_meetups, or this tool called without it"
        }
      }
    }
    arguments 17 lines
  • get_country unknown never probed

    Get one country by its slug, e.g. portugal or united-kingdom: its Nomads.com page, its short animated thumbnail video (mp4, when there is one) and its top 10 cities by overall score, each with their own animated thumbnail.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Lowercase country slug, e.g. portugal, united-kingdom"
        }
      }
    }
    arguments 12 lines
  • add_favorite unknown never probed

    Save a city or country to the member's Nomads.com favorites (the heart on the site). Authenticated as the member, like get_favorites.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "slug": {
          "type": "string",
          "description": "A city slug from search_cities (e.g. lisbon-portugal) or a country slug (e.g. portugal)"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        }
      }
    }
    arguments 20 lines
  • remove_favorite unknown never probed

    Remove a city or country from the member's Nomads.com favorites. Authenticated as the member, like get_favorites.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "slug": {
          "type": "string",
          "description": "A city slug (e.g. lisbon-portugal) or a country slug (e.g. portugal)"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        }
      }
    }
    arguments 20 lines
  • add_trip unknown never probed

    Add a trip to a Nomads.com member's own history: a stay in one place with a start and end date. Authenticated as the member: signed in through the connector (OAuth sign-in or an Authorization header) if set up, otherwise pass the member's username and their personal key from https://nomads.com/settings, plus the place, given EITHER as city_slug (from search_cities/get_city) OR as latitude+longitude (e.g. from a places/geocoding lookup). Coordinates within 5km of a Nomads.com city snap to it, same as the profile page's "add a trip" autocomplete; ANY other place also works - pass its city and country names with the coordinates and it is stored as-is, like the site's own trip editor.

    mcp-tool

    {
      "type": "object",
      "required": [
        "date_start",
        "date_end"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "city": {
          "type": "string",
          "description": "The place name that was geocoded. Required (with country) for places that have no Nomads.com city within 5km"
        },
        "country": {
          "type": "string",
          "description": "The place's country name. Required with city for places without a Nomads.com city page"
        },
        "date_end": {
          "type": "string",
          "description": "YYYY-MM-DD, after date_start"
        },
        "latitude": {
          "type": "number",
          "description": "Use instead of city_slug when you only have a place name to geocode, not our slug"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "city_slug": {
          "type": "string",
          "description": "From search_cities or get_city, e.g. lisbon-portugal. Omit if using latitude/longitude instead"
        },
        "longitude": {
          "type": "number"
        },
        "date_start": {
          "type": "string",
          "description": "YYYY-MM-DD"
        }
      }
    }
    arguments 44 lines
  • remove_trip unknown never probed

    Remove one trip from a Nomads.com member's own history, e.g. a duplicate or a superseded entry. Authenticated as the member (signed in through the connector with OAuth or an Authorization header, or username + personal key from https://nomads.com/settings). Needs the trip_id (returned by get_trips). Only the authenticated member's own trips can be removed.

    mcp-tool

    {
      "type": "object",
      "required": [
        "trip_id"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "trip_id": {
          "type": "string",
          "description": "From get_trips"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        }
      }
    }
    arguments 20 lines
  • edit_trip unknown never probed

    Change the dates and/or the place of one trip in a Nomads.com member's own history, e.g. a stay that got longer or a wrong city. Authenticated as the member (signed in through the connector with OAuth or an Authorization header, or username + personal key from https://nomads.com/settings). Needs the trip_id (from get_trips); pass only what changes, everything else keeps its value. The trip keeps its trip_id, likes and comments. A new place works like add_trip: city_slug, OR latitude+longitude (snaps to a Nomads.com city within 5km, otherwise pass city and country names).

    mcp-tool

    {
      "type": "object",
      "required": [
        "trip_id"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "From https://nomads.com/settings. Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "city": {
          "type": "string",
          "description": "With latitude/longitude: the place name. Required (with country) for places that have no Nomads.com city within 5km"
        },
        "country": {
          "type": "string",
          "description": "With city: the place's country name"
        },
        "trip_id": {
          "type": "string",
          "description": "From get_trips"
        },
        "date_end": {
          "type": "string",
          "description": "New end date, YYYY-MM-DD. Omit to keep"
        },
        "latitude": {
          "type": "number",
          "description": "New place by coordinates, instead of city_slug"
        },
        "username": {
          "type": "string",
          "description": "Omit when signed in through the connector (OAuth or Authorization header)"
        },
        "city_slug": {
          "type": "string",
          "description": "New place, from search_cities or get_city. Omit to keep the place"
        },
        "longitude": {
          "type": "number"
        },
        "date_start": {
          "type": "string",
          "description": "New start date, YYYY-MM-DD. Omit to keep"
        }
      }
    }
    arguments 47 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id f9164c0e2e408bdf.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/f9164c0e2e408bdf/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/f9164c0e2e408bdf/badge.svg)](https://brick.blue/agent/f9164c0e2e408bdf?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.