Skip to main content
Glama

investigate_url

Idempotent

Investigate a supplied public URL and create a tenant-owned case. First create_quote(action='investigate', input={rights_holder_id, work_id, delegation_id, url}). Results include case_id, evidence_id, page metadata, registrar/network attribution, supported contacts and retrieval limitations. CDN visibility does not prove the origin host. Investigation does not send a notice. Authenticate with the matching action scope. Reserves the quoted maximum from prepaid credits and returns operation_id; poll get_operation for results. Sandbox execution is simulated.

Input Schema

NameRequiredDescriptionDefault
quote_idYesUnexpired quote ID returned by create_quote for action="investigate" in this organization; all task input is stored in the quote.
idempotency_keyYesCaller-generated key, 8–128 letters, digits, underscores, dots, colons or hyphens. Reuse for retries of the same purchase or operation. Different input with the same organization-bound key returns a conflict.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / properties / idempotency_key / description
      Added value: +"Caller-generated key, 8–128 letters, digits, underscores, dots, colons or hyphens. Reuse for retries of the same purchase or operation. Different input with the same organization-bound key returns a conflict."
    • removedInput schema / properties / idempotency_key / maxLength
      Removed value: -4096
    • removedInput schema / properties / idempotency_key / minLength
      Removed value: -1
    • addedInput schema / properties / idempotency_key / pattern
      Added value: +"^[A-Za-z0-9_.:-]{8,128}$"
    • addedInput schema / properties / quote_id / description
      Added value: +"Unexpired quote ID returned by create_quote for action=\"investigate\" in this organization; all task input is stored in the quote."
  2. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already establish that this is an open-world, idempotent, non-destructive mutation, but the description adds substantial extra context: it creates a tenant-owned case, reserves the quoted maximum from prepaid credits, returns an operation_id for polling, requires action-scoped authentication, and notes sandbox simulation. It also discloses the important limitation that CDN visibility does not prove the origin host and that no notice is sent.

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

Conciseness5/5

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

The description is front-loaded with the core action and then layers on prerequisites, results, limitations, authentication, billing, async behavior, and environment. Every sentence carries operational value, and none is redundant with the annotations or schema.

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?

There is no output schema, so the description must explain what comes back. It does so by listing case_id, evidence_id, page metadata, registrar/network attribution, supported contacts, and retrieval limitations, and by directing the agent to poll get_operation. It also covers prerequisites, auth, credits, and sandbox behavior, making it complete for a complex async mutation 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 description coverage is 100%, so both quote_id and idempotency_key are already fully documented in the schema. The description adds workflow context for how the quote_id is obtained via create_quote, but it does not deepen parameter semantics beyond what the schema provides, especially for idempotency_key. 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 states a specific verb and resource: investigate a supplied public URL and create a tenant-owned case. It distinguishes the operation from siblings by naming the required create_quote step and the get_operation polling flow, and it explicitly says no notice is sent, separating it from takedown-oriented tools.

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

Usage Guidelines4/5

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

Prerequisites are clear: first call create_quote with action='investigate', then authenticate with the matching action scope. The description also explains the async follow-up via get_operation and notes that investigation does not send a notice, but it does not explicitly compare when to choose this tool over all relevant alternatives such as prepare_takedown.

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.

Resources