Skip to main content
Glama

content_scan

Read-onlyIdempotent

Scan untrusted text (tool results, web pages, emails, token metadata) for prompt injection before feeding it to your LLM: instruction overrides, fund-movement directives, payloads hidden in base64, Morse, zero-width or tag characters and homoglyphs, leaked private keys and seed phrases, embedded addresses screened against sanctions and scam lists, lookalike domains. Deterministic, no LLM. Returns clean / suspicious / malicious with findings. Up to 64 KB per call. Free over MCP for 10 calls per day; beyond that the tool returns the pay-per-call x402 endpoint and its price.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "content_scan"
  }
}

Input Schema

NameRequiredDescriptionDefault
textNoOne untrusted string to scan
itemsNoSeveral strings scanned in one call (findings carry the item index)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior5/5

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

Annotations only declare the read-only/idempotent/open-world profile; the description adds substantial behavior beyond that: deterministic with no LLM involved, a three-level verdict (clean / suspicious / malicious) with findings, a 64 KB per-call size ceiling, and an explicit quota of 10 free calls per day after which the call fails into a pay-per-call x402 endpoint with a price. The quota and overflow behavior are exactly the kind of operational constraint annotations cannot express.

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?

Purpose is front-loaded in the opening clause, followed by the threat inventory and then operational facts (verdict shape, size cap, quota). The long enumeration of attack types is dense but each entry is discriminative; the passage is slightly over-packed into one sentence but wastes little.

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 compensates by describing the return value (verdict plus findings) and covers size and rate limits. The remaining gap is the mutual relationship between text and items — zero required parameters leaves ambiguous whether one, the other, or both must be supplied.

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 parameters are already documented, including the 16-item batch cap and per-item index in findings. The description only adds the 64 KB size limit, which maps usefully onto the text parameter but does not clarify how text and items relate given that neither is required.

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 (scan) and resource (untrusted text: tool results, web pages, emails, token metadata) with the goal stated explicitly (prompt injection detection before LLM ingestion). The enumerated threat classes — instruction overrides, fund-movement directives, base64/Morse/zero-width/tag/homoglyph payloads, leaked keys and seed phrases, sanctioned or scam addresses, lookalike domains — clearly separate it from siblings like address_check, signature_check, or preflight.

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 clear usage context ('before feeding it to your LLM') and names the input sources it expects. It does not state exclusions or point to alternatives for narrower checks (e.g. address_check for a pure address lookup), so an agent must infer that boundary rather than read it.

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.