SelectBNBs Verify
Check whether a short-term rental in South Korea is registered, using official government records.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"verify": {
"url": "https://selectbnbs.com/mcp"
}
}
}Remote endpoints
https://selectbnbs.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (2)
π’verify_listing_registration(listing_details, country, language)
Check whether a short-term rental listing (Airbnb, guesthouse, hanok stay, homestay, pension) is licensed and registered with the government, using official government registry records that are hard to access directly. SelectBNBs Verify covers South Korea today; more countries are coming. Use it when someone asks whether a Korean Airbnb or guesthouse is legal, licensed, registered or real. Pass the listing's 'Registration details' box exactly as shown (Region of issuance, Licence type, Licence number). If the traveler has not copied it yet, ask them to; a registered name or Korean road address is a weaker fallback. Returns the official permit status and its as-of date, the registered business name, permit category and address, a link to the public record page, and what the traveler should compare with their listing. One listing per call; no bulk search.
Input Schema
{
"type": "object",
"properties": {
"listing_details": {
"description": "Text copied from ONE listing, as shown: ideally the whole Registration details box (e.g. 'Region of issuance: μμΈνΉλ³μ μ’
λ‘ꡬ / Licence type: μΈκ΅μΈκ΄κ΄λμλ―Όλ°μ
/ Licence number: 2025-000006'). A registered name, Korean road address or government management number also works, less reliably.",
"maxLength": 4000,
"minLength": 1,
"title": "Listing Details",
"type": "string"
},
"country": {
"description": "ISO 3166-1 alpha-2 code of the country where the stay is, e.g. KR. Only KR (South Korea) is covered today; other countries return 'not covered yet'.",
"maxLength": 40,
"minLength": 1,
"title": "Country",
"type": "string"
},
"language": {
"default": "en",
"description": "Language for explanations and next steps: en (default), ja or zh-Hant.",
"enum": [
"en",
"ja",
"zh-Hant"
],
"title": "Language",
"type": "string"
}
},
"required": [
"listing_details",
"country"
],
"title": "verify_listing_registrationArguments"
}Output Schema
{
"type": "object",
"properties": {
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "ISO 3166-1 alpha-2 code of the stay's country.",
"title": "Country"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Result status, e.g. FOUND_ACTIVE, NOT_FOUND, AMBIGUOUS or COUNTRY_NOT_COVERED.",
"title": "Status"
},
"status_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Status Label"
},
"as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Date of the official source data, when available.",
"title": "As Of"
},
"explanation": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Explanation"
},
"identity_status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "How far the submitted details match the record, e.g. MATCH or PARTIAL.",
"title": "Identity Status"
},
"identity_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Identity Label"
},
"identity_explanation": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Identity Explanation"
},
"records": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/PermitRecordSummary"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Records"
},
"records_total": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Records Total"
},
"listing_candidates": {
"anyOf": [
{
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Listing Candidates"
},
"next_step": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Next Step"
},
"issuing_areas": {
"anyOf": [
{
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Areas whose governments use a shared management number (names only).",
"title": "Issuing Areas"
},
"issuing_areas_total": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Issuing Areas Total"
},
"language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Language"
},
"source": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Source"
},
"check_page": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Check Page"
},
"covered_countries": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Covered Countries"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"detail": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Detail"
}
},
"$defs": {
"PermitRecordSummary": {
"additionalProperties": true,
"properties": {
"registered_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Business name filed with the local government; it often differs from the listing title.",
"title": "Registered Name"
},
"registry_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Registry Type"
},
"category_en": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Category En"
},
"category_ko": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Category Ko"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Official operating status code.",
"title": "Status"
},
"status_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Status Label"
},
"status_as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Date of the official source data, when available.",
"title": "Status As Of"
},
"management_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Management Number"
},
"issuing_authority_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Issuing Authority Code"
},
"permit_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Permit Date"
},
"road_address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Road Address"
},
"road_address_romanized": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Road Address Romanized"
},
"record_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Public record page on selectbnbs.com.",
"title": "Record Url"
},
"requires_confirmation": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Requires Confirmation"
}
},
"title": "PermitRecordSummary",
"type": "object"
}
},
"additionalProperties": true,
"description": "One checked listing, COUNTRY_NOT_COVERED, or an error (error, detail, next_step).",
"title": "VerifyListingResult"
}π’get_permit_record(country, management_number, name, region)
Fetch one accommodation permit record from official South Korean government data, by its government management number (e.g. AGCV065100002024000451), optionally with its Korean issuing region, or by registered business name together with the Korean issuing region (e.g. name 'Jobs', region 'μμΈνΉλ³μ μ’ λ‘ꡬ'). SelectBNBs Verify covers South Korea today; more countries are coming. It takes one of these identifiers and does not read text copied from a listing. Returns one record (status, category, permit date, record page link, citation) or says why no single record could be chosen. Never lists or browses records.
Input Schema
{
"type": "object",
"properties": {
"country": {
"description": "ISO 3166-1 alpha-2 code of the country where the stay is, e.g. KR. Only KR (South Korea) is covered today; other countries return 'not covered yet'.",
"maxLength": 40,
"minLength": 1,
"title": "Country",
"type": "string"
},
"management_number": {
"default": "",
"description": "Full government management number, e.g. AGCV065100002024000451. Urban-homestay and hanok numbers (CDFI...) repeat across local governments; send those with region.",
"maxLength": 60,
"title": "Management Number",
"type": "string"
},
"name": {
"default": "",
"description": "Registered business name (μ¬μ
μ₯λͺ
). Send together with region.",
"maxLength": 200,
"title": "Name",
"type": "string"
},
"region": {
"default": "",
"description": "Korean issuing region in Korean, e.g. μμΈνΉλ³μ μ’
λ‘ꡬ. Required with name; optional with management_number, where it picks the local government that issued a shared number.",
"maxLength": 200,
"title": "Region",
"type": "string"
}
},
"required": [
"country"
],
"title": "get_permit_recordArguments"
}Output Schema
{
"type": "object",
"properties": {
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Country"
},
"found": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Found"
},
"matched_on": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Matched On"
},
"record": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"description": "Status, category, permit date, record page link and citation.",
"title": "Record"
},
"detail": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Detail"
},
"check_page": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Check Page"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Status"
},
"covered_countries": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Covered Countries"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"next_step": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Next Step"
}
},
"additionalProperties": true,
"description": "One permit record, a reason no single record was chosen, COUNTRY_NOT_COVERED, or an error.",
"title": "PermitLookupResult"
}Community
Evidence