oravan
Registry code: ad118a50bdbff7cd
Nonpartisan U.S. Congress data: bill decodes, rep lookup, bilingual EN/ES, read-only, no accounts.
from a public catalogue that lists it, not from the operator
- endpoint
- https://oravan.org/api/mcp/mcp
- protocol
- http-sse ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is oravan live?
- Yes — it answered the hub's last check (checked 1h ago). It answered 100% of checks over the last 30 days.
- Is oravan free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does oravan have?
- 5 tools: get_representative, get_bill, lookup_representatives, search_bills, whats_moving.
- Is oravan 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.
90 days 99.7%· all time 99.7%
last good check
of 5 tools
- degraded → live
- live → degraded· timeout after 20000ms
- unknown → live
- used for
- look up representatives by zip code
- get plain-language bill summary
- search federal bills
- see what bills are moving in congress
- takes → gives
- text → data, text
- tools
- 5 reads
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
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.
search_bills reads open 1h ago
Search Oravan's bilingual federal bill corpus by free-text query, issue topic, status, or active-only. Returns short teasers (headline, status, decision_state, urgency) for matching bills, most urgent first. The urgency_score is ranked from status and recency alone; decision_state says whether a decision is still ahead.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "type": "integer", "maximum": 50, "minimum": 1, "description": "Max results (default 20, max 50)." }, "query": { "type": "string", "description": "Free-text search. Every word must appear somewhere in the bill title, short title, plain-language headline and summary, or topic names (any order, accents ignored). A bill number in any common form (\"H.Con.Res. 89\", \"hconres 89\", \"hconres-89-119\") matches that bill exactly." }, "topic": { "enum": [ "jobs_economy", "health", "national_security", "environment_energy", "government_democracy", "crime_justice", "family_community", "education", "immigration", "ai_technology", "housing", "rights_liberties" ], "type": "string", "description": "One of the 12 issue categories." }, "locale": { "enum": [ "en", "es" ], "type": "string", "description": "Response language: \"en\" (default) or \"es\"." }, "status": { "enum": [ "committee", "markup", "floor_vote", "passed_chamber", "conference", "signed", "vetoed", "introduced" ], "type": "string", "description": "Bill status to filter to." }, "active_only": { "type": "boolean", "description": "Exclude signed/vetoed (terminal) bills when true." } } }arguments 60 lineswhats_moving reads open 1h ago
What's moving in Congress recently: active, plain-language-decoded bills that cleared Oravan's 'act now' urgency bar within the last N days (default 7), optionally filtered by topic. Returns an honest empty list with quiet_week: true when nothing has cleared the bar - this tool never pads the list to look busier than Congress actually is this week. If the list is empty because Oravan's own data sync looks stale rather than Congress being quiet, data_stale is set instead so that distinction is never lost.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "days": { "type": "integer", "maximum": 90, "minimum": 1, "description": "Lookback window in days (default 7)." }, "limit": { "type": "integer", "maximum": 50, "minimum": 1, "description": "Max results (default 10, max 50)." }, "topic": { "enum": [ "jobs_economy", "health", "national_security", "environment_energy", "government_democracy", "crime_justice", "family_community", "education", "immigration", "ai_technology", "housing", "rights_liberties" ], "type": "string", "description": "One of the 12 issue categories." }, "locale": { "enum": [ "en", "es" ], "type": "string", "description": "Response language: \"en\" (default) or \"es\"." } } }arguments 44 linesget_representative reads unknown 8h ago
Get full details for one member of Congress by bioguide ID (e.g. "W000797"), plus their 5 most recently active sponsored bills. Facts only: no scorecards, ratings, or vote grades.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "bioguide" ], "properties": { "locale": { "enum": [ "en", "es" ], "type": "string", "description": "Response language: \"en\" (default) or \"es\"." }, "bioguide": { "type": "string", "minLength": 1, "description": "Bioguide ID, e.g. \"W000797\"." } } }arguments 22 linesget_bill reads unknown 1h ago
Get the full plain-language decode of a federal bill by slug (e.g. "hr-2701-119") or citation (e.g. "H.R. 2701" - resolves to the most recent Congress on a match). Returns the AI-generated summary (headline, tl;dr, what/who/why/cost - automatically checked before publish and clearly labeled when present), the official status in plain language, a decision_state (pending, settled or enacted, with the official record's own sentence in settled_reason once the decision is settled or enacted), an urgency band and an urgency_score (the score is ranked from status and recency alone; decision_state, not the score, says whether a decision is still ahead), sponsor, key dates, the official Congress.gov page, and - while the decision is still pending - an act_url to Oravan's on-site call flow. This tool never drafts a phone script - script generation happens only on-site, where the caller reads and can edit the script before dialing; that is not available over this API.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "slug": { "type": "string", "description": "Bill slug, e.g. \"hr-2701-119\". Takes priority over citation when both are given." }, "locale": { "enum": [ "en", "es" ], "type": "string", "description": "Response language: \"en\" (default) or \"es\"." }, "citation": { "type": "string", "description": "Bill citation, e.g. \"H.R. 2701\" or \"S.J.Res. 99\". Used only when slug is omitted." } } }arguments 22 lineslookup_representatives reads unknown 8h ago
Look up a person's U.S. House member and two Senators by 5-digit ZIP code. Returns each member's name, party, phone, official website, portrait URL, and district office phone numbers - the number a constituent should actually call. Some ZIP codes span more than one congressional district (needs_address: true, all candidate districts returned); this tool does not perform address-level refinement itself in this release - point the person to the response's reps_url, where a stateless, unlogged Census-geocoder proxy narrows it to a single district from a street address that Oravan never stores. When a House seat currently has no member, `vacancies` lists the empty seat(s) (state + district) explicitly - the departed member is never returned as if still serving, and no election timeline is implied.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "zip" ], "properties": { "zip": { "type": "string", "pattern": "^\\d{5}$", "description": "5-digit U.S. ZIP code." }, "locale": { "enum": [ "en", "es" ], "type": "string", "description": "Response language: \"en\" (default) or \"es\"." } } }arguments 22 lines
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.
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.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - 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. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's idad118a50bdbff7cd.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/ad118a50bdbff7cd/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/ad118a50bdbff7cd?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.
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.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- 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.