Get place overview

Read a place’s published overview, classifications, and operating status, with source and freshness details where available for evaluating the profile.

What it returns

The response includes owner, chain and operator as organization names, with null for each unknown value. Owner identifies the property owner; chain identifies the brand’s organization (for example, Hilton); operator identifies the company managing the facility (for example, Apex Alliance). Profile management by inHotel is separate and does not fill these fields.

This returns the published overview, not all profile sections or spatial details. Use visit facts or a named section for those fields. Operating status describes whether the place operates, not whether it is open now.

The overview includes current published classifications with their subject, scheme and value codes, validity dates, and available evidence. Hotel stars describe a formal classification; they are not guest-review scores. Credentials belonging to an operator or organization retain that recipient. Missing classifications do not mean a zero-star rating.

Evidence assessments attach only through an explicit classification evidence reference. A scheme name or certificate URL alone does not establish evidence strength. When no associated assessment is supplied, evidence is unavailable; a supplied certificate link may still be inspected.

For the full current contract and linked context, see the WebMCP manifest and the WebMCP overview.

WebMCP

Input schema
{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
Output schema
{
  "type": "object",
  "description": "Successful read of the sanitized published page snapshot. Unsupported sections reject the invocation.",
  "properties": {
    "schemaVersion": {
      "const": "1"
    },
    "pageType": {
      "const": "place"
    },
    "pageId": {
      "type": "string"
    },
    "locale": {
      "type": "string"
    },
    "canonicalUrl": {
      "type": "string"
    },
    "contentVersion": {
      "type": [
        "string",
        "number",
        "null"
      ]
    },
    "updatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshness": {
      "type": "object",
      "properties": {
        "contentVersion": {
          "type": [
            "string",
            "number",
            "null"
          ]
        },
        "updatedAt": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "contentVersion",
        "updatedAt"
      ],
      "additionalProperties": false
    },
    "completeness": {
      "const": "page-published-section"
    },
    "data": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "category": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "operatingStatus": {
          "type": "object",
          "properties": {
            "code": {
              "type": [
                "string",
                "null"
              ]
            },
            "label": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "code",
            "label"
          ],
          "additionalProperties": false
        },
        "lifecycle": {
          "type": "object"
        },
        "address": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "addresses": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "city": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "country": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "phones": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "websites": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "website": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "email": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "classifications": {
          "type": "array",
          "description": "Current page-published classifications. Scheme codes define numeric scales; evidence is the exact linked page assessment or null, never inferred from a certificate URL.",
          "items": {
            "type": "object",
            "properties": {
              "subject": {
                "type": "string",
                "enum": [
                  "place",
                  "facility",
                  "organizational_unit",
                  "organization"
                ]
              },
              "schemeCode": {
                "type": "string"
              },
              "schemeName": {
                "type": "string"
              },
              "valueCode": {
                "type": "string"
              },
              "label": {
                "type": "string"
              },
              "numericValue": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "status": {
                "const": "active"
              },
              "schemeVersion": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validFrom": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validTo": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "verificationUrl": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "evidence": {
                "type": [
                  "object",
                  "null"
                ]
              }
            },
            "required": [
              "subject",
              "schemeCode",
              "valueCode",
              "label",
              "status",
              "evidence"
            ],
            "additionalProperties": true
          }
        },
        "owner": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the property-owning organization, or null when unknown."
        },
        "chain": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the brand's chain organization, or null when unknown."
        },
        "operator": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the company that manages the physical facility, distinct from profile management, or null when unknown."
        }
      },
      "required": [
        "id",
        "name",
        "category",
        "summary",
        "description",
        "operatingStatus",
        "lifecycle",
        "owner",
        "chain",
        "operator"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "pageType",
    "pageId",
    "locale",
    "canonicalUrl",
    "contentVersion",
    "updatedAt",
    "freshness",
    "completeness",
    "data"
  ],
  "additionalProperties": false
}
const modelContext = document.modelContext;
if (!modelContext) throw new Error("This browser does not expose WebMCP on this page.");
const tool = (await modelContext.getTools()).find((entry) => entry.name === 'get_place_overview');
if (!tool) throw new Error('get_place_overview is not registered for the current page.');
const result = await modelContext.executeTool(tool, {});
console.log(result);

Registration is page-scoped. Check getTools() before calling.

HTTP API

Request body schema
{
  "type": "object",
  "properties": {
    "pagePath": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1000,
      "description": "Canonical GoVisit page path supplying this tool's published context; no origin, query or fragment."
    }
  },
  "additionalProperties": false,
  "required": [
    "pagePath"
  ]
}
Successful response schema
{
  "type": "object",
  "description": "Successful read of the sanitized published page snapshot. Unsupported sections reject the invocation.",
  "properties": {
    "schemaVersion": {
      "const": "1"
    },
    "pageType": {
      "const": "place"
    },
    "pageId": {
      "type": "string"
    },
    "locale": {
      "type": "string"
    },
    "canonicalUrl": {
      "type": "string"
    },
    "contentVersion": {
      "type": [
        "string",
        "number",
        "null"
      ]
    },
    "updatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshness": {
      "type": "object",
      "properties": {
        "contentVersion": {
          "type": [
            "string",
            "number",
            "null"
          ]
        },
        "updatedAt": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "contentVersion",
        "updatedAt"
      ],
      "additionalProperties": false
    },
    "completeness": {
      "const": "page-published-section"
    },
    "data": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "category": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "operatingStatus": {
          "type": "object",
          "properties": {
            "code": {
              "type": [
                "string",
                "null"
              ]
            },
            "label": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "code",
            "label"
          ],
          "additionalProperties": false
        },
        "lifecycle": {
          "type": "object"
        },
        "address": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "addresses": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "city": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "country": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "phones": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "websites": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "website": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "email": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "classifications": {
          "type": "array",
          "description": "Current page-published classifications. Scheme codes define numeric scales; evidence is the exact linked page assessment or null, never inferred from a certificate URL.",
          "items": {
            "type": "object",
            "properties": {
              "subject": {
                "type": "string",
                "enum": [
                  "place",
                  "facility",
                  "organizational_unit",
                  "organization"
                ]
              },
              "schemeCode": {
                "type": "string"
              },
              "schemeName": {
                "type": "string"
              },
              "valueCode": {
                "type": "string"
              },
              "label": {
                "type": "string"
              },
              "numericValue": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "status": {
                "const": "active"
              },
              "schemeVersion": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validFrom": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validTo": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "verificationUrl": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "evidence": {
                "type": [
                  "object",
                  "null"
                ]
              }
            },
            "required": [
              "subject",
              "schemeCode",
              "valueCode",
              "label",
              "status",
              "evidence"
            ],
            "additionalProperties": true
          }
        },
        "owner": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the property-owning organization, or null when unknown."
        },
        "chain": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the brand's chain organization, or null when unknown."
        },
        "operator": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the company that manages the physical facility, distinct from profile management, or null when unknown."
        }
      },
      "required": [
        "id",
        "name",
        "category",
        "summary",
        "description",
        "operatingStatus",
        "lifecycle",
        "owner",
        "chain",
        "operator"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "pageType",
    "pageId",
    "locale",
    "canonicalUrl",
    "contentVersion",
    "updatedAt",
    "freshness",
    "completeness",
    "data"
  ],
  "additionalProperties": false
}
Error response schema
{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "const": "1"
    },
    "completeness": {
      "enum": [
        "invalid-input",
        "not-found",
        "unavailable"
      ]
    },
    "error": {
      "type": "string"
    }
  },
  "required": [
    "schemaVersion",
    "completeness",
    "error"
  ],
  "additionalProperties": false
}

Send a JSON POST to https://govisit.ai/api/tools/v1/get_place_overview. See the HTTP API guide for shared conventions.

Use the pathname from an actual canonical GoVisit link, including its language prefix. The sample page path illustrates the shape; replace it with your selected published page. HTTP inputs add pagePath to the browser arguments. No cookies, browser session or inferred location are required. Queries, fragments, origins and cache-refresh flags are rejected. Language comes from the page path.

curl

curl --silent --show-error https://govisit.ai/api/tools/v1/get_place_overview \
  -H 'Content-Type: application/json' \
  --data '{"pagePath": "/en/places/00000000-0000-4000-8000-000000000001"}'

JavaScript

const response = await fetch("https://govisit.ai/api/tools/v1/get_place_overview", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
  "pagePath": "/en/places/00000000-0000-4000-8000-000000000001"
})
});
const result = await response.json();
if (!response.ok) throw new Error(`${response.status}: ${result.error || "unavailable"}`);
console.log(result);

Python

import json
from urllib.error import HTTPError
from urllib.request import Request, urlopen

request = Request(
    "https://govisit.ai/api/tools/v1/get_place_overview",
    data=json.dumps({
  "pagePath": "/en/places/00000000-0000-4000-8000-000000000001"
}).encode(),
    headers={"Content-Type": "application/json"},
    method="POST",
)
try:
    with urlopen(request) as response:
        result = json.load(response)
except HTTPError as error:
    result = json.load(error)
    raise RuntimeError(f"{error.code}: {result.get('error', 'unavailable')}") from error
print(result)

Successful results match the browser tool's published page projection, including its freshness and scope limits. The adapter uses GoVisit's existing page caches; it does not provide a fresh live availability check. An absent page returns 404; an unsupported section returns 400; unavailable or malformed page context returns 503. See Reliability for errors and shared request limits.

MCP

Tool arguments schema
{
  "type": "object",
  "properties": {
    "pagePath": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1000,
      "description": "Canonical GoVisit page path supplying this tool's published context; no origin, query or fragment."
    }
  },
  "additionalProperties": false,
  "required": [
    "pagePath"
  ]
}
Structured result schema
{
  "type": "object",
  "description": "Successful read of the sanitized published page snapshot. Unsupported sections reject the invocation.",
  "properties": {
    "schemaVersion": {
      "const": "1"
    },
    "pageType": {
      "const": "place"
    },
    "pageId": {
      "type": "string"
    },
    "locale": {
      "type": "string"
    },
    "canonicalUrl": {
      "type": "string"
    },
    "contentVersion": {
      "type": [
        "string",
        "number",
        "null"
      ]
    },
    "updatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshness": {
      "type": "object",
      "properties": {
        "contentVersion": {
          "type": [
            "string",
            "number",
            "null"
          ]
        },
        "updatedAt": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "contentVersion",
        "updatedAt"
      ],
      "additionalProperties": false
    },
    "completeness": {
      "const": "page-published-section"
    },
    "data": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "category": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "operatingStatus": {
          "type": "object",
          "properties": {
            "code": {
              "type": [
                "string",
                "null"
              ]
            },
            "label": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "code",
            "label"
          ],
          "additionalProperties": false
        },
        "lifecycle": {
          "type": "object"
        },
        "address": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "addresses": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "city": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "country": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "phones": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "websites": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "website": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "email": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "classifications": {
          "type": "array",
          "description": "Current page-published classifications. Scheme codes define numeric scales; evidence is the exact linked page assessment or null, never inferred from a certificate URL.",
          "items": {
            "type": "object",
            "properties": {
              "subject": {
                "type": "string",
                "enum": [
                  "place",
                  "facility",
                  "organizational_unit",
                  "organization"
                ]
              },
              "schemeCode": {
                "type": "string"
              },
              "schemeName": {
                "type": "string"
              },
              "valueCode": {
                "type": "string"
              },
              "label": {
                "type": "string"
              },
              "numericValue": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "status": {
                "const": "active"
              },
              "schemeVersion": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validFrom": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validTo": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "verificationUrl": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "evidence": {
                "type": [
                  "object",
                  "null"
                ]
              }
            },
            "required": [
              "subject",
              "schemeCode",
              "valueCode",
              "label",
              "status",
              "evidence"
            ],
            "additionalProperties": true
          }
        },
        "owner": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the property-owning organization, or null when unknown."
        },
        "chain": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the brand's chain organization, or null when unknown."
        },
        "operator": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the company that manages the physical facility, distinct from profile management, or null when unknown."
        }
      },
      "required": [
        "id",
        "name",
        "category",
        "summary",
        "description",
        "operatingStatus",
        "lifecycle",
        "owner",
        "chain",
        "operator"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "pageType",
    "pageId",
    "locale",
    "canonicalUrl",
    "contentVersion",
    "updatedAt",
    "freshness",
    "completeness",
    "data"
  ],
  "additionalProperties": false
}

Connect a Streamable HTTP MCP client to https://govisit.ai/mcp and call get_place_overview. Use the HTTP API arguments shown above, including the canonical pagePath. Replace example paths with the published page you want to read.

const result = await client.callTool({
  name: "get_place_overview",
  arguments: {"pagePath": "/en/places/00000000-0000-4000-8000-000000000001"},
});
if (result.isError) throw new Error(result.content[0]?.text ?? "GoVisit tool call failed");
console.log(result.structuredContent);

Agent Skills

Tool input schema
{
  "type": "object",
  "properties": {
    "pagePath": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1000,
      "description": "Canonical GoVisit page path supplying this tool's published context; no origin, query or fragment."
    }
  },
  "additionalProperties": false,
  "required": [
    "pagePath"
  ]
}
Tool output schema
{
  "type": "object",
  "description": "Successful read of the sanitized published page snapshot. Unsupported sections reject the invocation.",
  "properties": {
    "schemaVersion": {
      "const": "1"
    },
    "pageType": {
      "const": "place"
    },
    "pageId": {
      "type": "string"
    },
    "locale": {
      "type": "string"
    },
    "canonicalUrl": {
      "type": "string"
    },
    "contentVersion": {
      "type": [
        "string",
        "number",
        "null"
      ]
    },
    "updatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshness": {
      "type": "object",
      "properties": {
        "contentVersion": {
          "type": [
            "string",
            "number",
            "null"
          ]
        },
        "updatedAt": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "contentVersion",
        "updatedAt"
      ],
      "additionalProperties": false
    },
    "completeness": {
      "const": "page-published-section"
    },
    "data": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "category": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "operatingStatus": {
          "type": "object",
          "properties": {
            "code": {
              "type": [
                "string",
                "null"
              ]
            },
            "label": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "code",
            "label"
          ],
          "additionalProperties": false
        },
        "lifecycle": {
          "type": "object"
        },
        "address": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "addresses": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "city": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "country": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "phones": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "websites": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "website": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "email": {
          "description": "Published JSON value; optional field shapes depend on the page projection."
        },
        "classifications": {
          "type": "array",
          "description": "Current page-published classifications. Scheme codes define numeric scales; evidence is the exact linked page assessment or null, never inferred from a certificate URL.",
          "items": {
            "type": "object",
            "properties": {
              "subject": {
                "type": "string",
                "enum": [
                  "place",
                  "facility",
                  "organizational_unit",
                  "organization"
                ]
              },
              "schemeCode": {
                "type": "string"
              },
              "schemeName": {
                "type": "string"
              },
              "valueCode": {
                "type": "string"
              },
              "label": {
                "type": "string"
              },
              "numericValue": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "status": {
                "const": "active"
              },
              "schemeVersion": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validFrom": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "validTo": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "verificationUrl": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "evidence": {
                "type": [
                  "object",
                  "null"
                ]
              }
            },
            "required": [
              "subject",
              "schemeCode",
              "valueCode",
              "label",
              "status",
              "evidence"
            ],
            "additionalProperties": true
          }
        },
        "owner": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the property-owning organization, or null when unknown."
        },
        "chain": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the brand's chain organization, or null when unknown."
        },
        "operator": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the company that manages the physical facility, distinct from profile management, or null when unknown."
        }
      },
      "required": [
        "id",
        "name",
        "category",
        "summary",
        "description",
        "operatingStatus",
        "lifecycle",
        "owner",
        "chain",
        "operator"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "pageType",
    "pageId",
    "locale",
    "canonicalUrl",
    "contentVersion",
    "updatedAt",
    "freshness",
    "completeness",
    "data"
  ],
  "additionalProperties": false
}

After installing GoVisit skills, ask your assistant to use govisit-get-place-overview. The skill calls the GoVisit HTTP API.

Use Search places or open the place on GoVisit. Check its name and location, then copy the profile link.

Use GoVisit to read the overview of [place profile URL]. Summarize its published business information, identify gaps, and include the profile link.

Skill package and contract

Skill source · Complete package · HTTP contract

The complete package includes its MIT license and versioned contract. GoVisit data remains subject to the GoVisit Data Use License.

Last updated: November 7, 2026