VotePredictor Elections
REMOTE · VOTEPREDICTOR.COM
2026 US election forecasts with a public accuracy record, plus congressional voting records.
Available components
Last scanned (11 hours ago)
Scores higher than 92% of remote servers
Reachable. Last reached 7 Nov 2026.
Category News and Social
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Nothing on it is marked destructive, but we can't show that an anonymous caller can only read: full credit needs the server to list at least one tool and every tool to be verifiably read-only. We use a best-effort check of tool names and descriptions to tell read-only tools from tools that change things, so some genuinely read-only tools may not get full credit. Names that start with a read verb (get, list, read, search and similar) and accurate readOnlyHint annotations help. Meet that to earn full credit, or require authorisation. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability70
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 712 tokens (~178/item across 4 items; 4 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
- Stability observed for 29 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 4 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 5 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Checks we ran (13)
- TLS certificate
- Authorization
- HTTPS
- HSTS header
- DNSSEC
- Transport
- Schema quality
- Stability
- Tool coverage
- Injection markers
- Destructive annotations
- Judged manipulation
- MCP protocol
Does not apply to this hosted endpoint (2)
- Supply Chain SecurityScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
- Provenance & TransparencyScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
The score does not measure everything. What the score does not measure →
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 7 Nov 26 −1
- Stability: pass → 0.97 functional
- 6 Nov 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 2 Nov 26 0
- The server rewrote its instructions, which are the text every model session reads security
- 1 Nov 26 0
- Tool “chamber_outlook” rewrote its description, which is the text the model reads security
- 29 Oct 26 −1
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: 142 → 175 ▼ functional
- “forecast_race” reworded the description of “office” cosmetic
- “chamber_outlook” made “chamber” optional cosmetic
- “forecast_race” made “office” optional cosmetic
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Aug 26 0
- Stability: unverified → 0.03 ▲ functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 7 Nov 2026 · Probed https://votepredictor.com/api/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=*.votepredictor.com | CN=YR2,O=Let's Encrypt,C=US | 11 Sept 2026 | 10 Dec 2026 | RSA 2048 | SHA256-RSA | 62e2aa081f4f9e7b43bf0a2ed33aabd3598 |
| SANs: *.votepredictor.com, votepredictor.com | ||||||
| CN=YR2,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | 4ebd24947e24d394802d84a52fd5b319 |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of votepredictor.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | Trust anchor | 20326, 38696 | 8, 8 | Verified |
| com. | DS published | 19718 | 13 | Verified |
| votepredictor.com. | No DS | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=63072000 |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(self) |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://votepredictor.com/api/mcp | Verified | 200 | |
| http (plaintext) | http://votepredictor.com/api/mcp | HTTPS enforced | 308 | https://votepredictor.com/api/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
chamber_outlook Chamber control outlook ~89
Who is favoured to control the Senate or House after 2026: control probability, expected seats with an 80% range, how far it has moved since January, and the races that have moved most since the current model began (its latest revision).
| Name | Type | Req | Description |
|---|---|---|---|
| chamber | string | – | Which chamber of Congress: 'senate' (51 seats for control) or 'house' (218). |
| Name | Type | Req | Description |
|---|---|---|---|
| as_of | string | yes | – |
| biggest_movers | array | yes | – |
| chamber | string | yes | – |
| change_points_since | – | yes | Change in the published control probability since since_date, in points, positive toward Democrats. since_date is the first day after the chamber's latest model revision; null when the current model… |
| expected_dem_seats | number | yes | – |
| p_dem_control | number | yes | Probability Democrats control the chamber |
| range_80pct | array | yes | [p10, p90] seats in 80% of simulations |
| seats_from_fundamentals | number | yes | Forecast without any poll, because none exists |
| seats_needed | number | yes | – |
| seats_total | number | yes | – |
| seats_with_forecast | number | yes | – |
| seats_without_forecast | number | yes | Publishing nothing (an independent challenger, or polls of a former nominee); each is counted for the party defending it |
| since_date | – | yes | – |
| summary | string | yes | – |
| url | string | yes | – |
No examples provided.
forecast_race Forecast a 2026 race ~173
Current VotePredictor forecast for one 2026 US election: win probability, predicted margin, whether it comes from polls or fundamentals, how far it has moved this cycle, and the candidates. Accepts a state name or code ('Ohio', 'OH') or a district ('CA-12'). Returns an explicit refusal for races where a candidate has left the ballot and no forecast is published.
| Name | Type | Req | Description |
|---|---|---|---|
| office | string | – | Which office: SEN for U.S. Senate, GOV for governor, HOUSE for a U.S. House district. Any case; 'senate' and 'governor' also work. |
| where | string | yes | Where the race is: a state name ('Ohio'), a two-letter state code ('OH'), or a House district ('CA-12'). Pass what the user said. |
| Name | Type | Req | Description |
|---|---|---|---|
| actual_matchup | – | yes | The contest actually on the ballot, when it is not Democrat vs Republican |
| as_of | – | yes | Date of the model run behind this number |
| dem_candidate | – | yes | – |
| forecast_published | boolean | yes | False when this site declines to publish a probability for the race |
| location | – | yes | State code, or district id for the House |
| model_version | – | yes | – |
| movement_basis | – | yes | – |
| movement_points | – | yes | Change in the PUBLISHED win probability, in points, positive toward Democrats, since the current model began (the day after its latest revision). Null when the current model has under two days on fil… |
| n_polls | – | yes | – |
| no_forecast_code | – | yes | independent_contender: no Democrat is on the ballot and an independent challenges the Republican (nobody left the ballot; the model has no slot for an independent). nominee_changed: the polls on file… |
| no_forecast_reason | – | yes | Why nothing is published, in words. Do not substitute your own estimate. |
| office | – | yes | – |
| p_basis | – | yes | What set the win probability. 'shop_ratings': an unpolled House district whose probability blends in the rating shops' current ratings while pred_margin stays the lean model's, so the two can point d… |
| p_dem_win | – | yes | Democratic win probability, 0.01-0.99. Never 0 or 1: an election that has not happened is not certain. |
| pred_margin | – | yes | Predicted Dem-minus-Rep margin in points |
| race_id | string | yes | Canonical id, {year}_{OFFICE}_{location} |
| rating | – | yes | Safe D / Likely D / Lean D / Toss-up / Lean R / Likely R / Safe R |
| rep_candidate | – | yes | – |
| source | – | yes | 'polls' where a poll-driven forecast exists, otherwise 'fundamentals' (lean, incumbency, national environment) |
| state_name | – | yes | – |
| summary | string | yes | One-paragraph answer suitable for reading aloud |
| url | string | yes | Cite this |
No examples provided.
forecaster_accuracy Forecast accuracy track record ~104
How accurate each election forecaster, model, prediction market and pollster has been on resolved races, adjusted for how hard each race was. Use this to answer 'whose election forecast should I trust'. Difficulty adjustment matters: on raw scores whoever rated the safest races wins.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | How many ranked entries to return, best first. Default 10. |
| office | string | – | Restrict the board to one office, or ALL for every resolved race. |
| Name | Type | Req | Description |
|---|---|---|---|
| adjusted_for_difficulty | boolean | yes | True. Raw scores reward whoever rated the safest races, so unadjusted rankings mislead. |
| entries | array | yes | – |
| lower_is_better | boolean | yes | – |
| metric | string | yes | – |
| office | string | yes | – |
| summary | string | yes | – |
| url | string | yes | – |
No examples provided.
member_profile Member of Congress ~92
A member of Congress by name or bioguide id: party, state, ideology score, reported net worth from financial disclosures, and the 2026 race for their seat.
| Name | Type | Req | Description |
|---|---|---|---|
| who | string | yes | Who to look up: a surname ('Pelosi'), a full name, or a bioguide id ('P000197'). If several sitting members match, the tool returns the candidates rather than choosing one. |
| Name | Type | Req | Description |
|---|---|---|---|
| ambiguous_matches | – | yes | Populated when the name matches several sitting members; ask the user which, do not pick one |
| bioguide_id | – | yes | – |
| chamber | – | yes | – |
| currently_serving | – | yes | False for a former member. Lookup still resolves them, but they are not in office and are not a candidate. |
| found | boolean | yes | – |
| name | – | yes | – |
| net_worth_range | – | yes | [low, high] in dollars. Disclosures report brackets, never an exact figure. |
| net_worth_year | – | yes | – |
| party | – | yes | – |
| race_2026 | – | yes | Race id for their seat, if it is on the 2026 ballot AND they still hold it |
| state | – | yes | – |
| summary | string | yes | – |
| url | string | yes | – |
No examples provided.
How do I install the VotePredictor Elections MCP server?
VotePredictor Elections is a hosted endpoint at https://votepredictor.com/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · votepredictor.com
claude mcp add --transport http com-votepredictor-elections 'https://votepredictor.com/api/mcp'
What is the VotePredictor Elections MCP server?
VotePredictor Elections is an MCP server listed in the public MCP registry as com.votepredictor/elections. 2026 US election forecasts with a public accuracy record, plus congressional voting records. This page covers its hosted endpoint (https://votepredictor.com/api/mcp).
Is the VotePredictor Elections MCP server safe to use?
VotePredictor Elections scores 86 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the VotePredictor Elections MCP server expose?
VotePredictor Elections exposes 4 tools: forecast_race, chamber_outlook, forecaster_accuracy, member_profile. Their descriptions and schemas cost roughly 458 tokens of context every time the server is loaded.
Does the VotePredictor Elections MCP server require authentication?
No. We connected to VotePredictor Elections without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the VotePredictor Elections MCP server still maintained?
VotePredictor Elections is still listed as active in the MCP registry. We last reached this channel on 7 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What did VerifyMCP test on the VotePredictor Elections MCP server?
VerifyMCP ran 13 checks on VotePredictor Elections, covering TLS certificate, Authorization, HTTPS, HSTS header and 9 more. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.