sh-patterson/legiscan-mcp

sh-patterson/legiscan-mcp

от sh-patterson
MCP сервер для законодательных данных всех штатов США и Конгресса. Через LegiScan API предоставляет 10 инструментов для поиска законопроектов, голосований и информации о законодателях. Ускоряет исследовательские задачи аналитиков и журналистов.

LegiScan MCP Server

CI License: MIT Node TypeScript

A Model Context Protocol (MCP) server that gives terminal agents structured access to the LegiScan API for legislative data from all 50 US states and Congress.

Built for research workflows where you direct an agent (Codex, Claude Code, Claude Desktop, etc.) to gather bill history, sponsor context, and voting records quickly.

Features

  • 10 Streamlined MCP Tools optimized for legislative research workflows
  • Composite tools that collapse multi-step research workflows into single MCP tool calls
  • Per-request batching and lookup caching for repeated bill and roll-call lookups
  • Full TypeScript type definitions for all API responses
  • Bill number normalization (handles AB 858, AB858, AB-858 formats)
  • Input validation guardrails for state codes, legislator name queries, and large bill batches

Installation

From npm (Recommended)

npm install -g legiscan-mcp-server

From Source

git clone https://github.com/sh-patterson/legiscan-mcp.git
cd legiscan-mcp
npm install
npm run build

Setup

1. Get a LegiScan API Key

legiscan_find_bill_by_number

Находит законопроект по его номеру в рамках текущей или конкретной сессии законодательного органа штата. Обрабатывает разные форматы (AB 858, AB858, AB-858). Возвращает краткое описание законопроекта, если найден, null - если нет.

Находит законопроект по его номеру в рамках текущей или конкретной сессии законодательного органа штата. Обрабатывает разные форматы (AB 858, AB858, AB-858). Возвращает краткое описание законопроекта, если найден, null - если нет.

Параметры

  • statestring

    Two-letter state abbreviation (e.g., CA, TX). Uses current session.

  • session_idnumber

    Session ID for searching a specific session. Takes precedence over state.

  • bill_numberstringобязательный

    Bill number in any common format (e.g., 'AB 858', 'AB858', 'AB-858', 'SB 1234')

legiscan_find_legislator

Находит people_id законодателя по имени. Полезно как первый шаг перед другими запросами. Поддерживает частичное совпадение имени.

Находит people_id законодателя по имени. Полезно как первый шаг перед другими запросами. Поддерживает частичное совпадение имени.

Параметры

  • namestringобязательный

    Full or partial name to search (e.g., 'Smith', 'Jane Smith')

  • statestringобязательный

    Two-letter state abbreviation (e.g., 'CA')

  • session_idnumber

    Optional specific session_id (default: current session)

legiscan_get_bill

Получает подробную информацию о законопроекте: авторов, полную историю, голосования, тексты, поправки и дополнения. Это основной инструмент для исследования законопроектов.

Получает подробную информацию о законопроекте: авторов, полную историю, голосования, тексты, поправки и дополнения. Это основной инструмент для исследования законопроектов.

Параметры

  • bill_idnumberобязательный

    Bill ID from search results or find_bill_by_number

legiscan_get_legislator_votes

Узнайте, как законодатель голосовал по конкретным законопроектам. Сокращает сотни API-вызовов до одного. Возвращает позиции голосования (Yea/Nay/NV/Absent) по каждому законопроекту с деталями поименного голосования.

Узнайте, как законодатель голосовал по конкретным законопроектам. Сокращает сотни API-вызовов до одного. Возвращает позиции голосования (Yea/Nay/NV/Absent) по каждому законопроекту с деталями поименного голосования.

Параметры

  • people_idnumberобязательный

    Legislator people_id to look up votes for

  • bill_idsnumber[]обязательный

    Array of bill_ids to check votes on

  • chamberenum

    Optional chamber filter (H=House, S=Senate, A=Assembly)

    HSA
legiscan_get_person

Получить информацию о законодателях, включая партию, роль, округ и сторонние идентификаторы (VoteSmart, OpenSecrets, Ballotpedia, FollowTheMoney).

Получить информацию о законодателях, включая партию, роль, округ и сторонние идентификаторы (VoteSmart, OpenSecrets, Ballotpedia, FollowTheMoney).

Параметры

  • people_idnumberобязательный

    People ID from sponsors, votes, or session people lists

legiscan_get_primary_authored

Получает только те законопроекты, где законодатель является ПЕРВЫМ автором (sponsor_order=1), а не соавтором. Автоматически отсеивает законопроекты с соавторством.

Получает только те законопроекты, где законодатель является ПЕРВЫМ автором (sponsor_order=1), а не соавтором. Автоматически отсеивает законопроекты с соавторством.

Параметры

  • people_idnumberобязательный

    Legislator people_id to get primary authored bills for

  • session_idnumber

    Optional session_id to filter results

  • statestring

    Optional state abbreviation - if provided without session_id, uses current session

legiscan_get_roll_call

Получить детали поименного голосования, включая голоса отдельных законодателей. Используйте roll_call_id из массива bill.votes[].

Получить детали поименного голосования, включая голоса отдельных законодателей. Используйте roll_call_id из массива bill.votes[].

Параметры

  • roll_call_idnumberобязательный

    Roll call ID from bill.votes[] array

legiscan_get_session_list

Получить список доступных законодательных сессий. Возвращает сессии с session_id, годами и информацией о штате. Используйте session_id для последующего поиска законопроектов.

Получить список доступных законодательных сессий. Возвращает сессии с session_id, годами и информацией о штате. Используйте session_id для последующего поиска законопроектов.

Параметры

  • statestring

    Two-letter state abbreviation (e.g., 'CA', 'TX'). Omit to get sessions for all states.

legiscan_get_session_people

Получает всех законодателей, активных в законодательной сессии. Возвращает список людей с их ролями, партиями и округами.

Получает всех законодателей, активных в законодательной сессии. Возвращает список людей с их ролями, партиями и округами.

Параметры

  • session_idnumberобязательный

    Session ID from getSessionList

legiscan_search

Полнотекстовый поиск по текстам законопроектов. Возвращает 50 результатов на страницу с оценками релевантности, краткими описаниями законопроектов и URL. Используйте для интерактивного поиска.

Полнотекстовый поиск по текстам законопроектов. Возвращает 50 результатов на страницу с оценками релевантности, краткими описаниями законопроектов и URL. Используйте для интерактивного поиска.

Параметры

  • querystringобязательный

    Search query. Supports full-text search syntax. URL encode special characters.

  • statestring

    Two-letter state abbreviation or 'ALL' for nationwide search. Default: ALL

  • yearnumber

    Year filter: 1=all, 2=current (default), 3=recent, 4=prior, or exact year (>1900)

  • pagenumber

    Page number for pagination. Default: 1

  • session_idnumber

    Search within a specific session_id instead of state/year

Другие проверенные MCP-сервера

qdrant/mcp-server-qdrant

qdrant/mcp-server-qdrant

официальный

MCP инструмент для Qdrant реализует семантическую память с векторным поиском: сохраняет информацию (store) и ищет по смыслу (find). Полезен AI-агентам для долговременного контекста. Поддерживает stdio и SSE.

Python1472
DappierAI/dappier-mcp

DappierAI/dappier-mcp

официальный

Dappier MCP предоставляет быстрый поиск в реальном времени и доступ к премиум-данным от проверенных медиа: новости, финансы, спорт, погода. Идеален для AI-агентов, требующих актуальной информации б...

Python42
txn2/kubefwd

txn2/kubefwd

kubefwd — bulk порт-форвардинг для Kubernetes: сервисы из кластера становятся доступны локально по именам. Каждый сервис получает уникальный loopback IP, исключая конфликты портов. Авто-переподключ...

Go4143
intruder-io/intruder-mcp

intruder-io/intruder-mcp

официальный

MCP сервер для интеграции Intruder с ИИ-ассистентами Claude и Cursor. Он автоматизирует тестирование безопасности, запуская сканирования и управляя проектами. Полезен специалистам по безопасности и разработчикам.

Python26
ahujasid/blender-mcp

ahujasid/blender-mcp

BlenderMCP подключает Claude AI к Blender через Model Context Protocol, позволяя управлять 3D-сценами голосом или текстом. Создавайте, редактируйте объекты, применяйте материалы и выполняйте Python...

Python24437
Bybit MCP

Bybit MCP

официальный

MCP-сервер предоставляет 206 инструментов для Bybit: рыночные данные, торговлю и WebSocket-стримы, включая управление аккаунтом. Интегрируется с Claude, Cursor, VS Code. Режим read-only без API-ключа.

TypeScript21
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин