Skip to content

RTBlint

by aleksUIX · remote · no sign-in to list tools · v0.14.4 · published by GitHub user aleksUIX

Validate OpenRTB bid requests and responses against IAB specs. ARTF, Rust core.

Read only

6 tools: 6 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http rtblint https://rtblint.org/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

6 tools

Only reads 6Claude Code: allow
  • get_adcp_capabilitiesAdCP protocol discovery.No findings

    Why it is in this group

    • The name "get_adcp_capabilities" says "get": a word for reading.
    Description, as the server wrote it
    AdCP protocol discovery. Returns the AdCP releases this agent speaks and the bid-stream conformance metrics it computes. Call this first when wiring rtblint into an agentic buying pipeline: it declares the experimental measurement protocol and the metric ids (openrtb_error_count, openrtb_warning_count, openrtb_conformance_rate) that validate_bid_request and validate_bid_response produce. Part of the Ad Context Protocol (AdCP 3.1) specification.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_openrtb_versionsList every OpenRTB version id this build can validate against, from 2.0 through the monthly 2.6 snapshots.No findings

    Why it is in this group

    • The name "list_openrtb_versions" says "list": a word for reading.
    Description, as the server wrote it
    List every OpenRTB version id this build can validate against, from 2.0 through the monthly 2.6 snapshots. Call this before pinning version on a validate_* tool.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • validate_artf_requestValidate an ARTF (IAB Tech Lab Agentic Real Time Framework) RTBRequest envelope: required members, lifecycle and payload coherence, tmax plausibility, originator and applicable_int…No findings

    Why it is in this group

    • The name "validate_artf_request" says "validate": a word for reading.
    Description, as the server wrote it
    Validate an ARTF (IAB Tech Lab Agentic Real Time Framework) RTBRequest envelope: required members, lifecycle and payload coherence, tmax plausibility, originator and applicable_intents enums, plus full OpenRTB validation of the bid request and bid response it carries. The carried payloads are protobuf JSON, so they are validated in that dialect.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • validate_artf_responseValidate an ARTF RTBResponse mutation set against the RTBRequest it answers: envelope id echo, declared intent against applicable_intents, operation and payload coherence, and whet…No findings

    Why it is in this group

    • The name "validate_artf_response" says "validate": a word for reading.
    Description, as the server wrote it
    Validate an ARTF RTBResponse mutation set against the RTBRequest it answers: envelope id echo, declared intent against applicable_intents, operation and payload coherence, and whether each semantic path (/imp/{id}, /imp/{id}/pmp/deals/{id}, /user/data/segment, /seatbid/{seat}/bid/{id}) resolves to something the auction actually carries. With apply=true the mutations are written into the payloads and revalidated, reporting the OpenRTB findings the mutations introduced. Call this before proposing mutations to an orchestrator.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • validate_bid_requestValidate an OpenRTB 2.x bid request JSON payload against a tracked spec version.No findings

    Why it is in this group

    • The name "validate_bid_request" says "validate": a word for reading.
    Description, as the server wrote it
    Validate an OpenRTB 2.x bid request JSON payload against a tracked spec version. Returns structured issues with rule ids, severities, and JSON paths.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false
  • validate_bid_responseValidate an OpenRTB 2.x bid response JSON payload against a tracked spec version.No findings

    Why it is in this group

    • The name "validate_bid_response" says "validate": a word for reading.
    Description, as the server wrote it
    Validate an OpenRTB 2.x bid response JSON payload against a tracked spec version. Optionally cross-validate it against the originating bid request (impid, mtype, adm markup, dealid, seat, and currency coherence). Returns structured issues with rule ids, severities, and JSON paths.

    Annotations the server declares

    • readOnlyHint: true
    • idempotentHint: true
    • destructiveHint: false
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.14.4. Values in angle brackets are yours to fill in.

claude mcp add --transport http rtblint https://rtblint.org/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__rtblint__validate_bid_request",
      "mcp__rtblint__validate_bid_response",
      "mcp__rtblint__validate_artf_request",
      "mcp__rtblint__validate_artf_response",
      "mcp__rtblint__list_openrtb_versions",
      "mcp__rtblint__get_adcp_capabilities"
    ],
    "ask": [],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as rtblint. Review it before you use it.