WritersLogic developer agents
Server Details
Diff gatekeeper, pre-merge review, unicode safety, SMT prover, dependency advisor.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Score is being calculated.
Available Tools
69 toolsai-bom-license-resolverInspect
AI-BOM License Chain Resolver for Hugging Face Models — Walks the Hugging Face lineage of up to 10 models (base_model chain, training datasets; at most 30 nodes, 4 generations) and applies a curated, hash-pinned table of license clauses (Apache-2.0, MIT, CC-BY, CC-BY-NC, CC-BY-SA, OpenRAIL variants, Llama 2 / 3 / 3.1 / 3.2 / 3.3, Gemma, Mistral Research License) to each intended use: commercial or not, API, weights or on-prem, fine-tuning, monthly acti
Inputs: uses (required), models (required), datasets, dataset_terms.
archive-preflightInspect
Archive extraction preflight: zip-slip, duplicate destinations, symlink conflicts — Checks a manifest of up to 2000 archive entries (path, type, link target, sizes) before extraction, for an agent that unpacks zip, tar or OOXML files: ../ traversal (also through backslashes), absolute, drive-letter and UNC paths, entries that write through a symlink, symlink and hardlink targets that leave the root, duplicate destinations, case-only and NFC/NFD collisions, Windows reserved names,
Inputs: entries (required), limits, targets, destinationRoot.
calldata-decodeInspect
Decode EVM calldata, return data, revert data or event logs against an ABI — Decodes hex calldata (selector plus arguments), function return data, revert data or an event log against a caller-supplied ABI using ethers, for agents inspecting a transaction before signing or after it fails. Handles tuples, nested and dynamic arrays, bytes and strings, and the built-in Error(string) and Panic(uint256) reverts; a strict re-encode check flags trailing bytes, dirty padding and no
Inputs: abi (required), data (required), mode, topics, +1 more.
cidr-mathInspect
CIDR math: IPv4 and IPv6 overlap, adjacency, merge, subtract, membership — Computes exact CIDR relations for agents planning networks, firewall rules or allow-lists: for up to 200 IPv4/IPv6 blocks it reports which pairs are equal, nested, partially overlapping or merely adjacent, the minimal merged CIDR list, a subtraction (blocks minus exclusions), address membership with the most specific match, or each block's first/last address, count and host-bits-set errors. It doe
Inputs: op (required), ranges (required), exclude, addresses, +1 more.
config-migrationInspect
Migrate a v1 config to a v2 schema with an explicit mapping, and list what was dropped or defaulted — Applies a declared mapping (from pointer, to pointer, optional transform such as string-to-number or a value map) to a v1 JSON config, carries over unmapped keys the v2 schema declares, fills schema defaults, validates the result against the v2 JSON Schema 2020-12 and returns the migrated config plus three exact lists: dropped (v1 values that landed nowhere, with their JSON pointers), defaulted (v
Inputs: v1 (required), mapping (required), v2Schema (required), applyDefaults, +1 more.
cors-preflightInspect
CORS preflight decision from Fetch spec — Takes a browser request shape (origin, method, headers, credentials flag) and a server CORS policy (allow-origin, allow-methods, allow-headers, allow-credentials, expose-headers, max-age) and returns the exact decision a browser would make per the Fetch Living Standard §3.2 and §4.10: whether a preflight OPTIONS is required, whether the main request is allowed, which response headers the script ca
Inputs: policy (required), request (required).
cra-exploit-clockInspect
CRA Exploited-Vulnerability Evidence and Art. 14 Deadline Clock — Takes a CycloneDX or SPDX JSON SBOM (or a purl list), asks OSV.dev for the advisories that affect each exact component version (OSV evaluates the version ranges per ecosystem), then checks each CVE against the CISA Known Exploited Vulnerabilities catalog and the ENISA EUVD exploited-vulnerability index, and adds FIRST EPSS scores. Returns a per-component verdict, the evidence with source URLs and
Inputs: sbom, purls, product, issue_record, +2 more.
cra-readinessInspect
EU CRA Readiness Check — Repository or manifests in, EU Cyber Resilience Act Art. 14 position out: dependency-advisor resolves every declared package to its locked version (deterministic, no model), those versions go to cra-exploit-clock as package URLs (OSV, CISA KEV, EPSS, EUVD), and each actively exploited component is joined back to the manifest that declares it with the fixed versions and the advisor's findings. Repo
Inputs: ref, repo, files, product, +4 more.
cross-field-rulesInspect
Check caller-declared rules across fields of a JSON record: end after start, conditional required, exactly one of — Evaluates up to 100 rules you declare over one JSON document and reports, per rule, pass, fail or unknown with the JSON pointer of every violating field and the actual value class (absent, null, empty string, value). Rule kinds: compare (>, >=, <, <=, ==, != on numbers, exact decimals, RFC 3339 dates or date-times, strings), required-if, forbidden-if, exactly-one, at-most-one, at-least-one, all-or
Inputs: data (required), rules (required), onMissing.
csp-auditInspect
Content-Security-Policy audit — Parses a Content-Security-Policy header or value and reports every clause that weakens it: 'unsafe-inline' without nonces or hashes, 'unsafe-eval', wildcard hosts, data:/blob: in script-src, scheme-only https:, duplicate directives (second is discarded), missing base-uri or object-src 'none', open frame-ancestors or form-action, and the strict-dynamic cases that silently ignore host sources
Inputs: policy (required), deployTarget.
csv-dialectInspect
Detect a CSV file's delimiter, quote, header row and broken header names — Detects the delimiter (comma, semicolon, tab, pipe), quote character, line terminator, BOM, header row offset (preamble lines above the header) and whether a header exists in CSV text, parsed per RFC 4180 so quoted delimiters and CRLF inside quoted fields are handled. Returns every candidate dialect with its score, each ragged row with its physical line, and header repairs (empty, duplicate or BOM
Inputs: text (required).
csv-roundtripInspect
Will this CSV survive a typed round trip and a spreadsheet: leading zeros, big ids, dates, formulas, empty vs null — Parses CSV text (RFC 4180, caller dialect) against a column type map and reports, per cell with row, column, physical line and byte offset, everything that would change on a parse-serialize-parse round trip or when opened in Excel or Sheets: leading zeros stripped, integers beyond 2^53 or 15 significant digits, scientific-notation and date coercion ("1E5", "1-2", "MARCH1"), formula injection (= +
Inputs: text (required), types, dialect, nullToken, +1 more.
dependency-advisorInspect
Dependency Underuse & Replacement Advisor — Audits the dependencies of a public GitHub repo, commit or pull request (or uploaded manifests and sources) and returns a pass/warn/fail verdict, a 0-100 risk score, the top findings with manifest file:line and the fix, and a SARIF 2.1.0 log for GitHub code scanning. Parses JS/TS, Python and Rust imports with a tokenizer-level scanner and maps them to declared npm, PyPI and crates.io dependencies.
Inputs: ref, mode, repo, files, +2 more.
dev-pipeline-toolkitInspect
Developer pipeline toolkit: 9 deterministic CI/CD checks — One endpoint, nine deterministic CI/CD primitives, each a sub-millisecond algorithmic check with cited specs: jwt-verify (RFC 7515/7518/8725), cron-explain (POSIX + Quartz), openapi-breaking-change (OAS 3.1 diff), webhook-verify (Stripe/GitHub/Shopify/Slack/Twilio/Linear/Clerk/SendGrid), csp-audit (CSP Level 3), cors-preflight (Fetch spec §3.2/§4.10), x509-inspect (RFC 5280/6125), graphql-cost (Gr
Inputs: args (required), tool (required).
diff-gatekeeperInspect
PR / Dependency Breaking-Change & Exploit Gatekeeper — Merge gate for a pull request: pass/warn/fail verdict, 0-100 risk score, the top findings with file:line and a fix, drop-in patches, GitHub Checks annotations and a SARIF 2.1.0 log. Accepts a raw unified diff, a GitHub PR, commit or compare URL, or per-file patches. Deterministic scanners (secrets, SQL and command injection, weak crypto, risky package.json changes) run beside a model review for bu
Inputs: files, prUrl, context, gitDiff, +1 more.
dockerfile-cache-lintInspect
Dockerfile build-cache and reproducibility lint — Parses a Dockerfile (continuations, escape directive, heredocs, flags, stages) and reports instruction orderings that defeat the layer cache or make rebuilds drift, for agents writing or reviewing container builds. Cache: COPY of the whole context before a dependency or package install, apt-get update in its own RUN, per-build ARG/ENV values (build date, git sha) declared before later RUN steps. R
Inputs: dockerfile (required), basePin, include.
doc-to-markdownInspect
Document to Markdown with per-page hashes and offsets — Converts a PDF (text layer), DOCX, XLSX or PPTX file, or normalizes an HTML, Markdown, text, CSV or JSON file, into Markdown (or plain text) for an agent that must read or cite a document. Give an https URL or up to 4 MB as base64. Returns the content plus one unit per page, sheet or slide with its exact character range in the content and a SHA-256 of that unit's text, so later quote and citation
Inputs: url, pages, format, describe, +3 more.
duplicate-key-auditInspect
Duplicate JSON object keys found in raw text, before a parser drops them — Scans raw JSON text (RFC 8259) for repeated object member names at any depth, including inside arrays and keys spelled differently but equal after unescaping ("a" vs "\u0061"), and reports each with its JSON pointer, UTF-8 byte offset, line, column and the value every occurrence carried, plus whether the values conflict. Also reports a leading BOM, unpaired surrogates, proto keys and the exact
Inputs: text (required).
enum-canonicalizeInspect
Map free-text values onto a closed set of allowed values, or abstain — Maps each input string onto one member of a closed caller-supplied set using, in order: exact match, caller aliases, a deterministic normal form (Unicode NFKC, case and accent folding, punctuation and underscore collapse), then bounded edit distance (optimal string alignment, so a swapped pair of letters costs 1). Returns the canonical value, the method, the distance and the nearest candidates; it
Inputs: values (required), allowed (required), aliases, maxDistance, +1 more.
exif-reportInspect
Which GPS, serial-number and owner EXIF tags an image carries (keys only) — Lists which privacy-relevant EXIF tags exist in a JPEG, TIFF, PNG (eXIf) or WebP (EXIF) image, for an agent that is about to publish, upload or forward a photo. Reports tag ids and names for GPS, body and lens serial numbers, camera owner, artist, unique image id, device, software, timestamps and thumbnails; values are never returned. Input is the image as base64 (up to 96 KiB, enough for the meta
Inputs: data (required), forbid.
float-stabilityInspect
Floating-point stability of an expression over variable ranges — Evaluates a real-valued expression in binary64 (or binary32) on a deterministic grid over the caller's variable ranges and compares each point with a certified arbitrary-precision reference, reporting the decimal digits lost, the worst input, and overflow, underflow or NaN. Recognises and rewrites exp(x)-1, 1-cos(x), log(1+x), sqrt(a)-sqrt(b), a^2-b^2, the quadratic formula, sqrt(x^2+y^2) and log-
Inputs: variables (required), expression (required), precision, alternative, +1 more.
geo-axis-checkInspect
Coordinate axis-order and unit check from a CRS and its area of use — Checks up to 1000 coordinate pairs (or one bounding box) against the EPSG coordinate system you name, for agents handling GIS or map data: it flags longitude/latitude swaps, degrees supplied where metres are expected (or the reverse), values outside the CRS's area of use, and inverted bounds, with the point index and values. It does not reproject, geocode, validate geometry topology or datum, or j
Inputs: crs (required), bounds, areaOfUse, coordinates, +1 more.
graphql-costInspect
GraphQL depth and static complexity score — Parses a GraphQL document (query, mutation or subscription) per the June 2018 spec and returns depth, field count, alias count, fragment list, cycle detection and a static complexity score. Complexity uses the common 'Σ field-score × list-multiplier' model: a listFields config maps parent-type + field-name to either a constant multiplier or a field argument name to read (e.g. 'first', 'limit'), wi
Inputs: query (required), maxDepth, variables, listFields, +3 more.
heal-scraperInspect
Self-Healing Scraper & DOM-to-JSON Compiler — Synthesizes durable CSS selectors (Cheerio; no XPath) for a target JSON schema, proves them against the live DOM in-request, and returns the extracted data plus a ready-to-run TypeScript Cheerio extractor.
Inputs: targetSchema (required), url, html, previousBrokenSelectors.
http-cache-explainInspect
HTTP cacheability, CORS and redirect-loop explainer — Explains from supplied response headers (and optionally the request's headers, a CORS request, and a redirect chain) whether a shared and a private HTTP cache may store the response (RFC 9111 section 3), its freshness lifetime and basis (s-maxage, max-age, Expires minus Date, or the 10% Last-Modified heuristic), Vary, invalid max-age or Expires, the CORS check and preflight outcome per the Fetch S
Inputs: response (required), cors, request, redirects.
iam-minimizeInspect
IAM policy action minimizer: wildcards to the required action list — Takes an AWS IAM policy JSON and the exact list of actions a task needs (up to 300), and returns the policy with each Allow statement's Action narrowed to just those actions, plus what the original over-grants: wildcards, unused actions, Allow+NotAction, required actions no statement grants, and required actions an unconditional Deny blocks. For an agent that is about to attach or propose a policy
Inputs: policy (required), requiredActions (required), knownActions.
join-cardinalityInspect
Row multiplication, unmatched keys and uniqueness violations before a table join — Takes the join keys of two tables (every row's key, or distinct keys with row counts) and computes the exact output row count of an inner, left, right or full equi-join with SQL NULL semantics, the observed cardinality (one-to-one, one-to-many, many-to-one, many-to-many), the keys that multiply rows the most, unmatched keys on each side and the first duplicate row when a side was assumed unique. I
Inputs: left (required), right (required), joinType (required), expect, +1 more.
json-patch-conflictInspect
Conflicts between two to four RFC 6902 JSON Patches made against the same document — Takes one base document and 2 to 4 JSON Patch (RFC 6902) operation lists written against it and reports, per pair, whether they commute: same-path writes, ancestor/descendant overlaps, array-index shifts (an insert or remove moves the elements a later patch addressed by index), concurrent - appends whose final order depends on application order, test operations invalidated by another patch, an
Inputs: patches (required), document (required).
jwt-lintInspect
JWT lint: alg none, crit, key-URL headers, expiry, audience (decode only) — Decodes a compact JWT (never verifies the signature) and checks it against RFC 7519 and RFC 8725 for an agent about to trust or forward it: alg none or missing, crit and key-supplying headers (jku, x5u, jwk), kid injection shape, duplicate claims, and exp, nbf, iat against a caller-supplied time, plus optional expected algorithms, issuer and audience. Without asOf the time claims are not judged an
Inputs: token (required), asOf, requireExp, expectedAlgs, +3 more.
jwt-verifyInspect
JWT signature and claims verification — Verifies a JWS-compact JWT: signature over base64url(header).base64url(payload) with Web Crypto under the exact algorithm in the token's alg header (HS256/384/512, RS256/384/512, PS256/384/512, ES256/384/512, EdDSA). Refuses 'none' unconditionally and rejects any alg not in the caller's allowedAlgorithms. Validates exp/nbf with a configurable clock-skew tolerance (default 60s), iss equality, a
Inputs: key (required), token (required), allowedAlgorithms (required), issuer, +3 more.
k8s-crosscheckInspect
Kubernetes manifest cross-reference check — Parses up to 20 Kubernetes YAML manifests and checks that they agree with each other, for an agent that generated or edited manifests before kubectl apply: Service selectors against pod template labels (with the nearest near-miss), named targetPorts against containerPort names, Service port naming, Deployment selector against its template labels, Ingress backends against Services, and ConfigMap/Se
Inputs: manifests (required), closedWorld.
license-identifyInspect
SPDX license identification from LICENSE text — Normalizes a LICENSE file (SPDX varietal substitutions: whitespace, case, quotes, bullets, copyright lines) and matches it against distinctive phrases of 32 common SPDX licenses (MIT, MIT-0, Apache-2.0, BSD-2/3/4-Clause, 0BSD, GPL-2/3 +/- or-later, LGPL-2.1/3.0 +/- or-later, AGPL-3.0 +/- or-later, MPL-2.0, ISC, Unlicense, CC0-1.0, Zlib, Artistic-2.0, EPL-2.0, BSL-1.0, WTFPL, Python-2.0, PostgreSQL
Inputs: text (required), restrict.
lockfile-mergeInspect
Resolve git conflict markers in package-lock.json or a YAML lockfile — Takes a lockfile (package-lock.json or a YAML lockfile such as pnpm-lock.yaml) containing git merge-conflict markers, rebuilds both sides, and merges them key by key (using the diff3 base when present), returning the resolved file or the exact conflicting key paths with both values, for agents rebasing or merging branches. An optional prefer=ours|theirs applies one explicit policy to the remaining
Inputs: content (required), format, prefer.
lossy-conversionInspect
Does this value survive conversion to another numeric or spreadsheet type? Range, precision, leading zeros, E notation — Takes raw JSON literals (as written, so 9007199254740993, 1e400, -0, "007" and 0.10 are judged on their digits, not on a parsed double) and target types (binary64, binary32, int8..int64, uint8..uint64, PostgreSQL numeric(p,s), Arrow decimal128/decimal256, Parquet decimal, Excel cell, pandas int64) and reports for each pair whether the value is exact, lossy (rounded, truncated, leading zeros or sig
Inputs: pairs, samples, targets.
magic-bytesInspect
File type vs leading bytes (magic numbers, disguised HTML, truncation) — Compares a claimed file type (MIME type and/or file name) with the first bytes of the file, for an agent that is about to open, parse or forward a download. Detects PNG, JPEG, GIF, WebP, ZIP and OOXML (docx/xlsx/pptx), GZIP, PDF, MP4 (ftyp), ELF, PE, RAR, BMP, ICO and HTML, flags an HTML login or error page saved as a PDF/image/archive, and reports truncation from end-of-file markers when the last
Inputs: head (required), tail, complete, totalSize, +2 more.
mesh-checkInspect
STL mesh check: open edges, non-manifold edges, inverted normals — Checks a binary or ASCII STL mesh of up to 4000 triangles for a 3D-printing or CAD agent: open (boundary) edges, edges shared by more than two triangles, inconsistent winding, degenerate and duplicate triangles, normals that disagree with the vertex order, and an inside-out (negative signed volume) closed mesh, with triangle indices as witnesses. Input is base64 of the STL file (up to 200084 bytes
Inputs: data (required), weldTolerance.
metric-comparabilityInspect
Whether two metric definitions measure the same thing, and which fields differ — Compares two structured metric definitions field by field (numerator, denominator, aggregation, weighting, population, filters, exclusions, period grain and calendar, timezone, currency, FX and tax basis, unit) and returns which differences make the numbers not comparable, which are adjustable with raw data, and which fields are missing from one side. In drift mode a is the old and b the new defin
Inputs: a (required), b (required), mode.
migration-reversibilityInspect
Migration DDL: data-loss and rollback hazards per dialect — Classifies each statement of a PostgreSQL, MySQL or SQLite migration (up to 20000 characters) as reversible, needing a backup, needing the original definition, or irreversible, for agents that write or review schema migrations. Flags DROP TABLE/COLUMN, TRUNCATE, unbounded DELETE/UPDATE, lossy type changes, NOT NULL or constraints that fail on existing rows, table-rewrite and lock hazards, and MySQ
Inputs: sql (required), dialect (required).
openapi-breaking-changeInspect
OpenAPI 3.x breaking-change diff — Diffs two OpenAPI 3.x documents and classifies every delta as breaking, compatible or informational. Breaking: removed path/operation/response status/media type, type/format/pattern tightening, enum value removed, required property added, request body became required, maximum lowered or minimum raised, nullable removed. Compatible: additions (new paths, optional params, enum values, response statu
Inputs: base (required), head (required).
openapi-sliceInspect
Slice one operation out of an OpenAPI 3.0 or 3.1 document with every component it needs — Extracts one operation (path plus HTTP method, matching templated paths like /pets/{id}) from an OpenAPI 3.0.x or 3.1.x document, given as JSON, YAML or a parsed object, and returns a smaller valid OpenAPI document holding that operation, its path-level parameters and servers, and the transitive closure of every local $ref it uses: schemas, parameters, requestBodies, responses, headers, examples,
Inputs: path (required), method (required), spec, specText.
package-existsInspect
Package exists on npm, PyPI or crates.io (hallucinated dependency check) — Checks whether up to 10 package names (optionally with a version) exist in the live npm, PyPI or crates.io registry, for coding agents about to add a dependency they may have invented. Per package: exists, latest version, deprecated or yanked flag, and for a missing name the closest names the registry's own search returns (npm, crates.io; PyPI has no search API). Reads registry metadata only: neve
Inputs: items (required), ecosystem (required).
page-captureInspect
Page capture: screenshot or PDF of a public URL — Renders one public web page in a real browser (Cloudflare Browser Run, JavaScript enabled) and returns a PNG or JPEG screenshot or a PDF as base64 with its sha256, for agents that need to see or archive a page. Does not log in, click or fill forms, does not capture private or internal hosts, and returns an error rather than a capture larger than 6 MB.
Inputs: url (required), output, viewport, full_page, +2 more.
page-contentsInspect
Page contents: URL to clean Markdown or text — Fetches one public web page and returns its main content as clean GitHub-flavored Markdown or plain text, with title, canonical URL, language, absolute links and content hashes, for agents that feed pages to a model. Deterministic, no model. Does not run JavaScript (client-rendered pages come back sparse), does not follow links, does not consult robots.txt, and drops navigation, footers, sidebars
Inputs: url (required), format, max_chars, include_links, +1 more.
path-portabilityInspect
File path portability check across Windows, macOS and Linux — Checks up to 500 relative file paths for names that break or collide on Windows, macOS or Linux: Windows reserved device names (CON.txt, NUL.tar.gz, COM¹), reserved characters, trailing dots and spaces, component and total length limits, and distinct paths that become one file through case folding or NFC/NFD normalization. For an agent that writes files from an archive, a generated tree or a repo
Inputs: paths (required), targets, destinationRoot.
path-rulesInspect
Which gitignore, CODEOWNERS or glob rule matches a path — Evaluates up to 25 file paths against the text of a .gitignore, a CODEOWNERS file or a list of glob patterns and reports, per path, whether it matched, the winning rule's line and pattern, and why (last match wins, directory-only rules, negation, a re-include blocked by an excluded parent directory, CODEOWNERS owner lists). Optional per-path expectations turn it into a pass/fail check, and CODEOWN
Inputs: kind (required), paths (required), rules (required).
permission-deltaInspect
Privilege expansion between two manifests: npm, Chrome extension, Android — Compares an old and a new manifest and reports every way the new one gains privilege, for agents reviewing dependency bumps and extension or app updates. npm package.json: new or changed install-time lifecycle scripts, gypfile, bin entries and URL/git/file dependencies (including overrides). Chrome manifest.json: added permissions with Chrome's own warning text, host access not covered by the old
Inputs: kind (required), after (required), before (required), threshold.
pre-merge-reviewInspect
Pre-merge Review Pack — One unified diff in, one merge decision out: the PR exploit gatekeeper (bug hunter, patch synthesizer, secret/dependency/SAST scans) plus the adversarial Unicode / Trojan Source gate. Runs diff-gatekeeper ($0.50) + unicode-safety-gate ($0.25) in one paid call for 20% less than buying them separately. Charged only when every member succeeds.
Inputs: diff (required), context, packageJsonDiff.
print-boxInspect
PDF page box check: trim, bleed and safe area from supplied boxes — Checks the five PDF page boxes you supply (MediaBox, CropBox, BleedBox, TrimBox, ArtBox, in points) for a print job: applies the ISO 32000-1 defaults and media-box clipping, measures bleed on each side of the trim box, and tests the content box against a safe margin inside the trim, for agents that prepare or accept print-ready PDFs. It does not read a PDF file, check fonts, colour, image resoluti
Inputs: pageBoxes (required), userUnit, contentBox, requirements.
redirect-credential-checkInspect
Redirect chain credential-leak check — Walks a supplied HTTP redirect chain (up to 25 hops of status + Location) for an agent or HTTP client author and reports, per hop, which of the request's header names (Authorization, Cookie, Proxy-Authorization, API-key-like, Referer) are stripped or still forwarded, the method after the hop (301/302 POST to GET, 303, 307/308), whether the hop crosses origin, scheme, or registrable domain, an http
Inputs: hops (required), requestUrl (required), requestHeaderNames (required), method, +2 more.
regex-checkInspect
Regex catastrophic-backtracking check, then test cases only if proven safe — Statically analyses an ECMAScript regular expression (up to 500 characters) for catastrophic backtracking (nested or overlapping quantifiers, ambiguous alternation in a loop, backreferences, lookarounds) for agents that write or accept regexes. Runs the caller's test subjects (up to 20, 1000 characters each) only when the pattern is proven polynomially bounded and the subject is short enough for t
Inputs: pattern (required), cases, flags.
robots-checkInspect
robots.txt (RFC 9309) rule reading with llms.txt and AI-use signals — Reads a supplied robots.txt the RFC 9309 way for an agent deciding whether to fetch up to 25 paths as one product-token user agent: group selection (merged groups, "" fallback), longest-match with the Allow-wins-tie rule, "" and "$" patterns, percent-encoding normalization, fetch-status handling (4xx = no rules, 5xx = disallow all), the rule and line that decided each path. It also lints a suppl
Inputs: paths (required), userAgent (required), headers, llmsTxt, +4 more.
schema-compatInspect
Breaking-change diff between two JSON Schemas or OpenAPI documents, and whether cached calls still validate — Compares an old and a new JSON Schema 2020-12 (or two OpenAPI 3.0/3.1 documents) and lists each change with its path, keyword, old and new value, whether it narrows or widens what is accepted, and whether it breaks clients: newly required properties, removed or retyped properties, removed enum values, tightened limits, additionalProperties flips, removed operations, removed or newly required param
Inputs: kind (required), after (required), before (required), role, +1 more.
schema-repairInspect
Repair a JSON value toward a schema using only the coercions the caller declares — Validates a JSON value against a caller-supplied JSON Schema 2020-12 and applies only the coercions you list (for example string-to-integer for "42", trim-strings, enum-case, apply-defaults, drop-additional) when each one strictly reduces the number of schema errors. Every change is returned with its JSON pointer, the rule, the old and new value; every error that remains is returned with its exact
Inputs: value (required), schema (required), coercions (required).
schema-witnessInspect
One valid and one invalid example for each constraint in a JSON Schema — Walks a caller-supplied JSON Schema 2020-12 and, for every constraint keyword (type, enum, const, minimum, maximum, exclusiveMinimum, exclusiveMaximum, multipleOf, minLength, maxLength, pattern, format, minItems, maxItems, uniqueItems, required, minProperties, maxProperties, additionalProperties false, dependentRequired), returns the JSON pointer of the constraint, an example that satisfies it and
Inputs: schema (required), maxConstraints.
semver-checkInspect
Version range check: npm, PEP 440, Cargo, Maven — Parses a dependency version range in npm (node-semver), PEP 440 specifier, Cargo requirement or Maven range syntax and tests up to 100 candidate versions against it, for agents that write or review manifests. Returns per-version satisfies/violates with the failing comparator, the normalized range, the sorted versions and the highest match; pre-release, caret on 0.x, epoch and local-version rules f
Inputs: range (required), ecosystem (required), versions, prereleases.
sentinel-valuesInspect
Placeholder values hiding as data: caller-declared sentinels and likely candidates — Scans columns of values for sentinels. Values you declare in a dictionary (for example -1 means unknown in column age) are reported as asserted hits with their row paths. Other values that look like missing-data markers are reported separately as candidates, never asserted: the pandas default NA strings, spreadsheet error values, whitespace-only text, placeholder words, zero and epoch dates, fixed
Inputs: columns (required), dictionary.
shell-quoteInspect
Shell quoting for bash, PowerShell and cmd.exe with a parse-back check — Turns up to 50 literal strings into a safely quoted argument for bash/sh (POSIX single-quote method), PowerShell (single-quoted literal) and cmd.exe, for agents that build a command line from untrusted or free-form text, and parses each result back with a model of that shell's rules to prove it yields the original string. It returns unsupported for strings cmd.exe cannot carry safely (line break
Inputs: values (required), targets.
smt-contract-proverInspect
SMT Contract & Policy Logic Prover — Answers a yes/no logic question about contract clauses, IAM/OPA policies or business rules with a solver-backed result and a plain-language headline and next step. Takes clauses or pasted text (or a formal IR directly with zero LLM calls), formalizes them into typed Boolean, integer and rational constraints, then answers "is P possible", "does invariant I always hold" or "are any clauses contradic
Inputs: ir, text, query, budget, +1 more.
spdx-policyInspect
SPDX license expression parse and policy check — Parses up to 50 SPDX license expressions (AND, OR, WITH exceptions, + or-later, LicenseRef) and evaluates each against a caller policy (allow list, deny list, allowed exceptions, OSI/FSF flags, copyleft tier) for agents vetting dependency licenses. Returns the canonical expression, per-license flags from the pinned SPDX License List, the verdict, and which licenses satisfy an OR. Does not detect l
Inputs: expressions (required), deny, allow, denyCopyleft, +5 more.
sql-checkInspect
SQL guard: single statement, read-only, table allowlist — Checks one SQL string (up to 20000 characters; PostgreSQL, MySQL, SQLite or generic) before an agent executes it: exactly one statement, read-only (SELECT/VALUES/SHOW/EXPLAIN without side effects), and every table it reads or writes on a caller allowlist. Tokenizer-level: comments, string literals, quoted identifiers and dollar quoting cannot hide a second statement; reports statement kind, refere
Inputs: sql (required), dialect, readOnly, transpileTo, +1 more.
state-model-checkerInspect
State Machine Model Checker — Returns PASS, FAIL or INCONCLUSIVE for a finite state machine, protocol, or concurrent routine, with the shortest failing path as readable process.transition steps and a next step. Accepts a formal spec (no LLM), a plain-language workflow, or source code (translated to a spec by an LLM, with every transition quoted from the source and two independent translations compared). A pure TypeScript expli
Inputs: code, spec, options, properties, +1 more.
svg-geometryInspect
SVG layout check: clipping, overlaps and empty shapes from supplied geometry — Checks up to 200 SVG shapes you describe (rect, circle, ellipse, line, polygon, polyline, text, or a path's bounding box) against the viewBox and viewport the way an SVG renderer would: finds shapes clipped or entirely outside the drawn region, shapes that render nothing (zero or negative size, unstroked line), partial overlaps between shapes, and a zero, negative or malformed viewBox, for agents
Inputs: shapes (required), width, checks, height, +2 more.
symbol-existsInspect
Is this export in the npm package's published type declarations — Checks that up to 20 named exports (functions, classes, constants, types, default) exist in the .d.ts files published for an exact npm package version, read from jsDelivr, for coding agents that may be calling an API that does not exist. Follows export lists and relative export-star re-exports within the package (at most 7 files) and reports when the export surface cannot be fully enumerated. Neve
Inputs: package (required), symbols (required), version (required), entry, +1 more.
unicode-safety-gateInspect
Adversarial Unicode & Trojan Source gatekeeper — Scans a public GitHub repo, a pull request, a unified diff or a list of files for adversarial Unicode with the 19 rules (USC001-USC019) of dcondrey/unicode-safety-check: bidi controls (Trojan Source), invisible and default-ignorable characters, variation-selector and tag-character payloads (Glassworm), private-use code points, homoglyph and mixed-script identifiers, confusable collisions, misplace
Inputs: ref, diff, repo, files, +4 more.
union-branchInspect
Which oneOf / anyOf branch a JSON value matches, or why several or none do — Evaluates a JSON value against every branch of a oneOf or anyOf in a caller-supplied JSON Schema 2020-12 (or OpenAPI schema converted to it) and reports which branches match, the exact errors of each branch that fails with the JSON pointer of each offending value, the closest branch, and which branch an OpenAPI discriminator points to. For agents debugging why a tool or API payload is rejected w
Inputs: value (required), schema (required), at, keyword.
url-canonicalizeInspect
URL canonicalizer and lookalike-host check — Canonicalizes up to 50 absolute http(s) URLs for an agent about to fetch, dedupe or click them: WHATWG-parsed lowercase host, default port and fragment and userinfo removed, dot segments and unreserved percent-escapes normalized, tracking parameters (utm_*, gclid, fbclid and the Mozilla strip list plus yours) removed, and flags userinfo@host tricks, backslash and multiple-@ authorities, obfuscated
Inputs: urls (required), sortQuery, publicSuffixes, extraTrackingParams.
webhook-verifyInspect
Verify webhook signatures from 8 providers — Constant-time verification of inbound webhook signatures from Stripe, GitHub, Shopify, Slack, Twilio, Linear, Clerk (Svix) and SendGrid HMAC, each using the exact signing string that provider documents. Every scheme uses Web Crypto HMAC with a timing-safe compare and, where the provider signs a timestamp, a configurable clock-skew tolerance (default 300s) to block replay. Returns the verdict and t
Inputs: secret (required), source (required), headers (required), rawBody (required), +4 more.
web-searchInspect
Web search: licensed Exa/Brave results with snippets — Runs a web search through a licensed search API (Exa or Brave) and returns up to 10 ranked results with title, URL, snippet, highlights and published date, for agents that need current links. Does not scrape search engines, does not fetch or summarize the result pages (use page-contents for that), and does not use a model.
Inputs: query (required), site, provider, date_from, +2 more.
wheel-availabilityInspect
Is there a compatible PyPI wheel for this Python and platform — Lists the wheels PyPI offers for a package release and picks those compatible with a given CPython version, OS, CPU architecture and libc (glibc or musl version, or macOS version), best match first, for agents choosing base images or debugging 'building from source' installs. Applies PEP 425/600/656 tag ordering, abi3, legacy manylinux aliases, Requires-Python and yanked files. CPython only (no Py
Inputs: python (required), package (required), platform (required), version, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Code review for diffs: rule-based checks for leaked secrets, unsafe migrations and more.
Risk-scan a diff, flag AI-generated-code tells, find secrets. 5 of 7 tools need no account.
Security reviews for coding agents: diffs checked against your org policy and live infrastructure.
Detects database migration table locks, terraform cost leaks, and OWASP API flaws.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables local, deterministic review of GitHub and GitLab pull request diffs for secret leaks, OWASP injection issues, WCAG 2.2 AA/EU EAA accessibility gaps, EU AI Act transparency, and database RLS risks, producing risk scores, merge decisions, committable suggestions, and SARIF exports.4MIT
- AlicenseAqualityBmaintenanceSelf-hosted MCP engine for private code reviews, providing deterministic static analysis and AST-level search over diffs, with findings passed to a review agent of your choice.52AGPL 3.0
- AlicenseAqualityBmaintenanceEnables code-review gating by converting a git diff into a typed verdict with safety probabilities, severity, and recommended actions for auto-merge or human review.11MIT
- AlicenseAqualityBmaintenanceEnables AI coding agents to score source-file maintainability, review code smells with fix hints, and gate commits or pull requests on whether touched code worsened across many languages and MCP clients.9MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.