Skip to main content
Glama

get_hook

Read-only

Fetch one bought hook in full, including its parsed score. Free (WP-G).

    Account-scoped: a foreign or unknown id is not_found (no existence leak). Args:
    hook_id (from a generate/batch/remix response or list_hooks), api_key. Returns
    {hook_id, text, archetype, claim_type, mode, platform, topic, score_total, score,
    prompt_version, request_id, created_at, outcomes:[...], outcome_summary:{count,
    max_views, avg_views}}. Report results with report_outcome. Errors: unauthorized,
    not_found, rate_limited.
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
api_keyNoAPI key for this call. Omit to fall back to the Authorization: Bearer / X-API-Key request header (streamable-HTTP only), then the VHGENGINE_API_KEY env var (the stdio default). No key resolvable -> unauthorized.
hook_idYesThe hook's id, as returned in the `hooks[].hook_id` of a generate/batch/remix response or by list_hooks. Account-scoped: an id you do not own reads as not_found.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNoEngine that produced it (instant|smart|research|remix).
textNoThe hook line.
scoreNoPer-dimension score breakdown.
topicNoTopic it was generated from.
hook_idNoThe hook's id.
outcomesNoOutcomes you have reported against this hook.
platformNoPlatform it was written for.
archetypeNoArchetype it was written in.
claim_typeNoWhat kind of claim it makes.
created_atNoWhen it was generated, ISO-8601 UTC.
request_idNoThe generate call that bought it.
score_totalNoTotal craft score.
prompt_versionNoPrompt build that produced it, for reproducibility.
outcome_summaryNo{count, max_views, avg_views} over those outcomes.
contains_placeholder_statNotrue when the text carries an unverified number you must replace before posting (e.g. '90% of people'). Treat as an edit-before-use flag.

TDQS

A4.2/5.0
Behavior5/5

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

Even though readOnlyHint annotation already signals a safe read, the description adds meaningful behavior: account-scoping with no existence leak, error types (unauthorized, not_found, rate_limited), cost (free), and a hint to report results via report_outcome. These details go well beyond the annotation.

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?

The description is well-organized with a clear purpose sentence followed by scoping, args, returns, and errors. It is slightly redundant with the schema's parameter descriptions, but each section carries useful information and the overall length is appropriate for the tool.

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?

The description covers the full context: what the tool does, how to obtain the required ID, account scoping behavior, return structure, error conditions, and a follow-up action (report_outcome). Even with an output schema present, the explicit return field list and error handling make this highly complete.

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?

The input schema already has 100% coverage for both parameters, with detailed descriptions for hook_id and api_key. The description merely restates the parameter sources without adding new meaning, so it meets the baseline but does not exceed it.

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?

Description starts with 'Fetch one bought hook in full, including its parsed score,' which precisely states the action and resource. It distinguishes from sibling list_hooks (which lists) and score_hook (which scores) by focusing on retrieval of a single detailed hook.

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

Usage Guidelines3/5

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

The description tells you where hook_id comes from and that the call is free, but does not explicitly discuss when to use this versus alternatives like list_hooks or score_hook. Usage is inferred rather than directly guided.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation5/5

Each tool targets a distinct resource and action, e.g., signup vs. delete_account, create_key vs. revoke_key, generate_hooks vs. score_hook. Even similar tools like generate_hooks and generate_hooks_batch are clearly differentiated by single vs. batch operation.

Naming Consistency5/5

All 32 tools use a consistent verb_noun snake_case pattern (e.g., add_credits, create_checkout, revoke_key, list_outcomes) with no mixing of camelCase or other conventions.

Tool Count4/5

32 tools is slightly above the typical 15-tool range, but the domain is broad (account, keys, webhooks, generation, scoring, jobs, outcomes), and each tool has a specific purpose. No tools seem redundant.

Completeness4/5

The tool surface covers most lifecycle operations: CRUD for accounts/keys/webhooks, generation/scoring with batch and async variants, outcomes reporting, and auxiliary tools. Missing explicit delete for hooks (expire automatically) and some update operations, but no critical gaps.

Resources