YouCongress MCP Tools

YouCongress exposes its data and functionality through the Model Context Protocol (MCP), an open standard that lets AI assistants like ChatGPT and Claude interact directly with external services.

New to MCP? Pick your assistant.

Follow a step-by-step guide to connect YouCongress to ChatGPT or Claude. Any other MCP-capable assistant can use the same endpoint below.

How to Connect

1

Option 1: Connect without an API Key

The public YouCongress MCP endpoint works out of the box — no API key required. Just add it to your assistant and you're ready to browse public data.

https://youcongress.org/mcp
2

Option 2: Use an API Key for personalized access

Log in to YouCongress and go to Settings to create an API key. Choose read-write scope if you want to create or edit data, or read-only for browsing. Then add the server with your key appended:

https://youcongress.org/mcp?key=YOUR_API_KEY
3

Start Using the Tools

Once connected, your AI assistant will automatically discover all available tools and can use them on your behalf.

Available Tools

Role Legend

public No login required
any user Any logged-in user
own author Your own linked author, opinion or statement
moderator Users with the moderator role
creator Users with the creator role
admin Administrators

Statements

Policy proposals and claims that people vote on.

Admins can trigger automatic quote discovery, but anyone can ask their own ChatGPT, Claude, Cursor, or other MCP-connected assistant to find sourced quotes and then add them to YouCongress through the opinions and votes tools.

statements_list public
List statements (up to 100 per page). Use this to find statement IDs for other tools. Optional: set include_halls to true to include each statement's halls (id and name); order ("desc" by id — newest first, default — or "asc"); last_id (pass the last_id from a previous response to get the next page). Every result also includes the opinions_count so you can see how many sourced opinions exist per statement.
statement_halls public
Fetch a statement's halls with its ID. Returns the statement_id, statement_title, and halls array (each hall's id + name). Requires: statement_id.
statement_authors public
List the authors who already have at least one sourced quote on a statement. Returns the statement_id, statement_title, and an authors array where each entry includes the author_id, name, and opinion_date and opinion_date_precision (the date of the quote, useful for finding authors without a recent opinion). Requires: statement_id.
statements_create admin creator
Create a new statement. Requires: title, nice_slug (used as the last part of https://youcongress.org/p/[nice_slug]).
statement_populate admin
Queue the AI-powered quote discovery job for a statement. Requires statement_id. If you are not an admin, simply use your own ChatGPT, Claude, or other assistant to gather sourced quotes and add them via the opinions and votes tools.
statements_halls_update own statement admin
Update the halls attached to a statement. Requires: statement_id and a main_hall name. Optional:
other_halls — string of comma-separated values.
Returns the updated statement (id, title, main_hall, halls).

Authors

People whose opinions and votes are tracked.

authors_search public
Search authors by name. Requires: query.
authors_list public
List authors (up to 100 per page). Optional: order ("desc" by id — newest first, default — or "asc"); last_id (pass the last_id from a previous response to get the next page); country (name or ISO code — only authors from that country); without_country (true — only authors with no country set). By default, authors from all countries (including those without a country) are listed.
authors_create admin moderator creator
Create a new author profile. Fields: name, one_line_bio, twitter_username, wikipedia_url, country_id, or legacy country name/code.
authors_update moderator admin creator
Update an existing author. Requires: author_id. Optional: same fields as create.

Opinions

Quotes and opinions attributed to authors, linked to statements.

Every "quote" in YouCongress is simply an opinion that includes a source_url. User-authored positions without a source URL are still stored as opinions, but they will not appear in the quote verification tools below. Use the opinions tools to create both sourced quotes and unsourced user stances—just include the source_url when you want the opinion treated as a quote.

opinions_create own author moderator creator admin
Create a new opinion. Requires: content, author_id. Optional: source_url, date, date_precision.
opinions_show public
View an opinion with its statements and votes. Requires: opinion_id.
opinions_edit own opinion moderator admin
Edit an existing opinion. Requires: opinion_id. Optional: content, author_id, source_url, date, date_precision.
opinions_delete own opinion moderator admin
Delete an opinion. Requires: opinion_id.
opinions_statements_add moderator creator admin
Link an opinion to a statement and set the author's vote for that statement. Requires: opinion_id, statement_id, vote_answer ("For", "Against", or "Abstain"). If a vote already exists, it will be updated with the new answer.
opinions_statements_remove moderator creator admin
Unlink an opinion from a statement. If the opinion is a sourced quote (has a source_url), the author's vote on that statement is also removed. Requires: opinion_id, statement_id.

Quotes & Verification

Search and verify sourced opinions (quotes). These tools return the same opinion IDs as above; they simply filter to entries that include a source_url.

quotes_search public
Search quotes. Requires: query. Optional: statement_id — include it to keyword-search quotes within that statement; omit it to search all quotes by meaning (semantic similarity), with each result ranked by a similarity score.
quotes_list public
List quotes (up to 100 per page), each with its author, source, verification status and vote. Optional: order ("desc" by id — newest first, default — or "asc"); last_id (pass the last_id from a previous response to get the next page).
quotes_random_unverified public
Get a random unverified quote to review. No parameters needed. Skips quotes from Twitter/X and YouTube since AI cannot access those sources.
quotes_recent_unverified public
Get the most recent unverified quote to review. No parameters needed. Skips quotes from Twitter/X and YouTube since AI cannot access those sources.
quotes_verify any user
Verify that a quote itself is authentic (really said, accurately transcribed). Requires: opinion_id, status, comment, model.
opinion_statements_verify any user
Verify that a quote is exactly about a statement (relevance), independently of whether the quote is authentic. Requires: opinion_id, statement_id, status, comment, model.

Votes

Record how authors vote on statements (for, against, or abstain).

votes_create own author moderator creator admin
Create a vote. Requires: author_id, statement_id, answer (for / against / abstain). Optional: opinion_id.
votes_edit own author moderator creator admin
Edit an existing vote. Requires: author_id, statement_id. Optional: answer (for / against / abstain).
votes_verify any user
Verify that a vote's answer (for / against / abstain) is correct for the statement, given the opinion it references. Requires: vote_id, status, comment, model.

What Can You Do?

Open a new chat in ChatGPT, Claude or another MCP-capable assistant and try pasting one of these prompts:

You are a policy analyst researching AI's impact on jobs. Use YouCongress to search quotes from 2025 onwards, cluster them by argument, create a disagreement map and identify tension points. Return verbatim attributed quotes with links to sources.

You're a journalist writing about the pros and cons of advanced open source AI. Use YouCongress, identify arguments, explain each of them and include alternative policies. Return verbatim quotes with links to the sources.

Your AI assistant will use the YouCongress tools automatically. The first time it tries to use a tool, it may ask for your permission — just click Allow.