# Doorfarer (remote · doorfarer.com)

Door-to-door trips: every airport within reach of your home, with the train or bus there.

- Trust score: 76/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `doorfarer.com`: 76/100 (this document), [markdown](https://verifymcp.io/servers/com-doorfarer-doorfarer/doorfarer.md), [page](https://verifymcp.io/servers/com-doorfarer-doorfarer/doorfarer)

## Channel facts

- Endpoint: `https://doorfarer.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.2.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 73/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 3549 tokens (~394/item across 9 items; 5 tools + 4 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 20/100
  - Stability observed for 6 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 7 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).
  - Supports UI / widget rendering.

## Install

### How do I install the Doorfarer MCP server?

Doorfarer is a hosted endpoint at https://doorfarer.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-doorfarer-doorfarer 'https://doorfarer.com/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "com-doorfarer-doorfarer": {
      "url": "https://doorfarer.com/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-doorfarer-doorfarer": {
      "type": "http",
      "url": "https://doorfarer.com/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-doorfarer-doorfarer]
url = "https://doorfarer.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-doorfarer-doorfarer": {
      "type": "remote",
      "url": "https://doorfarer.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-doorfarer-doorfarer --url 'https://doorfarer.com/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-doorfarer-doorfarer:
    url: "https://doorfarer.com/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-doorfarer-doorfarer": {
      "Transport": "http",
      "Url": "https://doorfarer.com/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-doorfarer-doorfarer -t streamable-http -u 'https://doorfarer.com/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-doorfarer-doorfarer": {
      "type": "http",
      "url": "https://doorfarer.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 76, +1)

- [security] Resource “price-calendar” now points somewhere else: ui://doorfarer/price-calendar-v2.html → ui://doorfarer/price-calendar-v3.html
- [security] Resource “trips” now points somewhere else: ui://doorfarer/find-trips-v2.html → ui://doorfarer/find-trips-v3.html
- [security] Tool “find_trips” rewrote its description, which is the text the model reads
- [security] Tool “trip_details” rewrote its description, which is the text the model reads
- [cosmetic] “send_feedback” reworded the description of “what_happened”

### 2026-11-02 (score 75, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-01 (score 74, +1)

- [security] Resource “trips” now points somewhere else: ui://doorfarer/trips-v4.html → ui://doorfarer/find-trips-v2.html
- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “find_trips” rewrote its description, which is the text the model reads
- [security] Tool “price_calendar” rewrote its description, which is the text the model reads
- [functional improvement] Schema quality: 453 → 384
- [functional] Schema quality: good → excellent
- [functional] New resource “group-trips”
- [functional] New resource “price-calendar”
- [functional] New resource “trip-details”
- [functional] New tool “find_group_trips”
- [cosmetic] “find_trips” reworded the description of “dates”

### 2026-10-31 (score 73, 0)

- [security] Resource “trips” now points somewhere else: ui://doorfarer/trips-v1.html → ui://doorfarer/trips-v4.html
- [security] Tool “find_trips” rewrote its description, which is the text the model reads
- [security] Tool “price_calendar” rewrote its description, which is the text the model reads
- [functional improvement] Stability: unverified → 0.03
- [cosmetic] “find_trips” reworded the description of “depart_from”
- [cosmetic] “find_trips” reworded the description of “depart_to”
- [cosmetic] “find_trips” reworded the description of “destinations”
- [cosmetic] “find_trips” reworded the description of “from_airports”
- [cosmetic] “find_trips” reworded the description of “home”
- [cosmetic] “find_trips” reworded the description of “nights_max”
- [cosmetic] “find_trips” reworded the description of “nights_min”
- [cosmetic] “find_trips” reworded the description of “priority”
- [cosmetic] “find_trips” reworded the description of “travellers”

### 2026-10-30 (score 73)

First indexed and scored.

## MCP tools (5)

### `find_trips` (~1732 tokens)

Find door-to-door trips

Finds the best round trips from where someone lives, not just from one airport: it adds the train or bus to every airport they can reach and ranks all options door to door, by price, by total travel time, or balanced. Use it when someone wants flights from their home town, could fly from several airports, or asks for the cheapest or fastest way to get somewhere, e.g. "I live in New Haven: should I fly to Lisbon from JFK, Newark, Boston or Hartford?" Not for a search from one airport already chosen. For a one-way trip set one_way (the trip length is then ignored). Multi-city: search each leg as one_way only when the user gave dates for it; otherwise ask for the dates. Set mode only when the user says how they get to the airport (car, train, bus, any): by default a home in the US compares driving, a taxi to a near airport and public transport, and a home elsewhere uses the train or bus. A named departure airport is an ordinary search: pass it as from_airports, with the home town the user gave. Ask when and for how long first: with no dates from the user this tool runs no search and returns the question to ask (and a form); it searches once the user names a time, or says any time suits them (dates "flexible"). A month or holiday without a year means the next one coming; don't ask which year or to confirm a town. Travellers default to 1 and the trip length to 2-14 nights; the answer's summary names both. Any town or village works. The first search from a town we haven't seen takes about 20 seconds while we look up its train and bus connections; tell the user you're checking the connections from their town to each airport. Later searches from that town take a second or two. Give the home town and where to: airport, city or country codes, a list of them, or a region such as "Iberia" or "Southeast Asia". For "anywhere", a continent ("Asia") or "somewhere warm" it finds the cheapest places itself: pass "anywhere", "abroad" (another country) or the continent, or for warm, s…

Input parameters:

- `anywhere` (boolean): True to find the cheapest places anywhere in the countries or regions named, instead of searching each one's biggest airports. A continent (Asia, Europe), "anywhere" or "abroad" (outside the home cou…
- `currency`: ISO code (USD, GBP, EUR) to show prices in. Default: the traveller's home currency.
- `dates` (string, required): "from_user" when the user named a time (a month, season, holiday, "next week"): pass it as depart_from and depart_to. "flexible" only when the user said any time suits them ("whenever", "cheapest tim…
- `depart_from`: The window to leave in: first day. Leave out with depart_to for the next 3 months. A window of about six months at most, within the next year.
- `depart_to`: The window to leave in: last day. A window of about six months at most, within the next year.
- `destinations` (array, required): Where to: airport codes (LIS), city codes (NYC), country codes (PT), a region, a continent (Asia), "anywhere" or "abroad" (outside the home country).
- `from_airports`: Only these departure airports. For narrowing a previous answer.
- `home` (string, required): The traveller's home town or village, e.g. "New Haven" or "Hamden, US". Not an airport. Add the country when the name is common.
- `limit`: Rows to return, 1-25. Default: the picks plus the best trip from each airport.
- `max_ground_hours`: The most hours from the front door to the departure airport, one way. Default 8.5: farther airports are left out and named in the answer. Set it only when the user says how far they would travel to t…
- `mode`: How the user gets to the airport: public (train or bus), train, bus, car (their own, parked at the airport), or any (car, taxi and public compete). Leave out unless the user says: then any for a home…
- `nights_max`: Trip length in nights: longest. Default 14.
- `nights_min`: Trip length in nights: shortest. Default 2.
- `one_way` (boolean): True if the user wants one way only: then the trip length is ignored.
- `priority` (string): What matters most: budget (the cheapest door to door), time (the fastest) or balanced. Default balanced; the picks show the cheapest, the fastest and the balanced trip either way.
- `travellers` (integer): Adults travelling together. Default 1.

### `price_calendar` (~361 tokens)

Cheapest month from home

Shows the cheapest month to travel from someone's home town to a place, for each airport within reach: the cheapest fare found for each month (or, where none is found, what that route usually costs) plus the train or bus to the airport and the transfer into the city. Takes a few seconds. Airports further than 8.5 hours from home are left out and named. Use it when the user's dates are flexible or they ask when it's cheapest to go; then call find_trips for the month they choose to get bookable trips. Needs the home town; months as "2027-03", at most 12; for a season or a year pass its months ("next spring" = March to May), and the answer says which months have fares (state only those). Prices per person, in the home currency unless `currency` is given. The widget shows the months: reply in 3-4 sentences, with the best month and what it costs ("cheapest found" or "usual price", as the answer says), and don't quote prices from other sources.

Input parameters:

- `currency`: ISO code (USD, GBP, EUR). Default: the home's.
- `destinations` (array, required): Where to: airport codes (LIS), city codes (NYC) or country codes (PT).
- `home` (string, required): The traveller's home town or village, e.g. "New Haven" or "Hamden, US". Not an airport. Add the country when the name is common.
- `month_from`: First month, "2027-03". Default: this month.
- `month_to`: Last month. Default: 6 months in all.
- `one_way` (boolean): True for one-way fares.

### `trip_details` (~244 tokens)

Trip step by step

Shows one trip from a find_trips answer step by step, door to door: leaving home, the train or bus to the airport, the airport wait, the flight, the transfer into the city and arrival, then the way back, with local times. Also gives the booking link and a calendar file (.ics) the user can add. Pass a trip id from the find_trips answer ("Trip ids, row by row", or a row's `id`); "the best one" is the find_trips answer's top pick. Use it when the user picks a trip or asks how the journey works. Ids are kept for 72 hours. The widget shows every leg, so reply in at most 4 sentences with no table: the summary line, the times that matter (leaving home, the flight, arriving) and the booking link. Don't look up flights, airports or transit elsewhere: our times come from the fare, and a layover is a connection that is part of the trip.

Input parameters:

- `trip_id` (string, required): A trip id from the find_trips answer, e.g. "t_k3m9q2xa".

### `send_feedback` (~274 tokens)

Report a problem with Doorfarer

Tell Doorfarer's maker where Doorfarer fell short, so it can be fixed. Use it when a find_trips answer was wrong, confusing, or missing something you needed to help, or when the user asks you to pass something on. Write as the assistant that used the tool: what you asked for, what came back, what you expected instead. The report is about Doorfarer only, never about the user: leave out names, contact details, travel plans, reasons for travelling and anything the user said about themselves. Be specific and honest, including when the problem may have been your own call. Pass the search_id from the answer's last line. One report per search. If the user asked you to report something, tell them it's sent.

Input parameters:

- `kind` (string, required): bug: something is wrong. confusing: right but hard to use. idea: something that would help.
- `search_id`: The id from the find_trips answer this is about, e.g. "s_7f3kq2m9xa".
- `suggestion`: What would have helped. At most 400 characters.
- `what_happened` (string, required): What you asked for, what came back and what you expected. About Doorfarer, not the user. At most 400 characters.

### `find_group_trips` (~646 tokens)

Find group trips

Finds trips for a group whose people leave from different towns to meet in one place on the same dates: each person's own door-to-door trip (the train, bus or car to their best airport, and the flight), one line per town, with the group's total, the longest journey and the dates that work for everyone. E.g. "Four of us want a week in Lisbon in May: two from New Haven, one each from Ithaca and Burlington." Put each town once in homes with how many people leave from it. For "where should we meet?" pass a region, countries or "anywhere" as destinations with anywhere true. For one home town, use find_trips. A month without a year means the next one coming. With no dates from the group this tool runs no search and returns the question to ask; once they name a time, or say any time suits them (flexible true), it searches. A month is enough to search: don't ask for exact dates. If a search finds nothing, say so and offer a wider window or single-town searches; never quote prices from other sources.

Input parameters:

- `anywhere` (boolean): True to find the best places to meet in the countries or regions named.
- `currency`: ISO code (USD, GBP, EUR). Default: the first town's currency.
- `depart_from`: The window to leave in: first day. Leave out with depart_to for the next 3 months.
- `depart_to`: The window to leave in: last day.
- `destinations` (array, required): Where to meet: airport codes (LIS), cities, country codes (PT), a region, a continent (Europe) or "anywhere".
- `flexible` (boolean): True only when the group said any time suits them: the next 3 months are searched. Otherwise pass the dates they named.
- `homes` (array, required): Each town people leave from, with how many: [{"town": "New Haven, CT", "travellers": 2}, {"town": "Ithaca, NY"}]. Towns, not airports; the same town twice is one line.
- `max_ground_hours`: The most hours from the front door to the departure airport, one way. Default 8.5: farther airports are left out and named in the answer. Set it only when the user says how far they would travel to t…
- `mode`: How people get to the airport: public, train, bus, car or any. Leave out unless the user says: then any in the US, public elsewhere.
- `nights_max`: Trip length in nights: longest. Default 14.
- `nights_min`: Trip length in nights: shortest. Default 2.
- `one_way` (boolean): True if everyone flies one way only.
- `priority`: Best for the group: budget (the lowest total), time (the fewest hours) or balanced. Default balanced.
- `same_day` (boolean): True if everyone must leave and return on the very same days; by default within a day.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-doorfarer-doorfarer/doorfarer#diagnostics

## Score history

- 2026-11-05: 76
- 2026-11-04: 76
- 2026-11-03: 75
- 2026-11-02: 75
- 2026-11-01: 74
- 2026-10-31: 73
- 2026-10-30: 73

## Common questions

### What is the Doorfarer MCP server?

Doorfarer is an MCP server listed in the public MCP registry as com.doorfarer/doorfarer. Door-to-door trips: every airport within reach of your home, with the train or bus there. This page covers its hosted endpoint (https://doorfarer.com/mcp).

### Is the Doorfarer MCP server safe to use?

Doorfarer scores 76 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Doorfarer MCP server expose?

Doorfarer exposes 5 tools: find_trips, price_calendar, trip_details, send_feedback, find_group_trips. Their descriptions and schemas cost roughly 3,257 tokens of context every time the server is loaded.

### Does the Doorfarer MCP server require authentication?

No. We connected to Doorfarer without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Doorfarer MCP server still maintained?

Doorfarer is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://doorfarer.com/mcp
- Website: https://doorfarer.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-doorfarer-doorfarer/doorfarer.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-doorfarer-doorfarer/doorfarer.json
- HTML version of this page: https://verifymcp.io/servers/com-doorfarer-doorfarer/doorfarer
