Skip to main content
Glama

Verify Project Integrity

verify_project_integrity
Read-onlyIdempotent

Check an open Scrivener project for structural defects: missing or duplicate UUIDs, entries lacking types, and unreadable backing content. Returns a report without making repairs.

Instructions

Scan the open project for structural problems and return a read-only report: binder entries with missing, malformed, or duplicate UUIDs, entries missing their type, and text documents whose backing content is unreadable or empty. Use when a project looks corrupted, after manual edits to the .scrivx file, or before a bulk operation; not when you just want the document tree (use get_structure) or a single document (use get_document_info). This tool only detects problems and never repairs them. related: get_structure, get_document_info. Requires an open project.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
includeTrashNoWhether to also verify documents in the project trash. Defaults to true so the whole project is checked; set false to skip trashed items.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYesTrue when no error-severity issues were found.
issuesYesEvery integrity problem found; empty when the project is clean.
checkedYesNumber of binder items inspected.
summaryYesOne-line human-readable summary of the check.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, idempotentHint, destructiveHint. The description adds context: it only detects problems and never repairs them, and lists specific structural issues checked. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences plus a related tools note and prerequisite. Every sentence adds value: purpose, usage guidelines, behavioral note. Could be slightly more concise but still efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description need not explain returns. It covers purpose, usage, behavioral constraints, and parameter details are handled by schema. It is contextually complete for a read-only inspection tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a description for includeTrash. The tool description does not add additional meaning to the parameter beyond what is in the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Scan'), names the resource ('open project'), and lists exact problem types (missing/malformed/duplicate UUIDs, missing type, unreadable/empty backing content). It explicitly distinguishes from sibling tools get_structure and get_document_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear when-to-use scenarios (corrupted project, after manual edits, before bulk operation) and when-not-to (just want document tree or single document), with named alternatives. Also states prerequisite: an open project.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/writerslogic/scrivener-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server