Skip to main content
Glama

Border

Server Details

Debug CORS: send the real preflight, get Chrome's exact error and the headers that fix it.

Ownership verified
Status
Healthy
Uptime
100.0% over the last 24 hours
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A4.3/5.0

Scored across 2 tools

Disambiguation4/5

The two tools share nearly the same name and the same output shape, and their trigger domains overlap (a POST to a public API can legitimately go to either), so an agent could hesitate. The descriptions do resolve this well by hard-coding the split: live fetch for reachable GET/HEAD, pasted headers for localhost/private servers and for POST/PUT/PATCH/DELETE responses. Distinct enough in practice, but the boundary is explained rather than obvious from the names.

Naming Consistency5/5

Both tools follow the same border_<verb>_<object> snake_case pattern with a shared server prefix and a single consistent verb ('check'), differing only by the '_headers' qualifier that reflects the actual distinction in behavior. No mixed conventions or stray naming styles.

Tool Count4/5

Two tools is thin in absolute terms, but for a single-purpose CORS diagnostic server they map cleanly onto the two real input modes (fetch it yourself vs. paste what you have) and neither is redundant. A third capability (e.g. emitting framework-specific server config) would round it out, but nothing present is padding.

Completeness4/5

The surface covers the core lifecycle of a CORS diagnosis: detect the failure, identify the failing step, name the fixing headers, and provide reproduction commands, for both remote and unreachable servers. Remaining gaps are real but workaroundable: response verification for non-idempotent methods always requires a manual curl paste, and verdicts for local/private servers are only as good as the headers supplied.

Available Tools

2 tools
border_check_corsCheck whether a browser would allow a cross-origin API call (CORS)A
Read-onlyIdempotent
Inspect

Use when the user hits a CORS error ("blocked by CORS policy", "No 'Access-Control-Allow-Origin' header", "preflight", "Failed to fetch" from a frontend) or is about to call a public API from browser code (React, Next.js, Vue, a browser extension page) and asks whether it will work (signals: "CORS", "works in Postman but not in the browser", "preflight 401/404", "Access-Control-Allow-Headers", "withCredentials", "credentials include"). Sends the browser's own preflight (OPTIONS with Origin, Access-Control-Request-Method and -Headers) to the live API and, for GET and HEAD, the request itself with the Origin header, then applies the Fetch standard CORS rules as Chrome implements them. Returns verdict (allowed, blocked, preflight_passed, incomplete, same_origin, unreachable), the exact Chrome console error, which step fails (preflight or response) and why, whether a preflight is needed and why, the CORS headers the server sent, warnings (missing Vary: Origin, a server that echoes any origin with credentials, unreadable response headers, Authorization covered only by *), the exact response headers that fix it, and curl commands to reproduce. Example: {"url":"https://api.example.com/v1/items","origin":"http://localhost:3000","method":"POST","headers":["Content-Type: application/json","Authorization"],"credentials":true}. Limits: public http/https APIs on ports 80 and 443 only (localhost, private and staging servers go through border_check_cors_headers with pasted curl output); never sends POST, PUT, PATCH or DELETE (those get the preflight checked only) and never sends header values for Authorization or keys; a server can answer differently to a real browser session.

Inputs: url (required), origin (required), method, headers, +2 more.

border_check_cors_headersCheck pasted preflight and response headers against the CORS rulesA
Read-onlyIdempotent
Inspect

Use when a CORS problem involves a server Border cannot reach (localhost, a dev or staging server, a private network, a custom port) or a POST, PUT, PATCH or DELETE whose real response needs checking, and the raw response headers are available from curl -i or the browser DevTools Network tab (signals: "here is the OPTIONS response", "my local API returns these headers", "CORS works on localhost but not in production", "preflight response is"). Parses the pasted OPTIONS response and/or the actual response (status line plus headers; curl -i, curl -v, curl -iL with redirects, and DevTools copies are all read) and applies the Fetch standard CORS rules as Chrome implements them, for the given page origin, method, request headers and credentials mode. Returns the same result as border_check_cors: verdict, the exact Chrome console error, the failing step and reason, warnings, the response headers that fix it, and the curl commands to capture any missing response. Nothing is fetched. Example: {"url":"http://localhost:8000/api/login","origin":"http://localhost:5173","method":"POST","headers":["Content-Type: application/json"],"credentials":true,"preflight_response":"HTTP/1.1 200 OK\nAccess-Control-Allow-Origin: *\nAccess-Control-Allow-Headers: content-type"}. Limits: the verdict is only as complete as the pasted headers; a preflighted request needs both pastes for a full answer.

Inputs: url (required), origin (required), method, headers, +4 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      B
      maintenance
      Zero-dependency, RAM-only HTTP diagnostic proxy and MCP server in pure Go. It intercepts traffic in RAM and replaces secrets with salted SHA-256 correlation tags so AI agents can debug auth flows without credentials entering LLM contexts or touching disk.
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Local MCP server and Chrome extension for debugging in your signed-in Chrome. Monitors network and console activity across tabs, sweeps routes for errors, generates bug reports and PR evidence bundles, and queries saved results with SQL.
      10
      26
      1
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      MCP server for Chrome extension testing. Access chrome.storage, Service Workers, declarativeNetRequest, and more directly from AI coding agents like Claude Code.
      23
      9 npm
      1
      MIT
    Try in Browser

    Glama MCP Gateway

    Add one secure layer between your agents and this server.

    Resources