Skip to main content
Glama

Cors Audit

cors_audit
Read-only

Check a URL's CORS policy for origin reflection and trust-boundary bugs via passive GETs with different Origin headers. Flags permissive policies as candidate findings only when Allow-Credentials is true.

Instructions

Check a URL's CORS policy for origin reflection and trust-boundary bugs.

Passive: a handful of GETs with different Origin headers, reading the Access-Control-Allow-* response headers. Nothing is submitted, nothing changes state.

A permissive policy is only a vulnerability when the endpoint returns data worth stealing and Allow-Credentials is true — findings are filed as candidates, never as confirmed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv2.1.0

TDQS

A4/5.0
Behavior4/5

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

The description goes beyond the annotations by explicitly stating 'Nothing is submitted, nothing changes state,' reinforcing the read-only and non-destructive nature. It also discloses that findings are 'filed as candidates, never as confirmed,' which is a behavioral trait not captured in 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.

Conciseness5/5

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

The description is succinct and well-organized, with two short paragraphs covering purpose, method, and limitations. No unnecessary details are included, and the passive/active distinction is clearly stated.

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?

The description covers the tool's purpose, behavior, and even the condition for vulnerability (data worth stealing + Allow-Credentials). It lacks explicit output format details, but since an output schema is indicated, the description provides sufficient context for an agent to decide when to use it.

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 only parameter, 'target', is not described in the schema, but the description implies it is a URL by referring to 'a URL's CORS policy.' This indirect definition is sufficient for a generic string parameter, though a direct explanation would improve clarity.

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 clearly states the tool's purpose: 'Check a URL's CORS policy for origin reflection and trust-boundary bugs.' The verb 'check' and the specific object 'CORS policy' make the function unambiguous, and the mention of 'origin reflection' and 'trust-boundary bugs' further clarifies the scope.

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 implies when to use the tool by focusing on CORS checks, but it does not explicitly state conditions for use or contrast with alternative tools. It mentions the passive nature, which suggests it's for low-impact assessment, but lacks direct guidance on when to prefer this over other scanning tools.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/iamsecure1920/Cordon-AI'

If you have feedback or need assistance with the MCP directory API, please join our Discord server