Skip to main content
For AI assistants

Your assistant can check the live facts, and set up the election

vote.direct publishes a full machine-readable surface: a curated llms.txt, structured data on every page, an AI-crawler-welcoming robots policy, and a public MCP server. Claude, ChatGPT, Muse and any other MCP-capable assistant can query exact pricing, state voting rules and honest comparisons live instead of answering from stale training data, and, once you connect your account, draft your election, load your voter list and tell you exactly what it will cost.

Connect the MCP server

Add https://vote.direct/api/mcp as a custom connector: in Claude under Customize → Connectors → Add custom connector, in ChatGPT with developer mode on, under Settings → Apps, or in Claude Code with claude mcp add --transport http vote-direct https://vote.direct/api/mcp. The open tools need no key and no account. Without an account, your assistant can still draft an election for you: it hands you a link, you sign up, and the draft is yours.

The first time your assistant needs your account, it asks you to sign in to vote.direct and approve it. Publishing stays off unless you allow it. Assistants that take a bearer token instead, such as Muse, Manus and Poke, use a key from Settings → AI agents, sent as Authorization: Bearer vd_agent_….

Open tools, no key

  • get_price_quote

    Exact election price quote

  • get_state_hoa_rules

    HOA voting rules for a US state

  • compare_platforms

    Compare vote.direct with a competitor

  • get_review_record

    Every third-party review, verbatim

  • get_platform_overview

    What vote.direct is and does

  • get_governance_center_overview

    What governance.center is and what it costs

  • start_election_draft

    Start an election for someone without an account

In your account, once you sign in

  • list_elections

    List this account's elections and surveys

  • get_election

    Status of one election or survey

  • create_election_draft

    Draft an election

  • add_voters

    Add voters to a draft election

  • create_survey

    Create a survey

  • publish_election

    Publish a draft election (only if you allow it)

Try it from a terminal

curl -X POST https://vote.direct/api/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"get_price_quote","arguments":{"voters":200}}}'

Rate limit: 120 requests per minute per IP. Discovery document: /.well-known/mcp.json.

You decide what reaches voters

The open tools are read-only. A connected assistant works only on your own elections, and a draft charges nothing and contacts no one: your assistant hands you the link to review and publish, unless you allow it to publish. Invitations are always sent by you, from the election page, and you can disconnect an assistant at any time. Nothing an assistant can reach here casts or reads a ballot. Organizers also get their own signed-in assistant, Solon.

Honest answers travel whole

The comparison tool carries a vendor disclosure and the cases where a competitor is the better choice. The review tool quotes every review verbatim, criticism included. The state-rules tool says plainly that stored summaries are not legal advice. An assistant repeating these answers repeats the caveats too. That is the point.

Discovery documents

Published at the paths agents already look in, so nothing here has to be configured by hand. Every one is generated from the same registry the MCP server runs on.

/.well-known/api-catalog
RFC 9727 linkset naming both public APIs, their docs and their status endpoint.
/.well-known/mcp/server-card.json
MCP server card: endpoint, protocol versions, every tool. Also at /.well-known/mcp.json.
/.well-known/agent-card.json
A2A agent card. The same six answers over JSON-RPC message/send at /api/a2a.
/.well-known/agent-skills/index.json
Published skills, each with a sha256 digest: pricing an election, checking state rules, running a vote, choosing a platform.
/auth.md
What needs a credential: nothing for the open tools; your sign-in (OAuth) or an agent key for the tools that act in an account.
/agents.md
This page as markdown: every endpoint, tool and skill in one fetch.

Any blog post or state rules page can also be fetched as markdown: append .md to the URL, or send Accept: text/markdown. In a browser with an agent API, the same open tools register themselves through WebMCP, so the assistant in the sidebar answers from the billing constants rather than from the screen.

Building something on top of this, or need a tool that is missing? Talk to us. The phone line reaches the founder.Back to vote.direct

Talk to a person

Have an election coming up?

Call or text us and a real person picks up. Tell us what you are voting on and we will explain the setup and exact published price, even if you are not ready yet. At 1,000 voters, our regular price is at least 95% below two-way First-Class postage alone.

Or leave us your contact

Leave an email and we will reach out. No account, no card, no obligation.