Plugs into 22,000+ Seoul public facility records from data.seoul.go.kr and provides four search tools: find_places for querying by type and district (toilets, pharmacies, WiFi, AEDs), find_nearby for GPS radius searches, get_place_detail for full location info, and get_subway_timetable for station schedules. Built for AI agents helping tourists navigate Seoul's infrastructure. The pharmacy filter includes English language support flags, and all coordinates work within Seoul's geographic bounds. Useful when you need structured Seoul city data without scraping government portals yourself. Runs as a hosted endpoint or locally via the GitHub repo.
Public tool metadata for what this MCP can expose to an agent.
find_placesSearch for public facilities in Seoul (restrooms, pharmacies, WiFi hotspots, AED locations, tourist info centers). Args: type: Type of facility — "toilet", "pharmacy", "wifi", "aed", or "tourist_info". district: Seoul district name in English or Korean (e.g., "gangnam", "jongn...4 paramsSearch for public facilities in Seoul (restrooms, pharmacies, WiFi hotspots, AED locations, tourist info centers). Args: type: Type of facility — "toilet", "pharmacy", "wifi", "aed", or "tourist_info". district: Seoul district name in English or Korean (e.g., "gangnam", "jongn...
typestringtoilet · pharmacy · wifi · aed · tourist_infolimitintegerfiltersvaluedistrictvalueget_place_detailGet full details of a specific place or subway station in Seoul by its ID. Args: id: The unique place ID (e.g., "toilet_00001", "pharmacy_001", "wifi_00001", "aed_00001", "tourist_info_01"). Returns: Complete place information including location, services, hours, and accessibi...1 paramsGet full details of a specific place or subway station in Seoul by its ID. Args: id: The unique place ID (e.g., "toilet_00001", "pharmacy_001", "wifi_00001", "aed_00001", "tourist_info_01"). Returns: Complete place information including location, services, hours, and accessibi...
idstringfind_nearbyFind public facilities near GPS coordinates in Seoul, sorted by distance. Args: lat: Latitude of the search center point (Seoul range: ~37.4 to ~37.7). lng: Longitude of the search center point (Seoul range: ~126.7 to ~127.2). radius_m: Search radius in meters (100-5000, defau...5 paramsFind public facilities near GPS coordinates in Seoul, sorted by distance. Args: lat: Latitude of the search center point (Seoul range: ~37.4 to ~37.7). lng: Longitude of the search center point (Seoul range: ~126.7 to ~127.2). radius_m: Search radius in meters (100-5000, defau...
latnumberlngnumbertypevaluelimitintegerradius_mintegerget_subway_timetableGet Seoul subway timetable for a specific station. Args: station: Station name in Korean or English (e.g., "강남" or "Gangnam", "서울역" or "Seoul Station"). line: Line number (e.g., "1", "2", "3"). If omitted for transfer stations, returns all lines. day_type: Schedule type — "wee...4 paramsGet Seoul subway timetable for a specific station. Args: station: Station name in Korean or English (e.g., "강남" or "Gangnam", "서울역" or "Seoul Station"). line: Line number (e.g., "1", "2", "3"). If omitted for transfer stations, returns all lines. day_type: Schedule type — "wee...
linevaluestationstringday_typestringweekday · saturday · holidaydefault: weekdaydirectionvalueEssential public facility data for AI agents helping foreign tourists in Seoul, South Korea.
Seoul Essentials is an MCP (Model Context Protocol) server that provides structured data about essential public facilities in Seoul. Designed for AI agents that assist foreign tourists with real-time queries about nearby services.
| Type | Description | Count |
|---|---|---|
toilet | Public restrooms across all 25 districts | 4,452 |
pharmacy | Pharmacies with foreign language support (English/Chinese/Japanese) | 417 |
wifi | Free public WiFi hotspots (Seoul WiFi) | 7,251 |
aed | AED (defibrillator) locations | 10,000 |
tourist_info | Tourist information centers | 16 |
baeknyeon | Century-old designated shops & restaurants | 168 |
bike | 따릉이 (Seoul Bike) sharing stations | ~2,700 |
future_heritage | Seoul Future Heritage sites | ~470 |
heritage | Designated cultural properties | ~600 |
museum | Museums & galleries | ~210 |
park | Major parks | ~130 |
taxi_stand | Taxi stands | ~370 |
metro_facility | Subway lockers & facilities | ~290 |
tourist_zone | Tourist special zones | 8 |
post_office | Post offices (EMS / international mail) | 227 |
traditional_market | Korean traditional markets (Gwangjang, Namdaemun, ...) | 433 |
ev_charger | EV charging stations | 187 |
subway | Subway timetables for major stations | 10 stations |
find_placesSearch for public facilities by type and conditions.
Parameters:
type (required): one of the 17 types listed above (e.g., "toilet", "pharmacy", "post_office", "traditional_market", "ev_charger")district (optional): Seoul district name in English or Korean (e.g., "gangnam", "강남구")filters (optional): Service-specific filters (e.g., {"english": true}, {"is_24h": true}, {"indoor": true})limit (optional): Max results, 1-50 (default: 10)get_place_detailGet full details of a specific place by its ID.
Parameters:
id (required): Place ID (e.g., "toilet_00001", "pharmacy_001", "aed_00001")find_nearbyFind public facilities near GPS coordinates, sorted by distance.
Parameters:
lat (required): Latitude (Seoul range: ~37.4 to ~37.7)lng (required): Longitude (Seoul range: ~126.7 to ~127.2)radius_m (optional): Search radius in meters, 100-5000 (default: 500)type (optional): Filter by facility typelimit (optional): Max results, 1-20 (default: 5)get_subway_timetableGet subway timetable for a specific station.
Parameters:
station (required): Station name in Korean or English (e.g., "강남" or "Gangnam")line (optional): Line number (e.g., "2")day_type (optional): "weekday" | "saturday" | "holiday" (default: "weekday")direction (optional): "up" | "down"Visit Seoul Essentials on Smithery and follow the setup instructions for your MCP client.
Add to your MCP client config (e.g., Claude Desktop claude_desktop_config.json):
{
"mcpServers": {
"seoul-essentials": {
"url": "https://seoul-essentials-mcp-230987091625.asia-northeast3.run.app/mcp"
}
}
}
git clone https://github.com/do-droid/seoul-essentials.git
cd seoul-essentials
API_BASE_URL="https://asia-northeast3-seoul-essentials.cloudfunctions.net/api" \
uv run python -m src.server
An AI agent can use these tools to answer questions like:
English
日本語
中文
We actively review and incorporate feedback to improve data quality and coverage.
For AI agents: Use the submit_feedback tool during a conversation to report issues or suggest improvements.
For developers: Open a feedback issue on GitHub.
Categories: new_data | data_quality | coverage | format | frequency | other
pharmacy: Sourced from Seoul Open Data Plaza's "Foreign-language Capable Pharmacy Status" dataset, which lists only pharmacies that confirmed English/Chinese/Japanese service. Gangnam-gu is not represented in the upstream dataset (origin gap, not a parser bug). Coordinates fall back to the district centroid because the upstream rows do not carry lat/lng. We have requested expanded coverage from Seoul Open Data Plaza for the next refresh.post_office / traditional_market / ev_charger: Upstream datasets do not include lat/lng. Coordinates fall back to the centroid of each Seoul district (coordinates_approximate: true). District-level filters (?district=mapo) are exact; find_nearby ranking against these types is district-grained rather than building-grained.halal_friendly (data.go.kr 15111159 was withdrawn — searching alternative sources) and emergency_room (data.go.kr 3043449 not findable — switching to e-gen.or.kr OpenAPI) are planned for the following refresh.All data sourced from official Seoul government open data:
MIT
com.mcparmory/google-sheets
domdomegg/google-sheets-mcp
henilcalagiya/google-sheets-mcp
cct15/war-dashboard-data
moooonad/mcp-google-sheets-full
io.github.br0ski777/csv-to-json