BKK Radar MCP
An official MCP server providing read-only access to Bangkok condominium rental and sale data. It allows AI agents to search for condos by budget, station, or walk time, retrieve specific listing details, and access market statistics like median rents by district or station.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://bkkradar.com/api/mcpWhat you can do with it
- Search for condos by budget, bedrooms, station, or walk time
- Retrieve detailed listing information including furnishing and deposit
- Get median rent statistics for specific BTS/MRT stations or districts
- Find nearby condos around a specific office or address
Source and maintenance
Protocol and capabilities
- Server
- bkkradar 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 5 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
5 advertised
search_condos — Search condos in Bangkok
Search condos for rent or sale in Bangkok by budget (THB), bedrooms, BTS/MRT station or line, walking minutes to the station, district and size. Returns the matching listings with their bkkradar.com links and the same search on the map. Show the links to the user.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"en",
"fr",
"th",
"ja",
"zh"
],
"type": "string",
"default": "en",
"description": "Language of the titles and links: en, fr, th, ja (Japanese) or zh (simplified Chinese). Use the user's language."
},
"line": {
"type": "string",
"maxLength": 40,
"minLength": 2,
"description": "Line code or name (\"BTS-SUK\", \"BTS Sukhumvit\", \"MRT Blue\"), or a whole network: \"BTS\", \"MRT\"."
},
"sort": {
"enum": [
"recent",
"price",
"walk"
],
"type": "string",
"default": "recent",
"description": "recent (newest first), price (cheapest first) or walk (closest to the station first)."
},
"type": {
"enum": [
"rent",
"sale"
],
"type": "string",
"default": "rent",
"description": "rent (monthly price) or sale (total price)."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Listings to return, 20 by default, 50 at most."
},
"station": {
"type": "string",
"maxLength": 80,
"minLength": 2,
"description": "BTS/MRT station name or code, e.g. \"Asok\", \"Phrom Phong\", \"BTS-CEN\"."
},
"bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "Exact number of bedrooms; 0 = studio."
},
"district": {
"type": "string",
"maxLength": 80,
"minLength": 2,
"description": "District (khet) or neighbourhood: \"Watthana\", \"Sathorn\", \"Thonglor\", \"Ari\"."
},
"max_price": {
"type": "integer",
"maximum": 2000000000,
"minimum": 0,
"description": "Maximum price in THB (per month for rent)."
},
"min_price": {
"type": "integer",
"maximum": 2000000000,
"minimum": 0,
"description": "Minimum price in THB."
},
"min_bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "At least this many bedrooms."
},
"min_size_sqm": {
"type": "number",
"maximum": 10000,
"minimum": 1,
"description": "Living area, at least, in m²."
},
"property_kind": {
"enum": [
"condo",
"apartment",
"house",
"townhouse",
"room",
"any"
],
"type": "string",
"default": "condo",
"description": "Kind of property; any for all."
},
"max_lease_months": {
"type": "integer",
"maximum": 6,
"minimum": 1,
"description": "Rentals that accept a lease this short, at most, in months (1 to 6): 6 for a DTV stay of 180 days. Prices are then that lease's monthly rent when the post gives it, often higher."
},
"max_walk_minutes": {
"type": "integer",
"maximum": 60,
"minimum": 1,
"description": "Walk to the listing's nearest BTS/MRT station, at most, in minutes (straight line at 80 m a minute). With a station or line and no value: 12 (1 km)."
}
},
"additionalProperties": false
}{
"title": "Search condos in Bangkok",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_listing — Get a listing
Details of one listing found by search_condos or nearby_condos: price, size, bedrooms, furnishing, pets, deposit, minimum lease, amenities, station and walk, and a warning when the post asks for money before a viewing. Returns its bkkradar.com link.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"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)$",
"description": "Listing id, from search_condos or nearby_condos."
},
"lang": {
"enum": [
"en",
"fr",
"th",
"ja",
"zh"
],
"type": "string",
"default": "en",
"description": "Language of the titles and links: en, fr, th, ja (Japanese) or zh (simplified Chinese). Use the user's language."
}
},
"additionalProperties": false
}{
"title": "Get a listing",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_stations — List BTS/MRT stations with rents
Bangkok's BTS, MRT and Airport Link stations with the number of rentals within 1 km and the median monthly rent by bedrooms (studio, 1, 2, 3+), busiest first, optionally for one line. Each station has its bkkradar.com page.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"en",
"fr",
"th",
"ja",
"zh"
],
"type": "string",
"default": "en",
"description": "Language of the titles and links: en, fr, th, ja (Japanese) or zh (simplified Chinese). Use the user's language."
},
"line": {
"type": "string",
"maxLength": 40,
"minLength": 2,
"description": "Line code or name (\"BTS-SUK\", \"BTS Sukhumvit\", \"MRT Blue\"), or a whole network: \"BTS\", \"MRT\"."
},
"limit": {
"type": "integer",
"default": 40,
"maximum": 200,
"minimum": 1,
"description": "Stations to return, the busiest first: 40 by default, 200 at most."
}
},
"additionalProperties": false
}{
"title": "List BTS/MRT stations with rents",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}area_stats — Median prices of an area
Median rent or sale price and number of listings for one BTS/MRT station (within 1 km), one line, or one district or neighbourhood of Bangkok, overall and by bedrooms. Use it to tell whether a price is fair. Returns the bkkradar.com page.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lang": {
"enum": [
"en",
"fr",
"th",
"ja",
"zh"
],
"type": "string",
"default": "en",
"description": "Language of the titles and links: en, fr, th, ja (Japanese) or zh (simplified Chinese). Use the user's language."
},
"line": {
"type": "string",
"maxLength": 40,
"minLength": 2,
"description": "Line code or name (\"BTS-SUK\", \"BTS Sukhumvit\", \"MRT Blue\"), or a whole network: \"BTS\", \"MRT\"."
},
"type": {
"enum": [
"rent",
"sale"
],
"type": "string",
"default": "rent",
"description": "rent (monthly price) or sale (total price)."
},
"station": {
"type": "string",
"maxLength": 80,
"minLength": 2,
"description": "BTS/MRT station name or code, e.g. \"Asok\", \"Phrom Phong\", \"BTS-CEN\"."
},
"bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "Also give the median for this number of bedrooms; 0 = studio, 3 or more = the 3+ group."
},
"district": {
"type": "string",
"maxLength": 80,
"minLength": 2,
"description": "District (khet) or neighbourhood: \"Watthana\", \"Sathorn\", \"Thonglor\", \"Ari\"."
}
},
"additionalProperties": false
}{
"title": "Median prices of an area",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}nearby_condos — Condos near a place
Condos around a point in Bangkok, such as an office, a school, a residence or a station, given as lat/lng or as a place name or address. Same filters as search_condos plus radius_km, sorted by distance or by walk to a station. Returns bkkradar.com links.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"lat": {
"type": "number",
"maximum": 14.2,
"minimum": 13.4,
"description": "Latitude of the point (Bangkok area)."
},
"lng": {
"type": "number",
"maximum": 101,
"minimum": 100.2,
"description": "Longitude of the point (Bangkok area)."
},
"lang": {
"enum": [
"en",
"fr",
"th",
"ja",
"zh"
],
"type": "string",
"default": "en",
"description": "Language of the titles and links: en, fr, th, ja (Japanese) or zh (simplified Chinese). Use the user's language."
},
"sort": {
"enum": [
"distance",
"station_walk"
],
"type": "string",
"default": "distance",
"description": "distance (closest to the point first) or station_walk (closest to a station first)."
},
"type": {
"enum": [
"rent",
"sale"
],
"type": "string",
"default": "rent",
"description": "rent (monthly price) or sale (total price)."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Listings to return, 20 by default, 50 at most."
},
"place": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Address or place in Bangkok instead of lat/lng: an office, a school, a station, a residence."
},
"bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "Exact number of bedrooms; 0 = studio."
},
"max_price": {
"type": "integer",
"maximum": 2000000000,
"minimum": 0,
"description": "Maximum price in THB (per month for rent)."
},
"min_price": {
"type": "integer",
"maximum": 2000000000,
"minimum": 0,
"description": "Minimum price in THB."
},
"radius_km": {
"type": "number",
"default": 2,
"maximum": 10,
"minimum": 0.2,
"description": "Distance from the point, at most, in km (straight line)."
},
"min_bedrooms": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "At least this many bedrooms."
},
"min_size_sqm": {
"type": "number",
"maximum": 10000,
"minimum": 1,
"description": "Living area, at least, in m²."
},
"property_kind": {
"enum": [
"condo",
"apartment",
"house",
"townhouse",
"room",
"any"
],
"type": "string",
"default": "condo",
"description": "Kind of property; any for all."
},
"max_lease_months": {
"type": "integer",
"maximum": 6,
"minimum": 1,
"description": "Rentals that accept a lease this short, at most, in months (1 to 6): 6 for a DTV stay of 180 days. Prices are then that lease's monthly rent when the post gives it, often higher."
},
"max_walk_minutes": {
"type": "integer",
"maximum": 60,
"minimum": 1,
"description": "Walk to the listing's nearest BTS/MRT station, at most, in minutes (straight line at 80 m a minute). With a station or line and no value: 12 (1 km)."
}
},
"additionalProperties": false
}{
"title": "Condos near a place",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1712 ms
- 95th percentile latency
- 1712 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1712 ms · metadata changed · 5 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http bkk-radar-mcp https://bkkradar.com/api/mcpCodex
codex mcp add bkk-radar-mcp --url https://bkkradar.com/api/mcpCursor
{
"mcpServers": {
"bkk-radar-mcp": {
"url": "https://bkkradar.com/api/mcp"
}
}
}Cline
{
"mcpServers": {
"bkk-radar-mcp": {
"type": "streamableHttp",
"url": "https://bkkradar.com/api/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"bkk-radar-mcp": {
"type": "http",
"url": "https://bkkradar.com/api/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http bkk-radar-mcp https://bkkradar.com/api/mcpClaude Desktop
{
"mcpServers": {
"bkk-radar-mcp": {
"url": "https://bkkradar.com/api/mcp"
}
}
}Windsurf
{
"mcpServers": {
"bkk-radar-mcp": {
"serverUrl": "https://bkkradar.com/api/mcp"
}
}
}Let your agent find its tools
Find servers like BKK Radar MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other data and analytics servers
Do you run BKK Radar MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.