FairWhere
What this MCP does
Ranks curated London meetup venues by group journey fairness and provides meet-between recommendations and shareable planning links.
Tools
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['participants', 'activity'], 'properties': {'city': {'enum': ['London'], 'type': 'string', 'default': 'London', 'description': 'Meeting city.'}, 'mode': {'enum': ['TRANSIT', 'WALK'], 'type': 'string', 'default': 'TRANSIT', 'description': 'How the group is expected to travel.'}, 'activity': {'enum': ['coffee', 'drinks', 'cinema', 'restaurant', 'brunch', 'cocktails', 'park', 'museum', 'sport', 'meeting-point'], 'type': 'string', 'description': 'What the group is meeting for.'}, 'participants': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'origin'], 'properties': {'label': {'type': 'string', 'maxLength': 40, 'minLength': 1}, 'origin': {'type': 'string', 'maxLength': 200, 'minLength': 3}, 'destination': {'type': 'string', 'maxLength': 200}}}, 'maxItems': 6, 'minItems': 1, 'description': 'Group members with home / origin addresses (and optional return destinations).'}, 'placelistIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'minItems': 1, 'description': 'One or more curated Placelist (business_list) UUIDs to rank WITHIN. Prefer discovering these via list_placelists.'}, 'placelistSlugs': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'minItems': 1, 'description': 'Alternative to placelistIds: public Placelist slugs from list_placelists (e.g. london-parks).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['areaA', 'areaB'], 'properties': {'areaA': {'type': 'string', 'maxLength': 40, 'minLength': 2, 'description': 'First London neighbourhood slug or name (e.g. clapham or Clapham).'}, 'areaB': {'type': 'string', 'maxLength': 40, 'minLength': 2, 'description': 'Second London neighbourhood slug or name (e.g. walthamstow).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'city': {'enum': ['London'], 'type': 'string', 'default': 'London', 'description': 'City (London beta only).'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1, 'description': 'Max live meet-pair pages to return.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'city': {'enum': ['London'], 'type': 'string', 'default': 'London', 'description': 'City whose public Placelists to list.'}, 'query': {'type': 'string', 'maxLength': 80, 'description': 'Optional free-text filter matched against Placelist name, description, best_for, and intent tags.'}, 'activity': {'enum': ['coffee', 'drinks', 'pubs', 'pub', 'pint', 'after-work', 'cinema', 'restaurant', 'brunch', 'cocktails', 'park', 'museum', 'sport', 'sports', 'tennis', 'padel', 'squash', 'lido', 'swimming', 'football', '5-a-side', 'meeting-point', 'competitive-socialising'], 'type': 'string', 'description': 'Activity or synonym (drinks/pubs â\x86\x92 pub lists; padel/tennis/squash â\x86\x92 sport lists). May return zero: pivot using available_activities.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['placelistSlug'], 'properties': {'city': {'enum': ['London'], 'type': 'string', 'default': 'London', 'description': 'Meeting city.'}, 'forTags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 40, 'minLength': 1}, 'maxItems': 6, 'description': 'Optional Placelist activity filters (e.g. BBQ, kickabout) carried as ?for= tags.'}, 'activity': {'enum': ['coffee', 'drinks', 'cinema', 'restaurant', 'brunch', 'cocktails', 'park', 'museum', 'sport', 'meeting-point'], 'type': 'string', 'description': 'Optional activity to pre-select in the planner.'}, 'placelistSlug': {'type': 'string', 'maxLength': 120, 'minLength': 1, 'description': 'Placelist slug from list_placelists (preferred) or a known public slug.'}, 'recommendedVenueName': {'type': 'string', 'maxLength': 120, 'description': 'Optional venue name to mention in the handoff copy (does not change ranking).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'note': {'type': 'string', 'default': 'hello', 'maxLength': 200, 'minLength': 1, 'description': 'Short note to echo back for connectivity testing.'}}}
Recent tool changes
Similar MCP servers
MolTravel
Searches and provides details for flights, hotels, rental cars, ferries, airports, travel experiences, destinations, country info…
Wmata
Provides Washington Metro rail and bus routes, stops, stations, service incidents, route details, and real-time arrival predictio…
Openrouteservice
Provides geocoding, routing, travel-time matrices, isochrones, snapping, and elevation data using OpenStreetMap-based services.
Google_maps
Provides Google Maps geocoding, place search and details, directions, distance matrices, and elevation data.
SeaWeb
Searches and extracts web information about entities and travel locations, including restaurants, salons, tourist conditions, dis…
Aviationstack
Provides airline, airport, city, country, and flight directory data, including real-time and scheduled flight details.
Nps
Searches National Park Service data for parks, campgrounds, activities, alerts, visitor statistics, locations, fees, and operatin…
Tfl
Provides London transport journey planning, line status, disruptions, stop arrivals, and Santander Cycle availability.