read_page
Read the full content of a Plainwork page by ID.
Last updated
read_page
Fetch the full content of a single page by its ID, including the markdown body, tags, collection membership, and agent attribution.
Use this to follow up on query_pages or search_pages results (which
return short excerpts) when the agent needs the full body.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | The ID of the page to read. |
Returns
A JSON object:
| Field | Type | Description |
|---|---|---|
id | string | Page ID. |
title | string | Page title. |
body | string | Full markdown body. |
tags | string[] | Attached tags. |
collectionId | string | Owning collection. |
folderId | string | null | Folder within the collection, or null for the collection root. |
linkedNoteIds | string[] | IDs of pages this one links to. |
createdAt | string (ISO) | Creation timestamp. |
updatedAt | string (ISO) | Last-edit timestamp. |
createdByAgentId | string | null | Agent that created this page, if any. |
lastEditedByAgentId | string | null | Agent that made the last edit, if any. |
Example
{
"tool": "read_page",
"arguments": {
"page_id": "note_xyz789"
}
}
Sample response (abbreviated):
{
"id": "note_xyz789",
"title": "Standup 2026-04-10",
"body": "## Attendees\n- Alice\n- Bob\n\n## Notes\n- Shipped MCP docs",
"tags": ["standup"],
"collectionId": "col_a1b2c3",
"folderId": null,
"linkedNoteIds": [],
"createdAt": "2026-04-10T09:00:00Z",
"updatedAt": "2026-04-10T09:15:00Z",
"createdByAgentId": "agent_claude_desktop",
"lastEditedByAgentId": null
}