who_reps-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OPENSTATES_API_KEY | No | OpenStates API key for state legislator data (optional, federal works without it) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pingA | Health check. Returns 'pong' if the server is alive. |
| lookup_officialsA | Who represents this address? Returns U.S. Senators + House member (and, where available, Governor + state legislators), each with party, contact, term, source, and as-of date, plus the OCD divisions and coverage notes. |
| list_districtsC | Just the districts/divisions for an address (the piece Google's Divisions API still gives) — congressional + state-legislative districts and OCD-IDs. |
| lookup_by_districtB | Officials for a chamber + district, skipping geocoding. |
| get_official_detailsA | Enriched detail for one official (committees + full contact where available), by the id returned from the other tools. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose: lookup_officials and lookup_by_district differ in input (address vs. chamber+district), list_districts provides district IDs, get_official_details gives detailed info on a single official, and ping is a health check. No ambiguity.
Tool names follow a pattern of verb_noun (list_districts, get_official_details, lookup_by_district, lookup_officials) with one exception (ping). The verbs 'list', 'get', and 'lookup' are thematically coherent, though using 'lookup' for two tools could cause slight confusion.
Five tools is a reasonable count for a focused domain like legislative representation lookup. Each tool serves a distinct function, and the set feels neither sparse nor bloated.
The tool set covers core operations: address-based lookup, district-based lookup, district listing, and official details. Missing features like coordinate-based lookup or batch queries are minor gaps that don't significantly hinder typical use cases.