GetRegisters / Use with your agent

Use your register with your agent

Use your agent to review source-backed notices and research questions in your register. Start with the register catalogue and free title search, then inspect a record and its coverage before paying. People can use the same public pages and subscribe for ongoing access.

Connect your existing subscription

In an agent app that supports remote MCP with OAuth, add https://getregisters.com/api/v1/mcp. Sign in to your GetRegisters account, check the app name and callback address, and select the registers it may access. Your free or PRO subscription determines what it can read. Connecting an agent does not upgrade your plan or give it permission to spend.

Ask your agent to list your subscriptions, find relevant records and cite their original sources. You can revoke its connection from the account page. Google sign-in appears when available; email sign-in links remain supported.

Notify your agent when records change

In your account, add an HTTPS notification receiver provided by your agent host or automation service. Notifications contain the register, record and version identifiers and a public record link. They contain no paid record details. Both free and PRO subscribers can use them; the agent fetches details using its own current account permissions.

Your receiver must verify the notification signature, ignore duplicate event IDs and start the agent workflow. Save the signing secret shown during setup in that receiver's secret store. GetRegisters retries failed deliveries, so receivers must handle the same event more than once. Revoking the connection or deleting the notification subscription stops future attempts; a request already in flight may still arrive.

The signature header is X-Register-Signature: t=UNIX_SECONDS,v1=HEX_HMAC_SHA256. Compute HMAC-SHA256 over the exact bytes timestamp + "." + raw_request_body using your signing secret, compare in constant time, and reject timestamps outside a short tolerance such as five minutes. Deduplicate event_id per register and return 2xx only after durably recording the event. The JSON fields are event_id, type (record.changed), feed_id, record_id, version_id, public_url and created_at.

An MCP connection alone does not wake a closed chat. Automatic runs require a host or automation service that accepts webhooks. If your app only supports interactive MCP, use it to check records when you open the conversation.

Pay for an individual request

AccessPriceWhat you receive
DiscoveryFreeRegister catalogue, title search, previews, coverage and purchase terms
One record0.005 USDCCurrent full structured version at purchase, with original-source citations; no history or future updates
History page0.025 USDCUp to 500 retained versions; each nonempty page is a separate purchase, empty pages are free

Payments use native USDC on Base. The challenge gives the exact price before signing. Internal-use licence: analysis by you and your agents is allowed; bulk resale and redistribution are excluded. Null fields remain unknown. Coverage differs by register and is not a complete current-law guarantee.

1. Discover without a wallet

curl 'https://getregisters.com/api/v1/feeds'
curl 'https://getregisters.com/api/v1/agent-search?feed_id=bc-childcare&search=fees&limit=20'
curl 'https://getregisters.com/api/v1/agent-offers'

Each register in /api/v1/agent-offers links to its free free_search_url, coverage page and API schema.

This BC childcare fees request is a working no-payment example. Choose a relevant title in records; do not guess or copy a record UUID from a listing. Follow its returned url to the public record and coverage_url to the source inventory. Check the available original-source link, date, status and scope there. An archived preview may withhold the source link or full fields; do not infer missing details. The search result can also include agent_offer with the exact current-record purchase url, licence, price and structured_fields_available. Check those fields before deciding whether to buy. If agent_offer is null, there is no current-record offer to use. Search matches public titles only, not summaries, semantic meaning or hidden paid text. Follow next_offset for another free page, and start with native-language title words for non-English sources.

For example, the live bc-childcare search for fees returned “Protecting parents from extra daily child care fees” when checked on September 22, 2026. Open its returned public URL and coverage page, then compare the topic with the original BC extended-hours announcement. The free preview did not expose source_url in that check, so use the official link directly for source details. The announcement concerns participating Child Care Fee Reduction Initiative providers; it is not a universal fee rule. A matching title is only a lead to inspect. A purchase is optional.

2. Use the spending-limited Node client

Use Node 22 or newer. Download agent-client.mjs into an empty local directory, then install the tested SDK:

npm init -y
npm install @coinbase/cdp-sdk@1.56.0

Configure your own existing CDP account and funded Base wallet using environment variables: CDP_API_KEY_ID, CDP_API_KEY_SECRET, CDP_WALLET_SECRET and REGISTER_BUYER_ADDRESS. Keep secrets out of agent prompts and version control. The example never creates a wallet or buys cryptocurrency.

# Bash: choose your own budget. These are maximums, not prepaid charges.
export REGISTER_MAX_PURCHASE_USDC=0.005
export REGISTER_MAX_TOTAL_USDC=0.05
export REGISTER_LEDGER="$HOME/.local/share/getregisters/payments.json"
node agent-client.mjs 'PURCHASE_URL_FROM_DISCOVERY'
# PowerShell equivalent
$env:REGISTER_MAX_PURCHASE_USDC='0.005'
$env:REGISTER_MAX_TOTAL_USDC='0.05'
$env:REGISTER_LEDGER="$env:LOCALAPPDATA\GetRegisters\payments.json"
node agent-client.mjs 'PURCHASE_URL_FROM_DISCOVERY'

For one current record, pass the exact agent_offer.url returned by search after checking its price and licence. Do not construct a purchase URL from a title or UUID. Set the per-purchase cap to 0.025 if you intend to buy a history page. Use the returned canonical export URL with ?limit=500&offset=0. Missing budgets default to zero. Limits are cumulative across restarts of this ledger; they do not automatically reset daily.

3. Connect through MCP

The public https://getregisters.com/api/v1/mcp endpoint exposes list_registers, search_record_previews and subscription-aware read_register. Public tools never sign payments.

For purchases, download agent-mcp.mjs beside the client and install the tested MCP SDK:

npm install @modelcontextprotocol/sdk@1.30.0

Add this local server to an MCP-compatible host. Supply the CDP variables through the host's secure environment, not this shared example. Replace the path and address locally.

{
  "mcpServers": {
    "getregisters": {
      "command": "node",
      "args": ["/absolute/path/agent-mcp.mjs"],
      "env": {
        "REGISTER_BUYER_ADDRESS": "YOUR_EXISTING_BASE_WALLET",
        "REGISTER_MAX_PURCHASE_USDC": "0.005",
        "REGISTER_MAX_TOTAL_USDC": "0.05",
        "REGISTER_LEDGER": "/private/absolute/path/payments.json"
      }
    }
  }
}

list_registers retrieves the free offer catalogue so the agent can select a niche before it knows a feed ID. search_records is a free title search within that niche. Choose a returned record and inspect its public URL and coverage first. If the customer has subscription access to the needed detail, use the separate OAuth-connected remote MCP read_record or read_register tool within that account's entitlement. The local wallet MCP here does not inherit the customer's OAuth subscription. Its purchase_record_or_history tool can use the exact returned offer URL and spend within the configured limits, including when that wallet belongs to a PRO subscriber. Neither local tool can raise the limits. Preserve uncertainty and cite the original publisher when the source is available.

Practical examples from verified purchases

On September 22, 2026, three owner-funded history-page tests delivered records and settled on Base. These are technical acceptance examples, not customer testimonials. The answers below summarize those records and independently checked publisher pages; they are not personalized legal advice.

Childcare monitoring: when can an extended-hours fee apply?

Search bc-childcare for fees. The purchased record points to a BC announcement: from April 1, 2026, participating Child Care Fee Reduction Initiative providers must include at least 9.5 hours of daily care before an extended-hours charge. Preserve the program-specific scope. The record's separate effective-date field was null; do not silently replace it with the date found in its narrative. Original BC announcement.

Medicaid research: was Virginia's demonstration renewed?

Search cms-waivers for Virginia. The purchased history includes the CMS renewal notice published July 31, 2026. Its structured paid fields were null, so the agent should cite the notice and open its linked approval documents before answering detailed eligibility questions. CMS states an extension running August 1, 2026 through December 31, 2031. Original CMS bulletin.

Packaging research: what roles should an online seller check?

Search de-packaging-compliance for Onlinehandel. The purchased record directs the agent to ZSVR guidance distinguishing Erzeuger responsibilities for conformity/documentation from Hersteller responsibilities for recycling finance. The source describes different packaging scenarios and a narrow microenterprise exception; the agent must establish the seller's circumstances before drawing a conclusion. The record has no publication date. Original ZSVR guidance.

Use your agent for one real question

Managing childcare, care services, property or packaging obligations? Choose your register in the live catalogue, search free titles, then open a returned record and check its coverage page. Start with one question. If you choose to buy a current record, use the returned offer URL, a 0.005-USDC per-call cap and a small total budget. Judge source relevance, missing fields and citation quality before expanding use. For continuous human access, use the subscription option on that register's record page.

Errors and recovery

402: inspect the challenge; no payment yet. 400: invalid or differently scoped payment. 409: rights not cleared, a duplicate in progress, or reconciliation needed; retain the original authorization. 410: retired register. 502: uncertain settlement; do not create another payment. 503: payment configuration unavailable. Successful responses include PAYMENT-RESPONSE. A changed or disabled offer can stop replay; retain your receipt.

Licence and delivery terms · API reference · Privacy