Read documentation page
Read the title, headings, and bounded structured content of a published GoVisit documentation page, or select one section by its heading anchor.
What it returns
The reader inspects only the currently rendered documentation page. It does not fetch linked documents; a selected section uses its heading anchor and may report truncation.
For the full current contract and linked context, see the WebMCP manifest and the WebMCP overview.
WebMCP
Input schema
{
"type": "object",
"properties": {
"section": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Optional heading anchor identifying one published section."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"content": {
"type": "array"
},
"truncated": {
"type": "boolean"
}
},
"required": [
"content",
"truncated"
]
}
},
"required": [
"data"
]
}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_documentation_page');
if (!tool) throw new Error('get_documentation_page 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."
},
"section": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Optional heading anchor identifying one published section."
}
},
"additionalProperties": false,
"required": [
"pagePath"
]
}Successful response schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"content": {
"type": "array"
},
"truncated": {
"type": "boolean"
}
},
"required": [
"content",
"truncated"
]
}
},
"required": [
"data"
]
}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_documentation_page. 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_documentation_page \
-H 'Content-Type: application/json' \
--data '{"pagePath": "/en/docs/developers/overview"}'
JavaScript
const response = await fetch("https://govisit.ai/api/tools/v1/get_documentation_page", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"pagePath": "/en/docs/developers/overview"
})
});
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_documentation_page",
data=json.dumps({
"pagePath": "/en/docs/developers/overview"
}).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."
},
"section": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Optional heading anchor identifying one published section."
}
},
"additionalProperties": false,
"required": [
"pagePath"
]
}Structured result schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"content": {
"type": "array"
},
"truncated": {
"type": "boolean"
}
},
"required": [
"content",
"truncated"
]
}
},
"required": [
"data"
]
}Connect a Streamable HTTP MCP client to https://govisit.ai/mcp and call get_documentation_page. 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_documentation_page",
arguments: {"pagePath": "/en/docs/developers/overview"},
});
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."
},
"section": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Optional heading anchor identifying one published section."
}
},
"additionalProperties": false,
"required": [
"pagePath"
]
}Tool output schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"content": {
"type": "array"
},
"truncated": {
"type": "boolean"
}
},
"required": [
"content",
"truncated"
]
}
},
"required": [
"data"
]
}After installing GoVisit skills, ask your assistant to use govisit-get-documentation-page. The skill calls the GoVisit HTTP API.
Open a GoVisit documentation article or find one with Search documentation. Copy its link.
Use GoVisit to read [documentation page URL]. Explain the guidance relevant to [my question] and link to the article.
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.