Skip to main content
Glama
zackscriven

ghl-mcp-server-v2

by zackscriven

ghl_object_restore_note

Restores a note by ID to a record in a location; set force restore to override conflicts.

Instructions

Restore Note Endpoint: POST /notes/{id}/restore (Version header: v3; source: v3/objects-v3.json) OAuth scopes: notes.write

Input Schema

NameRequiredDescriptionDefault
idYesNote Id
bodyYesRequest body (schema carried verbatim from the official OpenAPI spec).
locationIdYesLocation Id

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already state readOnly=false, destructive=false, idempotent=false and openWorld=true, so safety is covered. The description adds genuinely useful non-schema context – the OAuth scope notes.write and the v3 version header – but says nothing about side effects, conflict behavior, or what state the note ends up in.

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?

Very short and front-loaded: verb+resource first, then endpoint and scope. No filler, though the endpoint line reads as spec-paste rather than agent guidance.

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

Completeness2/5

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

This is a mutating tool with a nested request body, no output schema, and non-idempotent semantics, yet the description omits what the call returns, what conflicts forceRestore resolves, and what errors to expect – leaving the agent to infer core behavior.

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 description coverage is 100%, including nested body fields (model, recordId, forceRestore), so the schema carries parameter meaning. The description adds no parameter-level insight, which is acceptable at this coverage level but not more than a baseline.

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

Purpose3/5

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

The verb+resource ('Restore Note') and the endpoint path identify the operation, but the description never explains what 'restore' actually means here (undelete a soft-deleted note? re-attach a note to a record?). It is distinguishable from ghl_object_delete_note and ghl_object_update_note by name only, not by explanation.

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

Usage Guidelines2/5

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

There is no guidance on when to use restore versus update_note, create_note, or update_note_relations, nor any precondition such as the note needing to be previously deleted.

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

Deploy Server

Other Tools