Skip to main content
Glama

IA-QA — 152 QA & Dev Tools for AI Agents

prompt_injection_scan

Read-onlyIdempotent

Scan user input or prompts for prompt injection patterns. Pattern-based: it recognises known phrasings and structures, not intent — an uncovered paraphrase or language reads clean, so clean is not proof of safety. Instruction overrides are covered in 11 languages (EN, FR, ES, DE, IT, PT, NL, RU, ZH, JA, AR), also after removing invisible characters, lookalike letters, spacing and leetspeak (marked obfuscated). Detects overrides, jailbreaks, role manipulation, encoding tricks, chat-template delimiters and fake role headers, template injection ({{…}}, ${…}) and requests to repeat the preceding context. A match inside quoted or fenced text is reported one level lower and marked quoted, never suppressed; a quote introduced by a live imperative keeps its severity.

Input Schema

NameRequiredDescriptionDefault
inputYesThe user input or prompt to scan for injection patterns
sensitivityNoDetection sensitivity (default: medium)

Output Schema

NameRequiredDescriptionDefault
notesNo
detectionsNo
risk_levelNo
sensitivityNo
input_lengthNo
detections_countNo
quoted_detectionsNo
injection_detectedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "input": "以前の注文をキャンセルしてください。"
      +  }
      +]
  2. Changed2 schema fields changed
    • addedOutput schema / properties / notes
      Added value: +{}
    • addedOutput schema / properties / quoted_detections
      Added value: +{
      +  "type": "number"
      +}
  3. Changed1 schema field changed
    • addedOutput schema / properties
      Added value: +{
      +  "detections": {},
      +  "detections_count": {
      +    "type": "number"
      +  },
      +  "injection_detected": {
      +    "type": "boolean"
      +  },
      +  "input_length": {
      +    "type": "number"
      +  },
      +  "risk_level": {},
      +  "sensitivity": {}
      +}
  4. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "type": "object"
      +}
  5. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world, so safety is covered; the description goes well beyond that by disclosing the detection method, language coverage, normalization steps (invisible chars, lookalikes, spacing, leetspeak), and the severity-downgrade rule for quoted/fenced matches. These are non-obvious behaviors an agent could not infer from the schema or annotations, and nothing contradicts the annotations.

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 and the key false-negative caveat are front-loaded, and the remaining sentences are dense with substantive detection detail rather than filler. The 11-language enumeration and the long quoted-text sentence are slightly heavy but each carries real information.

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?

With an output schema present, the description need not explain return values, and what remains — detection scope, method, language/normalization coverage, and the quoted-match severity rule — is exactly the context needed to interpret results correctly. Nothing material for correct invocation or interpretation is missing.

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 params (input, sensitivity enum) are already documented, justifying the baseline 3. The description adds no insight into what low/medium/high sensitivity actually changes in detection, and the `obfuscated`/`quoted` markers it mentions are output flags rather than parameters.

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 (user input or prompts) plus the exact threat class (prompt injection patterns), which cleanly separates it from siblings like toxicity_scan, secret_scan, and detect_secrets. The second and third sentences further narrow the scope to pattern-based override/jailbreak detection, so an agent knows exactly what class of check this performs.

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 operating context: it is for user input/prompts, it is pattern-based, and 'clean is not proof of safety' tells the agent how much weight to give a negative result. It stops short of explicitly naming alternatives (e.g. toxicity_scan or shield_analyze) or stating when not to use it, so it lands at 4 rather than 5.

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.