Skip to main content
Glama

Decode blind watermark

decode_blind_watermark
Read-onlyIdempotent

Read a blind watermark from an image (public http(s) URL). Uses the AiController CreateDecodeBlindWatermarkTask + GetDecodeBlindWatermarkResult async path. Start with source_url; the call waits up to wait_seconds (default 15, max 60) and returns a job_id if still running. Poll by calling again with only job_id; polling never creates a new upstream decode task. Returns content when readable. Cost: 2 credits per call, charged by mcp-credit-gateway before forwarding.

Input Schema

NameRequiredDescriptionDefault
job_idNoExisting upstream task id returned by a previous call. Polling never creates a new decode task.
source_urlNoPublic http(s) URL of the watermarked image. Start a new decode job with this, or poll with `job_id`.
wait_secondsNoHow long to wait for a result, 0–60 seconds (default 15). On timeout the call returns a job_id to poll.
idempotency_keyNoOptional caller correlation key, echoed in the result. Billing is handled by mcp-credit-gateway.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (readOnly/idempotent/openWorld), the description discloses the async task path, the default and max wait window, the job_id fallback on timeout, the returned `content` field, and — critically — a cost of 2 credits charged by mcp-credit-gateway before forwarding. That is behavior an agent cannot infer from annotations or schema.

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?

Front-loaded with purpose, then the workflow, then cost — dense and mostly waste-free. The reference to the internal 'AiController CreateDecodeBlindWatermarkTask + GetDecodeBlindWatermarkResult' method names is implementation detail an agent doesn't act on and could be trimmed.

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

Completeness4/5

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

With no output schema, the description correctly covers return values (`content`, `job_id`) and billing, which is what an agent needs to compose a call. It stops short of saying what happens when no watermark is found or the decode fails, a minor but real gap for a task-based tool.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description earns above baseline by explaining the implicit two-mode contract (`source_url` starts a job vs. `job_id`-only polls) that the schema does not encode as an anyOf/oneOf. It adds no further format detail on `idempotency_key` beyond the schema text.

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?

States a specific verb and resource ('Read a blind watermark from an image') plus the accepted input form (public http(s) URL). The read/decode direction is clearly distinguishable from the sibling `embed_blind_watermark`, so an agent can pick the right one without opening a schema.

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?

Gives concrete usage rules: start with `source_url`, poll with only `job_id`, and the reassurance that polling never spawns a new upstream task. It does not explicitly name exclusions or alternatives (e.g., when to prefer a non-blind watermark tool), which keeps it at 4.

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.