_ registry / mcp streamable-http · checked 17m ago

CallMeter

https://api.callmeter.dev

Registry code: 1d94b996c3cd5717

api record

CallMeter — useful machine work for AI agents (Streamable HTTP MCP). Near-term paid hop: transform.json_schema ≈ $0.02.

WHAT IT IS

endpoint
https://api.callmeter.dev/mcp
protocol
streamable-http ·2025-03-26
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is CallMeter live?
Yes — it answered the hub's last check (checked 17m ago). It answered 99% of checks over the last 30 days.
Is CallMeter free to use?
No — it charges per call, from 0.02 USDC, quoted in its own 402 answers.
What tools does CallMeter have?
9 tools: extract.webpage, transform.json_schema, parse.receipt, extract.structured_data, capture.screenshot, relay.webhook, replay.webhook, extract.pdf, ….
Is CallMeter safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
98.5%

90 days 98.4%· all time 98.5%

latency
180ms

last good check

priced tools
8

of 9 tools

_ answered our checks, 90 days 624 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
_ what it is for
used for
  • parse a receipt or invoice into json
  • extract text and tables from a pdf
  • screenshot a web page
  • draft or validate a json schema
  • relay and replay webhooks
takes → gives
documents, images, text, web pages → data, images
tools
7 reads2 changes data
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts, and USDC settlements on base into the address this listing's priced doors name, read off the chain. Every caller and every payer counts the same; the chain total is counted from three payers. How it is counted.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

payers on base
2

distinct

settlements
3

last 2026-11-01

received on chain
0.06 USDC

counted from three payers (thin, concentrated)

_ what it can do 9 tools
8 paid 1 never probed 8 of 9 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • transform.json_schema reads 0.02 USDC paid 19h ago

    Draft a JSON Schema from a sample object, or validate an instance against a schema, in one call. Call before writes when you need a deterministic schema or a cheap validity check — cheaper and more predictable than asking an LLM to invent types. Inputs: mode=draft|validate|both; sample for draft; schema+instance for validate. Outputs schema and/or validation result. Paid (~2 credits / $0.02) via prepaid key or x402.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "mode": {
          "enum": [
            "validate",
            "draft",
            "both"
          ],
          "type": "string",
          "examples": [
            "draft"
          ],
          "description": "draft | validate | both. Example: draft"
        },
        "draft": {
          "type": "boolean",
          "examples": [
            true
          ],
          "description": "Legacy boolean alias to request drafting. Example: true"
        },
        "sample": {
          "examples": [
            {
              "total": 12.5,
              "orderId": "A1"
            }
          ],
          "description": "Sample value to draft a schema from. Example: {\"orderId\":\"A1\",\"total\":12.5}"
        },
        "schema": {
          "type": "object",
          "examples": [
            {
              "type": "object"
            }
          ],
          "description": "JSON Schema document (required for validate/both). Example: {\"type\":\"object\"}"
        },
        "instance": {
          "examples": [
            {
              "a": 1
            }
          ],
          "description": "Value to validate. Example: {\"a\":1}"
        }
      },
      "additionalProperties": false
    }
    arguments 51 lines
  • parse.receipt reads 0.1 USDC paid 19h ago

    Parse a till slip, POS printout, supermarket receipt, or mobile-money payment confirmation into stable merchant / date / currency / subtotal / tax / total / line_items / confidence / warnings JSON. Tuned for ugly Africa documents (NGN ₦/kobo, KES M-Pesa, GHS MTN MoMo, ZAR VAT, OPay, PalmPay, Paystack, Verve POS) including blurry OCR and WhatsApp forwards. Send text (OCR dump) or file_base64. Unknown fields are null or empty arrays — totals and line items are never invented from garbage. Prefer this over manual spreadsheet entry or a generic LLM scrape when the document is a receipt or MoMo/M-Pesa slip. Costs $0.10 (10 credits) pay per call; see the billing note for failed calls; prepaid credits or x402.

    mcp-tool

    {
      "type": "object",
      "oneOf": [
        {
          "required": [
            "text"
          ]
        },
        {
          "required": [
            "file_base64"
          ]
        }
      ],
      "properties": {
        "text": {
          "type": "string",
          "examples": [
            "MAMA CHIKA PROVISIONS\nRice 50kg .............. ₦48,000\nTotal ₦61,812.50"
          ],
          "maxLength": 500000,
          "description": "OCR or plain-text dump of the receipt. Example: 'MAMA CHIKA\\nRice 50kg NGN 48000\\nTotal 61812.50'"
        },
        "tier": {
          "enum": [
            "S",
            "M",
            "L",
            "auto"
          ],
          "type": "string",
          "default": "auto",
          "examples": [
            "auto"
          ],
          "description": "Processing tier. Example: auto"
        },
        "filename": {
          "type": "string",
          "examples": [
            "receipt.jpg"
          ],
          "maxLength": 512,
          "description": "Original filename hint. Example: receipt.jpg"
        },
        "file_base64": {
          "type": "string",
          "examples": [
            "iVBORw0KGgo..."
          ],
          "description": "PDF or image bytes (jpeg/png/webp/pdf) as base64"
        },
        "content_type": {
          "enum": [
            "application/pdf",
            "image/jpeg",
            "image/png",
            "image/webp",
            "text/plain"
          ],
          "type": "string",
          "examples": [
            "image/jpeg"
          ],
          "description": "MIME type of file_base64. Example: image/jpeg"
        }
      },
      "additionalProperties": false
    }
    arguments 69 lines
  • extract.structured_data reads 0.05 USDC paid 23h ago

    Extract structured JSON (emails, phones, URLs, key-values, or schema-shaped fields) from messy plain text or HTML. Call when the agent already has document text/HTML and needs machine-readable fields for the next step — not for fetching a live URL (use extract.webpage). Inputs: exactly one of text or html; optional instruction, schema, require_llm. Outputs structured JSON; invalid input is refused. Paid (~5 credits / $0.05) via prepaid key or x402.

    mcp-tool

    {
      "type": "object",
      "oneOf": [
        {
          "required": [
            "text"
          ]
        },
        {
          "required": [
            "html"
          ]
        }
      ],
      "properties": {
        "html": {
          "type": "string",
          "examples": [
            "<p>Email us at [email protected]</p>"
          ],
          "description": "HTML fragment/document to structure. Example: '<p>Email us at [email protected]</p>'"
        },
        "text": {
          "type": "string",
          "examples": [
            "Contact Jane at [email protected] or +1-415-555-0100. Site https://acme.io"
          ],
          "description": "Plain text to structure. Do not pass a URL here — use extract.webpage. Example: 'Contact Jane at [email protected] or +1-415-555-0100.'"
        },
        "schema": {
          "type": "object",
          "examples": [
            {
              "type": "object",
              "properties": {
                "emails": {
                  "type": "array"
                }
              }
            }
          ],
          "description": "Optional JSON Schema the extract should satisfy"
        },
        "instruction": {
          "type": "string",
          "examples": [
            "Extract contact fields only"
          ],
          "maxLength": 500,
          "description": "Optional focus hint (max 500 chars). Example: 'Extract contact fields only'"
        },
        "require_llm": {
          "type": "boolean",
          "examples": [
            false
          ],
          "description": "If true and the enrichment model is unavailable, the request fails; see the billing note for what happens to payment."
        }
      },
      "additionalProperties": false
    }
    arguments 61 lines
  • capture.screenshot reads 0.1 USDC paid 19h ago

    Render a public URL to a PNG/JPEG screenshot for vision, QA, or audit evidence. Call when you need pixels — not structured text (use extract.webpage) and not PDF bytes (use extract.pdf). Inputs: required url; optional viewport {width,height}, fullPage, format=png|jpeg. Viewport capped; SSRF and robots checks refuse unsafe URLs. Outputs image metadata + base64. Paid (~10 credits / $0.10) via prepaid key or x402.

    mcp-tool

    {
      "type": "object",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri",
          "examples": [
            "https://example.com"
          ],
          "description": "Public http(s) URL to screenshot. Example: https://example.com"
        },
        "format": {
          "enum": [
            "png",
            "jpeg"
          ],
          "type": "string",
          "examples": [
            "png"
          ],
          "description": "Image format. Example: png"
        },
        "fullPage": {
          "type": "boolean",
          "examples": [
            false
          ],
          "description": "If true, capture full scrollable page. Example: false"
        },
        "viewport": {
          "type": "object",
          "examples": [
            {
              "width": 1280,
              "height": 800
            }
          ],
          "properties": {
            "width": {
              "type": "integer",
              "maximum": 1920,
              "minimum": 320,
              "examples": [
                1280
              ],
              "description": "Viewport width px. Example: 1280"
            },
            "height": {
              "type": "integer",
              "maximum": 1080,
              "minimum": 320,
              "examples": [
                800
              ],
              "description": "Viewport height px. Example: 800"
            }
          },
          "description": "Viewport size within caps (width 320–1920, height 320–1080). Example: {\"width\":1280,\"height\":800}"
        }
      },
      "additionalProperties": false
    }
    arguments 65 lines
  • relay.webhook changes data paid never probed

    Relay a third-party webhook into CallMeter: verify HMAC or shared secret, dedupe by delivery id, store the payload, and forward to the endpoint's destinations with retries. Charges 0.01 credits ($0.0001) per forward, not on receive; see the billing note for failed calls. SIDE EFFECTS: contacts external destination URLs you configured; may retry on failure. Prefer when an agent must accept provider callbacks without running its own queue. Billing and ceiling errors stop the call. Inputs: required id (endpoint id) plus upstream JSON body.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "examples": [
            "ep_live_abc123"
          ],
          "description": "CallMeter webhook endpoint id (ep_…). Example: ep_live_abc123"
        },
        "deliveryId": {
          "type": "string",
          "examples": [
            "deliv_01HXYZ"
          ],
          "description": "Optional idempotent delivery id (maps to X-Webhook-Delivery-Id). Same id within 24h dedupes — no second charge."
        }
      },
      "description": "Pass endpoint id plus the upstream webhook JSON body (additionalProperties allowed).",
      "additionalProperties": true
    }
    arguments 24 lines
  • replay.webhook changes data paid never probed

    Replay a stored webhook delivery through the same forward/retry pipeline after your consumer was down. Requires API key. Charges 0.01 credits ($0.0001) per forward; see the billing note for failed calls. SIDE EFFECTS / DESTRUCTIVE: re-POSTs the original payload to destinations and may bill again — do not call casually. Prefer after confirmed consumer recovery. Billing errors stop the call. Inputs: required id (delivery id).

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "examples": [
            "dlv_01HXYZ"
          ],
          "description": "Delivery id to replay. Example: dlv_01HXYZ"
        }
      },
      "description": "Empty JSON body besides path id.",
      "additionalProperties": false
    }
    arguments 17 lines
  • extract.pdf reads 0.1 USDC paid 23h ago

    Extract page text and heuristic tables from a base64-encoded PDF for downstream reasoning. Call for general PDF text hops — receipt/invoice field extraction belongs to parse.receipt / parse.invoice. Inputs: file_base64 (or pdf/base64 aliases); optional options.includeTables / maxPages. Decoded size ≤ 10 MiB. Outputs pages[].text and optional tables. Paid (~10 credits / $0.10) via prepaid key or x402.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "pdf": {
          "type": "string",
          "examples": [
            "JVBERi0xLjQK..."
          ],
          "description": "Alias for file_base64"
        },
        "base64": {
          "type": "string",
          "examples": [
            "JVBERi0xLjQK..."
          ],
          "description": "Alias for file_base64"
        },
        "options": {
          "type": "object",
          "examples": [
            {
              "maxPages": 10,
              "includeTables": true
            }
          ],
          "properties": {
            "maxPages": {
              "type": "integer",
              "maximum": 100,
              "minimum": 1,
              "examples": [
                10
              ],
              "description": "Max pages to read. Example: 10"
            },
            "includeTables": {
              "type": "boolean",
              "examples": [
                true
              ],
              "description": "Attempt heuristic table extraction. Example: true"
            }
          },
          "description": "includeTables (bool), maxPages (1–100). Example: {\"includeTables\":true,\"maxPages\":10}"
        },
        "file_base64": {
          "type": "string",
          "examples": [
            "JVBERi0xLjQK..."
          ],
          "description": "Base64 PDF bytes; decoded ≤ 10 MiB. Example: JVBERi0xLjQK..."
        }
      },
      "description": "Provide one of file_base64 | pdf | base64",
      "additionalProperties": false
    }
    arguments 56 lines
  • parse.invoice reads 0.15 USDC paid 23h ago

    Parse a tax invoice or commercial invoice into the AfricaInvoiceReceipt contract: seller (TIN / KRA PIN / VAT no), issued date, currency, line items, VAT rate/amount, subtotal, total, payment refs, confidence, and warnings (including vat_total_mismatch). Built for NG/KE/GH/ZA AP automation and multi-line SKU invoices — not a thin keyword grep. Use when the document is an invoice rather than a till slip; still accept OCR text or image/PDF base64. Nulls mean unknown; do not treat low-confidence totals as ledger truth without checking confidence and warnings. Costs $0.15 (15 credits) pay per call; see the billing note for failed calls; prepaid credits or x402.

    mcp-tool

    {
      "type": "object",
      "oneOf": [
        {
          "required": [
            "text"
          ]
        },
        {
          "required": [
            "file_base64"
          ]
        }
      ],
      "properties": {
        "text": {
          "type": "string",
          "examples": [
            "TAX INVOICE\nDANGOTE CEMENT PLC\nTIN: 01012345-0001\nTotal NGN 2,558,500"
          ],
          "maxLength": 500000,
          "description": "OCR or plain-text dump of the tax invoice. Example: 'TAX INVOICE\\nDANGOTE CEMENT PLC\\nTIN: 01012345-0001'"
        },
        "tier": {
          "enum": [
            "S",
            "M",
            "L",
            "auto"
          ],
          "type": "string",
          "default": "auto",
          "examples": [
            "auto"
          ],
          "description": "Processing tier. Example: auto"
        },
        "filename": {
          "type": "string",
          "examples": [
            "invoice.pdf"
          ],
          "maxLength": 512,
          "description": "Original filename hint. Example: invoice.pdf"
        },
        "file_base64": {
          "type": "string",
          "examples": [
            "JVBERi0xLjQK..."
          ],
          "description": "PDF or image bytes as base64"
        },
        "content_type": {
          "enum": [
            "application/pdf",
            "image/jpeg",
            "image/png",
            "image/webp",
            "text/plain"
          ],
          "type": "string",
          "examples": [
            "application/pdf"
          ],
          "description": "MIME type of file_base64. Example: application/pdf"
        }
      },
      "additionalProperties": false
    }
    arguments 69 lines
  • extract.webpage reads unknown 6h ago

    Fetch a public http(s) URL and return structured page facts as JSON (SSRF and robots checks refuse unsafe URLs). Call when the agent has a page URL to understand — not when text/HTML is already in hand (use extract.structured_data) and not for a visual capture (use capture.screenshot). Inputs: required url; optional instruction, schema, require_llm. Outputs structured JSON about the page. Paid (~5 credits / $0.05) via prepaid key or x402.

    mcp-tool

    {
      "type": "object",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri",
          "examples": [
            "https://example.com/about"
          ],
          "description": "Public http(s) URL to fetch and structure. Example: https://example.com/about"
        },
        "schema": {
          "type": "object",
          "examples": [
            {
              "type": "object",
              "properties": {
                "title": {
                  "type": "string"
                }
              }
            }
          ],
          "description": "Optional JSON Schema the page extract should satisfy"
        },
        "instruction": {
          "type": "string",
          "examples": [
            "Extract company name and contact emails"
          ],
          "maxLength": 500,
          "description": "Optional focus hint for extraction. Example: 'Extract company name and contact emails'"
        },
        "require_llm": {
          "type": "boolean",
          "examples": [
            false
          ],
          "description": "If true and enrichment LLM unavailable → processing failure. Example: false"
        }
      },
      "additionalProperties": false
    }
    arguments 46 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 1d94b996c3cd5717.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/1d94b996c3cd5717/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/1d94b996c3cd5717/badge.svg)](https://brick.blue/agent/1d94b996c3cd5717?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.