B

GovLaws — MPP Grade B

https://govlaws.ai 88% (90/102)
legalgovernmentregulationsstatutes
Preview responses and set spending limits for this service through use.mpp.land Free budget controls, response samples, and reliability routing.

On-chain Activity

48 Total txs
0 7d txs
$0.00 7d volume
$1.58 Total volume
7 Unique payers
0 Unique clients
7-day activity ▁▁▁▁▁▁▁

Compliance Checks

All paid ops declare 402 response MUST 10pt
All x-payment-info valid MUST 10pt
Challenge has Cache-Control: no-store MUST 5pt
- Challenge digest on POST SHOULD 3pt
Challenge has expires SHOULD 3pt
Challenge has Problem Details SHOULD 2pt
Challenge has required params MUST 5pt
Challenge has WWW-Authenticate MUST 5pt
Challenge returns 402 MUST 10pt
Correct Content-Type MUST 5pt
Has Cache-Control on discovery SHOULD 5pt
Has input schemas SHOULD 5pt
Has llms.txt SHOULD 5pt
Has /openapi.json at root MUST 10pt
Has required top-level fields MUST 10pt
Served over HTTPS MUST 10pt
Uses standard categories SHOULD 2pt
3 issues
  • Custom payment method 'x402' on GET /api/x402/resolve
  • Custom payment method 'x402' on POST /api/x402/search
  • Custom payment method 'x402' on GET /api/x402/changes

Paid Operations (9)

GET /api/mpp/resolve 0.05 USDC.e
Resolve a citation via pay-per-request (MPP)

Same as GET /api/resolve but requires no API key. Payment is handled via the Machine Payments Protocol (MPP) — the first call returns 402 with a payment challenge. Tempo pathUSD is the primary rail for the $0.05 microtransaction. Stripe Machine Payments is reserved for higher-value MPP charges that meet Stripe minimums.

Amount
0.05 (raw 50000)
Currency
USDC.e
Method
tempo
Intent
charge
402 Declared
Yes
Non-standard x-payment-info fields: methods: [map[amount:50000 currency:0x20c000000000000000000000b9537d11c60e8b50 decimals:6 intent:charge method:tempo role:primary settlement:Tempo pathUSD stablecoin]]

Parameters

NameInTypeRequiredDescription
citation query string Yes CFR or U.S. Code citation, e.g. "12 CFR 1026.43" or "15 U.S.C. § 1681"
GET /api/x402/resolve 0.05 USDC
Resolve a citation via x402 pay-per-request

Same legal response as GET /api/resolve, but requires no GovLaws API key. Uses x402 exact payments over Base USDC through the Coinbase CDP facilitator. Designed for x402 Bazaar and Amazon Bedrock AgentCore Payments discovery.

Amount
0.05
Currency
USDC
Method
x402
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: facilitator: https://api.cdp.coinbase.com/platform/v2/x402 network: eip155:8453 pay_to_configured: true scheme: exact settlement: Base USDC via Coinbase CDP x402 facilitator

Parameters

NameInTypeRequiredDescription
citation query string Yes CFR or U.S. Code citation, e.g. "12 CFR 1026.43" or "15 U.S.C. § 1681"
POST /api/x402/search 0.03 USDC
Semantic search via x402 pay-per-request

Same legal response as POST /api/search, but requires no GovLaws API key. Supports corpus = regulations, statutes, or all. Uses x402 exact payments over Base USDC through the Coinbase CDP facilitator.

Amount
0.03
Currency
USDC
Method
x402
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: facilitator: https://api.cdp.coinbase.com/platform/v2/x402 network: eip155:8453 pay_to_configured: true scheme: exact settlement: Base USDC via Coinbase CDP x402 facilitator

Input Schema

{
  "$ref": "#/components/schemas/SearchRegulationsInput"
}
GET /api/x402/changes 0.03 USDC
Recent regulatory changes via x402 pay-per-request

Same legal response as GET /api/changes, but requires no GovLaws API key. Uses x402 exact payments over Base USDC through the Coinbase CDP facilitator.

Amount
0.03
Currency
USDC
Method
x402
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: facilitator: https://api.cdp.coinbase.com/platform/v2/x402 network: eip155:8453 pay_to_configured: true scheme: exact settlement: Base USDC via Coinbase CDP x402 facilitator

Parameters

NameInTypeRequiredDescription
agency query string No -
citation query string No -
days query integer No -
POST /api/mpp/search 0.03 USDC.e
Semantic search via pay-per-request (MPP)

Same as POST /api/search but requires no API key. Supports corpus = regulations, statutes, or all. Uses MPP payment flow (402 challenge → pay → replay). $0.03 per request.

Amount
0.03 (raw 30000)
Currency
USDC.e
Method
tempo
Intent
charge
402 Declared
Yes
Non-standard x-payment-info fields: methods: [map[amount:30000 currency:0x20c000000000000000000000b9537d11c60e8b50 decimals:6 intent:charge method:tempo role:primary settlement:Tempo pathUSD stablecoin]]

Input Schema

{
  "$ref": "#/components/schemas/SearchRegulationsInput"
}
GET /api/mpp/changes 0.03 USDC.e
Recent regulatory changes via pay-per-request (MPP)

Same as GET /api/changes but requires no API key. Uses MPP payment flow. $0.03 per request.

Amount
0.03 (raw 30000)
Currency
USDC.e
Method
tempo
Intent
charge
402 Declared
Yes
Non-standard x-payment-info fields: methods: [map[amount:30000 currency:0x20c000000000000000000000b9537d11c60e8b50 decimals:6 intent:charge method:tempo role:primary settlement:Tempo pathUSD stablecoin]]

Parameters

NameInTypeRequiredDescription
agency query string No -
citation query string No -
days query integer No -
GET /api/mpp/identity 0 USDC.e
Re-authenticate a prior MPP payer with zero-dollar auth

Uses the standard MPP challenge/credential flow with amount 0 so a client can prove it controls the same identity that made earlier paid GovLaws requests. Returns prior payment history and refund status for that identity.

Amount
0
Currency
USDC.e
Method
tempo
Intent
charge
402 Declared
Yes
Non-standard x-payment-info fields: methods: [map[amount:0 currency:0x20c000000000000000000000b9537d11c60e8b50 decimals:6 intent:charge method:tempo role:primary settlement:Tempo pathUSD stablecoin]]
GET /api/mpp/refunds 0 USDC.e
List refund requests for the current MPP identity

Uses zero-dollar MPP auth to verify the payer identity, then returns refund requests tied to that identity.

Amount
0
Currency
USDC.e
Method
tempo
Intent
charge
402 Declared
Yes
Non-standard x-payment-info fields: methods: [map[amount:0 currency:0x20c000000000000000000000b9537d11c60e8b50 decimals:6 intent:charge method:tempo role:primary settlement:Tempo pathUSD stablecoin]]
POST /api/mpp/refunds 0 USDC.e
Request a refund for a prior MPP payment

Uses zero-dollar MPP auth to verify the payer identity, then records a refund request linked to the original challenge_id or receipt_id. Refund settlement is handled out of protocol to the original payer identity.

Amount
0
Currency
USDC.e
Method
tempo
Intent
charge
402 Declared
Yes
Non-standard x-payment-info fields: methods: [map[amount:0 currency:0x20c000000000000000000000b9537d11c60e8b50 decimals:6 intent:charge method:tempo role:primary settlement:Tempo pathUSD stablecoin]]

Input Schema

{
  "$ref": "#/components/schemas/MppRefundRequestInput"
}

Payment Methods

Methods
tempo, x402
Intents
charge
Currencies (discovery)
USDC.e , USDC
Currency (challenge)
USDC.e on Tempo Mainnet Presto (Tempo Mainnet Presto)
Multiple Challenges
No

Recipients

  • 0x101ca209fa4d047c7dedc979d4ea9e5369f91ddf
Per-endpoint breakdown
GET /api/mpp/changes
0x101ca209fa4d047c7dedc979d4ea9e5369f91ddf
GET /api/mpp/resolve
0x101ca209fa4d047c7dedc979d4ea9e5369f91ddf

Security

TLS Version
TLSv1.3
Challenge ID Unique
-
Challenge ID Length
-
Digest Binding
-

Uptime

Discovery
Reachable (79ms)
Challenge
Reachable (244ms)
Last Checked

Schema Completeness

Paid Operations
9
With Input Schema
3
With Description
9
6 missing schema
  • GET /api/mpp/resolve
  • GET /api/x402/resolve
  • GET /api/x402/changes
  • GET /api/mpp/changes
  • GET /api/mpp/identity
  • GET /api/mpp/refunds

Documentation

Homepage
https://govlaws.ai/
API Reference
https://govlaws.ai/openapi.json
llms.txt
https://govlaws.ai/llms.txt reachable

Discovery

OpenAPI URL
https://govlaws.ai/openapi.json
OpenAPI Version
3.1.0
Service Version
1.0.0
Document Size
40905 bytes
Document Hash
059306b337c180c53828c26455b420e1f0848a98d0b6028a8f6db776dfb46c36

Version History (52 snapshots)

Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
Grade: F (20%) → B (88%)
Grade: B (88%) → F (20%)
  • new endpoint: GET /api/x402/changes
  • new endpoint: GET /api/x402/resolve
  • new endpoint: POST /api/x402/search
Grade: A (98%) → B (88%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
  • document hash changed (no semantic differences detected)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
  • document hash changed (no semantic differences detected)
  • document hash changed (no semantic differences detected)
  • document hash changed (no semantic differences detected)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
  • document hash changed (no semantic differences detected)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
  • document hash changed (no semantic differences detected)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
  • document hash changed (no semantic differences detected)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: F (20%) → A (98%)
Grade: A (98%) → F (20%)
Grade: B (85%) → A (98%)
Scan snapshots
Date Grade Score Response Status
2026-04-06 B 85% 164ms Up
2026-04-07 A 98% 1263ms Up
2026-04-08 A 98% 117ms Up
2026-04-09 A 98% 57ms Up
2026-04-10 A 98% 64ms Up
2026-04-11 A 98% 92ms Up
2026-04-12 A 98% 67ms Up
2026-04-13 A 98% 69ms Up
2026-04-14 A 98% 52ms Up
2026-04-15 A 98% 42ms Up
2026-04-16 A 98% 52ms Up
2026-04-17 A 98% 664ms Up
2026-04-18 A 98% 76ms Up
2026-04-19 A 98% 63ms Up
2026-04-20 A 98% 51ms Up
2026-04-21 A 98% 54ms Up
2026-04-22 A 98% 64ms Up
2026-04-23 A 98% 66ms Up
2026-04-24 A 98% 127ms Up
2026-04-25 A 98% 42ms Up
2026-04-26 A 98% 220ms Up
2026-04-27 A 98% 45ms Up
2026-04-28 A 98% 188ms Up
2026-04-29 A 98% 212ms Up
2026-04-30 A 98% 210ms Up
2026-05-01 A 98% 127ms Up
2026-05-02 A 98% 67ms Up
2026-05-03 A 98% 60ms Up
2026-05-04 A 98% 86ms Up
2026-05-05 A 98% 76ms Up
2026-05-06 A 98% 130ms Up
2026-05-07 A 98% 52ms Up
2026-05-08 A 98% 75ms Up
2026-05-09 A 98% 56ms Up
2026-05-10 B 88% 55ms Up
2026-05-11 B 88% 196ms Up
2026-05-12 B 88% 43ms Up
2026-05-13 B 88% 68ms Up
2026-05-14 B 88% 58ms Up
2026-05-15 B 88% 50ms Up
2026-05-16 B 88% 75ms Up
2026-05-17 B 88% 76ms Up
2026-05-18 B 88% 53ms Up
2026-05-19 B 88% 179ms Up
2026-05-20 B 88% 214ms Up
2026-05-21 B 88% 55ms Up
2026-05-22 B 88% 273ms Up
2026-05-23 B 88% 72ms Up
2026-05-24 B 88% 58ms Up
2026-05-25 B 88% 77ms Up
2026-05-26 B 88% 48ms Up
2026-05-27 B 88% 97ms Up