Sejm RP

io.github.leniwyposelv0.3.0更新於 Oct 7, 2026

Sejm RP i akty prawne (ELI): posłowie, głosowania, interpelacje, ustawy. Lokalnie, tylko odczyt.

已驗證STDIO僅桌面Data & AnalyticsKnowledge & Memory

概覽

AI 產生的概覽

讓助理查詢波蘭眾議院資料:議員、表決、質詢、法案、會議與法律文本,並附來源連結。

功能
這是一個本機、唯讀的 MCP 伺服器,透過 29 個工具存取波蘭眾議院官方資料。涵蓋議員、黨團、委員會、會議與議程、表決及結果、附答覆期限的質詢與詢問、法案及其審議階段、逐頁文本的議會印件、會議紀錄、錄影,以及來自法律公報與波蘭監察報的法律文本。每則回答都帶有其來源的 api.sejm.gov.pl 紀錄連結,掃描版印件可在本機進行 OCR 辨識。
適用情境
當你希望助理回答關於波蘭議會或波蘭立法的事實性問題時使用:某議員如何表決、某次會議發生什麼、哪些質詢逾期未答、某法案處於哪個階段,或某項法律目前的規定。它面向波蘭語提問,給出附來源的事實,而非評價或排名。
執行需求
透過 stdio 在本機執行,通常由 MCP 用戶端以 npx -y sejm-mcp 啟動;在 Claude Desktop 之外需要 Node.js 22 或更新版本。未宣告任何帳號、API 金鑰或環境變數。需要連線至 api.sejm.gov.pl 的網路存取。僅限桌面端,不支援行動裝置或瀏覽器用戶端。眾議院 API 無法使用時可選用託管版本。
安裝前請注意
唯讀:不讀取你的檔案,也不執行程式,僅連線 api.sejm.gov.pl。下載的印件、擷取的文字與 OCR 結果會快取在磁碟上(上限約 500 MB,路徑可用 SEJM_MCP_SCHOWEK 覆寫)。超過 20 MB 的印件會先詢問,超過 200 MB 的檔案不會下載。OCR 結果標示為機器辨識,可能有誤;數字與姓名請對照原件核實。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Sejm RP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[sejm-mcp od Leniwego Posła: Sejm i prawo w Twoim asystencie AI. W tle kopuła sali posiedzeń Sejmu.]

Polski · English

Zapytaj asystenta AI o posłów, głosowania, interpelacje i obowiązujące prawo.
Odpowiedź przychodzi z oficjalnych danych Sejmu RP, z linkiem do źródła.

[Pobierz dla Claude Desktop] [Zainstaluj w Cursorze] [Zainstaluj w VS Code]

Przykłady • Instalacja • Jak czytać odpowiedzi • Czego nie umie • Prywatność • Szybki start • Kontakt • English

[Animacja: pytanie po polsku, czy Sejm odrzucił weto prezydenta do ustawy o rynku kryptoaktywów. Asystent wywołuje narzędzia sejm-mcp szukaj_glosowan i glosowanie, odpowiada: nie, weto zostało utrzymane, 241 za przy wymaganych 266 (3/5), i podaje źródło api.sejm.gov.pl/sejm/term10/votings/64/15.]

Co możesz zapytać

Pytaj zwyczajnie, po polsku. Asystent sam sprawdzi dane w Sejmie.

  • „Jak głosował mój poseł nad ustawą budżetową na 2024 rok?”
  • „Czy Sejm odrzucił weto prezydenta do ustawy o rynku kryptoaktywów?”
  • „Ile głosowań opuściła posłanka X i ile z tych dni Sejm uznał za usprawiedliwione?”
  • „Na które interpelacje do ministra zdrowia odpowiedź się spóźnia?”
  • „Na jakim etapie jest projekt ustawy o …?”
  • „Czym Sejm zajmie się na najbliższym posiedzeniu?”
  • „Czy ustawa budżetowa na 2026 rok już obowiązuje i od kiedy?”
  • „Co mówi art. 52 Kodeksu pracy?”
  • „Co zmienia art. 1 projektu z druku 2457? Pokaż stronę w pliku.”

Działa z posłami, klubami, komisjami, głosowaniami, interpelacjami i zapytaniami, projektami ustaw, posiedzeniami, stenogramami i transmisjami, a także z aktami prawnymi z Dziennika Ustaw i Monitora Polskiego.

Instalacja

Serwer działa na Twoim komputerze. Poza Claude Desktop potrzebny jest Node.js w wersji 22 lub nowszej; polecenie npx -y sejm-mcp samo pobierze i uruchomi najnowszą wersję.

bash
npx -y sejm-mcp     # serwer MCP na stdio; zwykle uruchamia go Twój klient, nie Ty

Gdy API Sejmu nie odpowiada, ten serwer też nie odpowie. Wtedy możesz użyć wersji hostowanej, która odpowiada z nocnej kopii bazy: https://mcp.leniwyposel.pl/mcp

Liczby o posłach (np. nieobecności) pochodzą wprost ze statystyk Sejmu i mogą różnić się od liczb na leniwyposel.pl, które stosuje własne reguły opisane na https://leniwyposel.pl/faq/#inne-niz-w-sejmie (apele o kworum, okna mandatów).

Claude Desktop

  1. Pobierz plik sejm-mcp.mcpb.
  2. Kliknij go dwa razy albo przeciągnij do okna Claude Desktop.
  3. Kliknij Zainstaluj.

Nic więcej nie trzeba instalować: Claude Desktop ma własny Node.js. W nowej rozmowie zapytaj o cokolwiek z listy powyżej.

Claude Code

bash
claude mcp add sejm -- npx -y sejm-mcp

Z opcją --scope user serwer będzie dostępny we wszystkich Twoich projektach.

Cursor

Kliknij przycisk Cursor u góry strony albo dopisz wpis do ~/.cursor/mcp.json (dla jednego projektu: .cursor/mcp.json w jego katalogu):

json
{  "mcpServers": {    "sejm": {      "command": "npx",      "args": ["-y", "sejm-mcp"]    }  }}

VS Code

Kliknij przycisk VS Code u góry strony albo wpisz w terminalu:

bash
code --add-mcp '{"name":"sejm","command":"npx","args":["-y","sejm-mcp"]}'

Dla jednego projektu wystarczy plik .vscode/mcp.json:

json
{  "servers": {    "sejm": {      "type": "stdio",      "command": "npx",      "args": ["-y", "sejm-mcp"]    }  }}

Windsurf

Dopisz wpis do ~/.codeium/windsurf/mcp_config.json (albo w Windsurfie: Settings → Cascade → MCP Servers → View raw config) i odśwież listę serwerów:

json
{  "mcpServers": {    "sejm": {      "command": "npx",      "args": ["-y", "sejm-mcp"]    }  }}
Inne programy i ręczna konfiguracja

Każdy program, który uruchamia lokalne serwery MCP (Zed, LM Studio, Goose i inne), przyjmie ten sam wpis co Cursor i Windsurf.

Claude Desktop bez pliku .mcpb: Ustawienia → Developer → Edit Config. Plik leży w ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) albo %APPDATA%\Claude\claude_desktop_config.json (Windows). Po zapisaniu uruchom program ponownie.

Na Windowsie, jeśli serwer się nie uruchamia, zamień polecenie na "command": "cmd", "args": ["/c", "npx", "-y", "sejm-mcp"].

W Claude Code działa też wtyczka z krótką instrukcją, jak odpowiadać na podstawie wyników: /plugin marketplace add leniwyposel/sejm-mcp, potem /plugin install sejm@sejm-mcp.

Docker

Bez Node.js, w kontenerze (obraz budujesz sam z repozytorium):

bash
docker build -t sejm-mcp https://github.com/leniwyposel/sejm-mcp.gitclaude mcp add sejm -- docker run -i --rm sejm-mcp

W innych klientach wpisz "command": "docker", "args": ["run", "-i", "--rm", "sejm-mcp"]. Odczyt maszynowy skanów (OCR) działa też w kontenerze. Pobrane druki leżą wtedy w /tmp kontenera i znikają po jego zamknięciu.

Telefon i przeglądarka

Na razie nie. sejm-mcp działa na komputerze, a aplikacje mobilne i przeglądarkowe wersje asystentów łączą się tylko z serwerami w internecie.

Jak czytać odpowiedzi

  • Każda odpowiedź ma źródło. Asystent dostaje adresy danych Sejmu, z których powstała odpowiedź. Przy ważnych sprawach kliknij i sprawdź.
  • Klub z dnia głosowania. Liczy się klub, w którym poseł był tego dnia, a nie dzisiejszy.
  • Frekwencja według Sejmu. Opuszczone głosowania i usprawiedliwienia to statystyka samego Sejmu, bez przeliczeń.
  • Apel o kworum to nie głosowanie. Sejm sprawdza kworum na dwa sposoby: przyciskiem „obecny” albo prośbą o naciśnięcie dowolnego przycisku. Ten drugi rejestr zapisuje jak głosowanie (np. 23.04.2025, 33/5: 145 za, 47 przeciw, 237 wstrzymań), choć stenogram mówi „Stwierdzam kworum”. Serwer zna pięć takich przypadków z cytatem ze stenogramu i podaje je jako „kworum stwierdzone: N obecnych”. Naciśnięcie na apelu to obecność, a brak naciśnięcia nie wlicza się do nieobecności w głosowaniach (tak samo liczy statystyka Sejmu).
  • Wynik z progu. Przy wecie prezydenta i innych głosowaniach wymagających szczególnej większości werdykt wynika z progu (np. 3/5), a nie z tego, czy „za” było więcej niż „przeciw”.
  • Termin odpowiedzi na interpelację liczy się od doręczenia ministrowi, osobno dla każdego adresata. Prolongata to nie odpowiedź.
  • Dane są świeże. Każde pytanie idzie prosto do Sejmu.
  • Druk cytuje plik i stronę. Tekst druku przychodzi strona po stronie; przy każdej stronie asystent dostaje numer druku, nazwę pliku (np. 2457.pdf), numer strony i link, który otwiera PDF na tej stronie. Poproś o link, jeśli go nie podał.
  • Odczyt maszynowy to nie tekst Sejmu. Część druków to skany bez warstwy tekstowej. Serwer może je odczytać maszynowo (OCR, na Twoim komputerze; przy ponad 10 stronach naraz najpierw zapyta, bo to potrwa) i zawsze oznacza taki tekst „odczyt maszynowy, możliwe błędy”. Liczby i nazwiska z takiej strony sprawdź w oryginale.

Gdy coś pójdzie nie tak

Asystent ma obowiązek powiedzieć Ci to na początku odpowiedzi, prostymi słowami. Co to znaczy:

  • „Wynik niepełny”. Część danych nie dotarła: zabrakło czasu (niektóre pytania wymagają dziesiątek zapytań do Sejmu), Sejm nie oddał jakiegoś kawałka albo plik PDF był za długi. Liczba jest wtedy dolną granicą („co najmniej”). Zadaj to samo pytanie jeszcze raz: to, co już pobrano, serwer pamięta przez 60 sekund, więc szybkie drugie podejście zwykle dokończy resztę. To samo zdanie pojawia się, gdy odpowiedź przekroczyła 28 tys. znaków: serwer skraca wtedy listę i podaje, jak dostać resztę (kolejna porcja, mniejszy limit, krótszy przedział dat).
  • „Pokazano 30 z 69”. Nic nie zginęło, to tylko pierwsza porcja długiej listy. Poproś o dalszą część.
  • Sejm nie odpowiada albo ma awarię (błędy 500, 502, 503, 504, brak połączenia). To nie Twoja wina: dane w Sejmie są, tylko teraz nie da się ich pobrać. Spróbuj za kilka minut albo użyj wersji hostowanej (https://mcp.leniwyposel.pl/mcp), która odpowiada z nocnej kopii bazy.
  • „Sejm nie ma takiego zasobu” (błąd 404). Najczęściej zły numer posiedzenia, pisma albo druku, zła kadencja (bieżąca to X, od 2023 r.) albo rzecz, której jeszcze nie ma. Sprawdź numer albo poproś asystenta, żeby go najpierw wyszukał.
  • Za dużo zapytań (błąd 429). Sejm chwilowo ogranicza liczbę pytań. Serwer już ponawiał; odczekaj minutę.
  • Adres odrzucony. Serwer pobiera wyłącznie dane z api.sejm.gov.pl. Innych stron nie otworzy.

Czego nie umie

  • Zna tylko to, co publikuje Sejm. Czego nie ma w rejestrze (np. kto kogo zastąpił w ławach poselskich, jak głosował senator), tego nie poda jako faktu.
  • PDF czyta w trzech miejscach: odpowiedzi ministrów na interpelacje i zapytania, teksty aktów prawnych i druki sejmowe (także DOCX i DOC). Tabele przychodzą spłaszczone do zwykłego tekstu. Skan w odpowiedzi ministra albo w akcie zostaje linkiem; skan w druku serwer odczyta maszynowo na prośbę. Zapisy posiedzeń komisji zostają linkiem do PDF.
  • Plik druku do 20 MB pobiera bez pytania. Sejm zwykle nie podaje rozmiaru z góry, więc serwer liczy bajty w trakcie pobierania: gdy plik przekroczy 20 MB, przerywa i pyta, czy pobrać całość (z podanym powodem). Na ten sam plik pyta raz na uruchomienie. Pliku ponad 200 MB nie pobierze wcale.
  • Nie ocenia posłów i nie układa rankingów. Podaje fakty, wnioski należą do Ciebie.
  • Asystent AI wciąż może się pomylić przy przepisywaniu liczb. Źródło jest po to, żeby to sprawdzić.

Prywatność

  • Działa na Twoim komputerze i łączy się wyłącznie z api.sejm.gov.pl. Twoje pytania nie trafiają ani do nas, ani do serwisu leniwyposel.pl.
  • Tylko czyta dane Sejmu. Nie czyta Twoich plików i nie uruchamia programów.
  • Na dysku zapisuje wyłącznie pobrane druki, tekst z nich odczytany i wyniki odczytu maszynowego (OCR), żeby nie robić tego drugi raz. Leżą w katalogu podręcznym: ~/Library/Caches/sejm-mcp (macOS), ~/.cache/sejm-mcp (Linux), %LOCALAPPDATA%\sejm-mcp\Cache (Windows); inny wskażesz zmienną SEJM_MCP_SCHOWEK. Katalog zajmuje najwyżej ok. 500 MB: ponad to serwer kasuje najdawniej używane pliki. Można go w każdej chwili skasować.
  • Odczyt maszynowy skanów (Tesseract z danymi języka polskiego) jest w paczce i działa bez sieci: plik druku nie wychodzi z Twojego komputera.
  • Bez kont, kluczy, reklam i telemetrii.

Szczegóły techniczne i zgłaszanie problemów: SECURITY.md.

Narzędzia

Asystent sam wybiera narzędzie do pytania. Lista dla ciekawych:

29 narzędzi
NarzędzieCo robi
znajdz_poslaSzuka posła po nazwisku, klubie, okręgu
profil_poslaDane posła i statystyka głosowań według Sejmu
klubyKluby i koła, ich skład
komisjeKomisje sejmowe, skład, komisje posła
grupy_bilateralnePolsko-zagraniczne grupy parlamentarne
kadencjeKadencje Sejmu od 1991 roku
lista_posiedzenPosiedzenia Sejmu z datami: domyślnie 10 ostatnich i najbliższe, wszystkie: true cała kadencja, od/do okres
porzadek_posiedzeniaPorządek obrad posiedzenia
glosowania_posiedzeniaGłosowania posiedzenia z wynikami; porzadek: true układa je pod punktami porządku obrad (odPunktu dla dalszej części)
szukaj_glosowanGłosowania po temacie i dacie
glosowanieWynik, próg, kluby, głos posła
glosy_posla_w_dniuGłosy posła w jednym dniu
szukaj_pismInterpelacje i zapytania z terminem odpowiedzi
pismoJedno pismo: terminy, odpowiedzi, treść
szukaj_procesowProjekty ustaw i uchwał po tytule
procesEtapy prac nad projektem
szukaj_projektowProjekty wniesione do Sejmu
drukDruk sejmowy z plikami
tekst_drukuPełny tekst druku strona po stronie, spis artykułów, skany i OCR za zgodą
szukaj_drukowDruki po tytule i dacie
posiedzenia_komisjiPosiedzenia komisji
wypowiedzi_posiedzeniaKto zabierał głos danego dnia
tresc_wypowiedziTreść wystąpienia ze stenogramu
transmisjeNagrania posiedzeń
szukaj_aktowAkty prawne po tytule i roku
aktCzy akt obowiązuje, od kiedy, co go zmieniło
tresc_aktuTekst aktu albo artykułu w aktualnym brzmieniu
slownik_eliSłowniki bazy aktów prawnych
zapytanie_suroweInne dane z API Sejmu

Licencja

Apache 2.0: możesz używać, zmieniać i rozpowszechniać sejm-mcp w dowolnym celu, także komercyjnym, pod warunkiem zachowania informacji o licencji i o autorach (plik NOTICE). Licencja obejmuje też udzielenie praw patentowych. Tworzy zespół Leniwego Posła.

Dane

Dane pochodzą z publicznych API Kancelarii Sejmu RP (api.sejm.gov.pl, także baza aktów prawnych ELI); projekt nie jest związany z Kancelarią Sejmu. Publikując coś na ich podstawie, podaj źródło, np. „Źródło: Kancelaria Sejmu RP, api.sejm.gov.pl”, najlepiej z adresem rekordu, który asystent dostaje przy każdej odpowiedzi.

sejm-mcp łączy się tylko z api.sejm.gov.pl. Wersja hostowana z leniwyposel.pl/dla-developerow może dodawać zestawienia Leniwego Posła; te udostępniamy na licencji CC BY 4.0, z podaniem źródła „Leniwy Poseł, leniwyposel.pl”.

Szybki start dla programistów

Trzy minuty do pierwszej odpowiedzi:

bash
claude mcp add sejm -- npx -y sejm-mcp                   # Claude Codenpx -y @modelcontextprotocol/inspector npx -y sejm-mcp   # podgląd narzędzi w przeglądarce

Trzy pomysły na start (wklej jako prompt):

  1. Tracker ustawy. „Znajdź projekt ustawy o … , pokaż etapy prac w Sejmie i streść, co zmienia art. 1. Przy każdym zdaniu podaj druk, plik i stronę.” (szukaj_procesow, proces, tekst_druku)
  2. Głosowania posiedzenia w jednej tabeli. „Wypisz głosowania ostatniego posiedzenia Sejmu: temat, wynik, wymagana większość i jak głosowały kluby. Zwróć JSON do wykresu.” (lista_posiedzen, glosowania_posiedzenia, glosowanie)
  3. Spóźnione odpowiedzi ministrów. „Które interpelacje do ministra … czekają na odpowiedź dłużej niż 21 dni od doręczenia? Podaj numery i linki.” (szukaj_pism, pismo)

Każda odpowiedź niesie adres rekordu w api.sejm.gov.pl, więc Twoja aplikacja może linkować do źródła. Pamiętaj o granicach z CONTRIBUTING.md: fakty z rejestru, bez rankingów i ocen posłów.

Kontakt

Zgłoszenia i pull requesty są mile widziane; zasady w CONTRIBUTING.md.

Zdjęcie w nagłówku: Piotr VaGla Waglowski, domena publiczna.


English

The English version of this README: README.en.md.

來源:README.md,提交 d9d3b3b

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v0.3.0最新Oct 7, 2026