DrinkedIn Night Out

법정 음주 가능 연령의 성인을 위한, 2~4개 정류장의 도보 가능한 밤 외출을 위한 읽기 전용 무료 플래너로, 업소 자체 사이트 또는 공식 등록부로 검증된 업소만 사용합니다. 로그인 불필요. 두 가지 도구: drinkedin_get_guide 및 drinkedin_plan_night_out. 영업시간과 가격은 절대 단정하지 않습니다. 엔드포인트: https://ai.drinkedin.net/mcp/night-out

호스팅형 MCP 서버

npx add-mcp 'https://ai.drinkedin.net/mcp/night-out'

Claude Code, Codex, Cursor 등에 설치됩니다

문서

DrinkedIn Night Out: documentation.

A free MCP server that plans a walkable night out from officially validated venues. No sign-in. This page covers that server and nothing else.

For adults of legal drinking age where they are.

What it does

Night Out plans a walkable route of 2 to 4 stops between real venues: bars, restaurants, breweries and nightclubs. Each venue on a route has been validated against an official licence register or premises census, or the venue’s own site. The planner uses no other venues, and it adds no details of its own.

Coverage varies by place. When there are not enough validated venues close together, the tool says so (status no_coverage or partial) instead of padding the route.

It never states opening hours or prices: each stop is marked unverified and the assistant is told to point to the venue. Walking times are estimates (straight-line distance × 1.3). Routes are chosen from validated venues by walking distance and kind of place.

It is for adults of legal drinking age where they are. Every reply carries a legal drinking age notice. DrinkedIn does not sell or serve alcohol.

Connect

Endpoint

https://ai.drinkedin.net/mcp/night-out

Transport

Streamable HTTP. Requests are POSTed as JSON-RPC; the server offers no server-sent-event stream.

Sign-in

None. No account, key or token.

Access

Nothing is booked, bought or charged. The one write is the returned route behind plan_url, kept 30 days so the link works (see Privacy). The person’s location is never saved.

MCP Registry

io.github.haim-barad/drinkedin-night-out

Server card

https://ai.drinkedin.net/mcp/night-out/server-card

Agent skill

SKILL.md, also in the skills index

Claude

Open Settings > Connectors and choose Add custom connector. Paste the endpoint and add it. There is nothing to authorize. Menu names differ by app and version.

https://ai.drinkedin.net/mcp/night-out

Claude Code

From a terminal:

claude mcp add --transport http drinkedin-night-out https://ai.drinkedin.net/mcp/night-out

Any MCP client

Add this remote MCP server (Streamable HTTP, no authentication) wherever your client adds MCP servers, connectors or tools:

https://ai.drinkedin.net/mcp/night-out

The client should then list two tools: drinkedin_plan_night_out and drinkedin_get_guide. If it shows neither, the server was not added; check the address.

Tools

drinkedin_plan_night_out

Plans a walkable route of 2 to 4 stops around a point. It saves the planned route for its share link (public venue data only, 30 days), never the person’s location. Every input is optional in the schema, but a call needs a place: a point, an address or a place name.

Where to start

latitude, longitude

Numbers, −90 to 90 and −180 to 180. Preferred: send both. The assistant takes the point from the person’s context: their current location for “near me”, the centre of an area they name, or the destination of a trip they are planning. If the context holds no location, the assistant asks; it does not pick a default.

address

Text, up to 200 characters. A street address, a landmark or the name of an area, used only when no latitude and longitude are given (coordinates win). It is geocoded to one point by OpenStreetMap Nominatim, then planned like coordinates. The reply echoes geocoded_as and geocoded_point with the notice address_geocoded. A geocoder ranks matches and does not confirm them, so the assistant tells the person what it matched and confirms when the text was ambiguous. No match, or a lookup service that does not answer, returns needs_input.

near

Text, up to 80 characters. A label for what the point stands for, such as “near me” or the area the person named. It is echoed back as near_as_given and never changes the plan.

city, region, country

Text, up to 80, 40 and 40 characters. A place name instead of a point. It plans only when the name identifies one place, so give it with its region or country. A name several places share returns needs_input with labelled choices; the tool never picks between them.

place_key

Text, up to 120 characters. Taken from a needs_input answer: it names exactly one of the choices. Send it back to choose that place.

Shape of the route

style

One of the ids below. It limits which kinds of place the route uses and sets the default stops and walking limit; your own stops and max_walk_m win. It says nothing about hours, prices or atmosphere. If too few venues fit, the status is partial or no_coverage, never other kinds of place. The reply echoes style_applied. An unknown style returns needs_input.

  • bar_crawl: Bars and hotel bars only, one after another, with short walks between stops.
  • craft_beer_crawl: Brewpubs and breweries only, one after another.
  • dinner_and_drinks: A restaurant first, then bars and hotel bars.
  • club_night: Bars and hotel bars first, then a nightclub as the last stop.

stops

Integer, 2 to 4. Default 3; a style may set another default.

max_walk_m

Integer, 200 to 2000 metres. Default 900; a style may set another default. The first stop is within this walking distance of the start and every later stop within it of the one before.

vibes

List of up to 10 strings, taken from drinkedin_get_guide. A vibe that cannot be verified is noted in the reply and not applied. An unknown vibe returns needs_input.

Other inputs

exclude_ids

List of up to 50 integers: venue_id values from an earlier reply to leave out, to swap a stop.

budget

Object. A soft hint only: prices are not verified, so the reply just notes that (budget_not_verifiable).

start_time

Text, up to 10 characters, local HH:MM. Informational only.

party_size

Integer, 1 or more. Accepted; it does not change the route.

language

Text, up to 10 characters, default en. Replies are in English; any other value adds the notice language_fallback_en.

What comes back

Every reply carries status, meaning (what happened), say_to_owner (a sentence the assistant can use) and notices (always including legal_drinking_age). A route lists its stops in order. Each stop has a name, address, category, the walk in minutes and metres, a DrinkedIn page link, the venue’s own site when known, map links, and hours and prices marked unverified. After a route, next holds a ready call that swaps the last stop. A planned or partial route also carries plan_id and plan_url: a page the person can open and share, with the route map, the stops, their sources and a directions link. It is missing if the plan could not be saved; the route is the same either way.

planned

A route with the number of stops asked for. The assistant shows the stops as returned and adds no venue or detail of its own. It says walking times are estimates, tells the person to check hours and prices with the venue, and includes the legal drinking age notice.

partial

Fewer stops than asked for: the longest walkable route the validated venues allow. The assistant says so and shows the route. If a style was used, it offers to try without it. It does not fill the gap with other places.

needs_input

The tool needs something from the person: a location, a choice between places that share a name, a more specific address, valid coordinates, or a vibe or style it knows. The assistant asks for what meaning says is missing, then calls again. It never guesses between choices.

no_coverage

Not enough validated venues close together, or no venue records for that place. The assistant says so plainly and, where the reply lists them, may offer some places with validated venues (not a ranking). It does not suggest venues of its own.

error

A fault on our side; the result is flagged isError. The assistant tells the person it failed and tries again in a moment.

drinkedin_get_guide

Takes no input. Returns how to use the planner: some places with validated venues, the vibes that can be applied, the route styles, and the rules for relaying a plan (validated venues only, nothing invented, legal drinking age). Clients should call it first. Read-only.

Annotations

drinkedin_get_guide

Read-only, not destructive, idempotent, closed world.

drinkedin_plan_night_out

Not read-only: it saves the planned route behind plan_url. Not destructive (it only adds that copy and changes nothing else), idempotent (the same route gets the same link). Open world, because a typed address is sent to an outside geocoder (OpenStreetMap Nominatim).

Example prompts

These show how to ask. They do not say that any place is covered: the tool answers from its own data and says when it has too little.

“Plan me a bar crawl near Kennedy Plaza, Providence.”

The assistant calls drinkedin_plan_night_out with style bar_crawl and the place, as coordinates if it can look them up, otherwise as address. It relays whatever status comes back.

“Dinner and drinks near 41.8249, -71.4116.”

The assistant sends latitude 41.8249, longitude -71.4116 and style dinner_and_drinks: a restaurant first, then bars.

“A craft beer crawl near me.”

If the assistant has no location for the person it asks for one instead of guessing. Called without a place, the tool answers needs_input.

Limits

  • Rate limit. Anonymous callers get 120 tool calls a minute per client address. Over that, the server answers HTTP 429 with a Retry-After header.
  • Address lookups. The geocoding service is shared, so a lookup that is not already cached is limited to 6 a minute per client. Over that, the tool answers needs_input and asks for latitude and longitude, which need no lookup.
  • Coverage varies. Some places have many validated venues and some have few. The tool says when it is thin.
  • Nothing is booked or bought. Nothing is booked, bought or charged. The one thing kept is the route behind plan_url, so the link works (see Privacy). The tool plans a route and stops there.

Privacy and support

  • What a request carries. Your assistant sends the inputs described above to ai.drinkedin.net over HTTPS: a point or a place name, a style and a few numbers. No account, key or token is part of it. Like any server, ours keeps short-lived technical logs, such as IP address and request path, to run the service securely.
  • A typed address leaves DrinkedIn. The text is sent to the public OpenStreetMap Nominatim geocoding service to find the point. DrinkedIn does not store the text and keeps it out of its application logs. To avoid repeat lookups, the answer (the matched place and its point) is cached in memory for up to 24 hours under a one-way hash of the text. The address is the only input sent to an outside service to be looked up.
  • The plan link keeps the route, not the request. For plan_url DrinkedIn keeps a copy of the returned route for 30 days after that route was last planned, then it is deleted: the stops (the venues’ public data: name, address, category, the venue’s own coordinates, links, hours wording and sourced facts), the walks between them, the route style label, the town the stops share, and the dates it was made and expires. It keeps none of the request: no coordinates or address you sent, no place name or near label, no IP address or client details. Anyone with the link can open the page. The id in it cannot be guessed, and the same route gets the same link.
  • Policies. Privacy policy and Terms of use.
  • Support. Use the contact form.