About Open Japan Politech Platform
Open Japan Politech Platform is an MCP server in the Other category: 政党・企業によらない政治のデジタル化オープンソース基盤.
Install
git clone https://github.com/ochyai/open-japan-politech-platformThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Open Japan Politech Platform
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
Open Japan PoliTech Platform
AIエージェント時代の政治インフラ
政党にも企業にもよらない、完全オープンな政治テクノロジー基盤
1行で起動 | 7つのアプリ | API仕様 | 論文 | Contributing
[!NOTE] v0.1 のデータは公的機関の公開資料に基づく実データです。 詳細はデータソース・根拠一覧を参照してください。
1行で起動
curl -fsSL https://ojpp.dev/install | sh
必要なもの: Docker と Git だけ。Node.js / pnpm は自動インストールされます。
停止
Ctrl+C/ 再起動bash setup.sh/ DB削除docker compose down -v
なぜ PoliTech か
政治は長く、政党と企業の専有物だった。
AIエージェントの時代が、この構造を変える。
あなたのAIエージェントが、24時間365日、全政党の政治資金を監視する。全政党の政策変更を追跡し、差分を届ける。全法案を読み、あなたに影響のある部分を要約する。政党に属さなくても、企業のロビイストを雇わなくても、専門家でなくても——AIエージェントがあなたの代わりに政治を読み解き、あなたに届ける。
GovTech(行政DX)でもCivicTech(市民技術)でもない。政治の意思決定プロセスそのものを、すべての人に開くテクノロジー。
7つの原則
1 エージェントファースト — AIの参加を前提に設計 2 非党派性 — 全政党を等しく扱う 3 非企業性 — 企業が運営しない 4 完全オープン — AGPL-3.0-or-later 5 誰でも参加 — 人間でもAIでも 6 議席不要 — インフラは市民とエージェントが作る 7 持続性 — フォーク可能で分散的
Portal + 7 Apps
OJPP Portal :3008
Political Command Center — 全サービス一覧ダッシュボード
WebGPU流体シェーダー × レインボーグラデーション × 日本地図データビジュアライゼーション。7つのサービスアプリのリアルタイムKPIを一望するコマンドセンター。
WebGPU 流体シミュレーション リアルタイムKPI 7サービス統合
BroadListening β :3009
意見を生態系として可視化する
市民の意見をデジタル生態系としてモデリング。Argument Mining(LLM)で議論構造を自動抽出し、デジタルフェロモン(Stigmergy)で支持の軌跡を記録。適応度ランドスケープとShannon多様性指数でクオーラムセンシングによるフェーズ自動遷移。多数決ではない、自己組織化的合意形成。
5トピック 200+意見 k-means++クラスタリング TF-IDF埋め込み フェロモン減衰
MoneyGlass :3000
政治資金を、ガラスのように透明に
全政党・全政治団体の資金の流れを可視化。収支報告書を構造化し、収入9カテゴリ・支出8カテゴリで分類。グラデーション付き棒グラフ・ドーナツチャートで政治資金の実態にアクセス。
13政党 8年分 政治資金収支報告書
PolicyDiff :3002
全政党の政策を、差分で比較する
全15政党のマニフェスト・政策を10カテゴリに分類し、政党間の比較を可能にする。カテゴリ別・政党別フィルタリング、政党カラーチップによる直感的UI、市民からの政策提案機能。
15政党 10カテゴリ マニフェスト比較
ParliScope :3003
議会を、すべての人とエージェントに開く
国会の会期・法案・議員・投票・討論データをAPI化。21会期分のデータを構造化し、法案タイムライン、投票結果アニメーション棒グラフ、議員カード一覧で法案追跡と議員分析が可能。
90法案 713議員 21会期
SeatMap :3005
議会の勢力図を、ひと目で把握する
国会の議席構成・政党別勢力を視覚的に表示。スプリング物理に基づくアニメーテッドバーで議席数の変動や与野党の勢力バランスを直感的に理解。過半数ラインdraw-in付き。
衆参両院 9選挙 スプリング物理
CultureScope :3006
文化を、政治の言語で読み解く
文化庁予算の推移(2019-2026)、芸術振興・文化財保護・メディア芸術等12分野の予算配分、各政党の文化政策スタンスを一覧比較。20の文化プログラム・補助金制度データベース。
96予算データ 20プログラム 13政党スタンス
SocialGuard :3007
社会保障の全体像を、ひと目で
年金・医療・介護・子育て支援・生活保護——40兆円規模の社会保障関係費を8分野で可視化。47都道府県別福祉指標比較、各政党の社会保障政策スタンス比較。
64予算データ 15制度 47都道府県 13政党スタンス
管理画面:
moneyglass-admin:3001/parliscope-admin:3004
アーキテクチャ
ブラウザ / AIエージェント / MCP
│
┌──── Portal :3008 ────┐
┌────────┬───────┬───────┬───┴───┬────┴────┬──────────┬──────────┐
▼ ▼ ▼ ▼ ▼ ▼ ▼ │
BroadListening MoneyGlass PolicyDiff ParliScope SeatMap CultureScope SocialGuard
:3009 :3000 :3002 :3003 :3005 :3006 :3007 │
┌──────────────────────────────────────────────────────────┐ │
│ Next.js 15 × React 19 │ │
└──────────────────────────┬───────────────────────────────┘ │
│ admin apps
┌──────────────────────────┼───────────────────────────────┐ :3001/:3004
│ @ojpp/ui │ @ojpp/api │ @ojpp/db │ @ojpp/ingestion │
└──────────────────────────┬───────────────────────────────┘
│
PostgreSQL (Prisma 6)
29 models │ 14 enums │ 13政党
クイックスタート
個別起動
pnpm dev:moneyglass # MoneyGlass :3000 + :3001
pnpm dev:policydiff # PolicyDiff :3002
pnpm dev:parliscope # ParliScope :3003 + :3004
pnpm dev:seatmap # SeatMap :3005
pnpm dev:culturescope # CultureScope :3006
pnpm dev:socialguard # SocialGuard :3007
pnpm dev:portal # Portal :3008
pnpm dev:broadlistening # BroadListening :3009
前提条件: Node.js 22+ / pnpm 10+ / PostgreSQL
git clone https://github.com/ochyai/open-japan-politech-platform.git
cd open-japan-politech-platform
docker compose up -d
cp .env.example .env
pnpm install && pnpm db:generate && pnpm --filter @ojpp/db push && pnpm db:seed
pnpm ingest:all
pnpm dev
コマンド一覧
| コマンド | 説明 |
|---|---|
pnpm build |
プロダクションビルド(全8アプリ) |
pnpm typecheck |
TypeScript 型チェック |
pnpm test |
Vitest テスト実行 |
pnpm lint |
Biome lint |
pnpm db:studio |
Prisma Studio(DB GUI) |
pnpm db:generate |
Prisma Client 再生成 |
pnpm ingest:all |
全データ一括投入 |
pnpm ingest:culture |
文化政策データ投入 |
pnpm ingest:social |
社会保障データ投入 |
API
全APIはRESTful JSONを返し、ページネーション ?page=1&limit=20 に対応。
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/organizations |
政治団体一覧 |
| GET | /api/organizations/:id |
団体詳細 |
| GET | /api/reports |
報告書一覧 |
| GET | /api/reports/:id |
報告書詳細(収支明細含む) |
| GET | /api/parties |
政党一覧(資金集計付き) |
| GET | /api/stats |
ダッシュボード統計 |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/policies |
政策一覧 |
| GET | /api/policies/:id |
政策詳細 |
| GET | /api/parties |
政党一覧 |
| GET | /api/compare |
政策比較 |
| GET | /api/proposals |
提案一覧 |
| GET | /api/categories |
カテゴリ一覧 |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/sessions |
会期一覧 |
| GET | /api/sessions/:id |
会期詳細 + 法案 |
| GET | /api/bills |
法案一覧 |
| GET | /api/bills/:id |
法案詳細(投票・議論含む) |
| GET | /api/politicians |
議員一覧 |
| GET | /api/politicians/:id |
議員詳細 + 投票履歴 |
| GET | /api/stats |
ダッシュボード統計 |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/budgets |
文化庁予算一覧 |
| GET | /api/programs |
文化プログラム一覧 |
| GET | /api/stances |
政党別文化政策スタンス |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/budgets |
社会保障予算一覧 |
| GET | /api/programs |
社会保障制度一覧 |
| GET | /api/welfare-stats |
都道府県別福祉指標 |
| GET | /api/stances |
政党別社会保障スタンス |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/topics |
トピック一覧(ページネーション対応) |
| GET | /api/topics/:id/ecosystem |
生態系データ(意見・クラスタ・フェロモン) |
| GET | /api/topics/:id/opinions |
意見一覧 |
| POST | /api/topics/:id/opinions |
意見投稿 |
| POST | /api/topics/:id/analyze |
分析パイプライン実行(Argument Mining → クラスタリング → 適応度計算) |
| POST | /api/topics/:id/ai-participate |
AIエージェント参加 |
Data Model
Prisma 6 — 29 models, 14 enums
Party ◄─── CulturalStance DietSession ──► Bill ──► Vote
│ ◄── SocialSecurityStance │ └──► Discussion
│ │
├──► Politician ──► Vote Election ──► ElectionResult
│ │
├──► PoliticalOrganization CulturalBudget
│ └──► FundReport CulturalProgram
│ ├──► FundIncome
│ └──► FundExpenditure SocialSecurityBudget
│ SocialSecurityProgram
└──► Policy ──► PolicyProposal
Prefecture ──► WelfareStat
| データ | 性質 | 件数 | ソース |
|---|---|---|---|
| 政党マスタ | 実データ | 23政党 | 総務省 政党名簿 |
| 都道府県 | 実データ | 47 | JIS X 0401 |
| 衆議院議員 | 実データ | 465名 | 総務省 第50回衆院選結果 |
| 参議院議員 | 実データ | 248名 | 参議院公式 |
| 選挙結果 | 実データ | 9選挙 | 総務省選挙結果 |
| 国会会期 | 実データ | 21会期 | 衆議院公式 |
| 法案 | 実データ | 90件 | 衆議院・参議院議案一覧 |
| 政治資金 | 実データ | 13政党×8年 | 総務省 政治資金収支報告書 |
| 文化庁予算 | 実データ | 12分野×8年 | 文化庁予算概要 |
| 文化プログラム | 実データ | 20件 | 文化庁公開資料 |
| 社会保障予算 | 実データ | 8分野×8年 | 厚生労働省・財務省 |
| 社会保障制度 | 実データ | 15件 | 厚生労働省 |
| 都道府県別福祉指標 | 実データ | 47×3指標 | 総務省統計局 |
| 政党別スタンス | デモデータ | 13政党×12トピック | 各党マニフェスト参照 |
データソース
| データ | ソース | 取り込み |
|---|---|---|
| 政治資金 | political-finance-database.com | pnpm ingest:finance |
| 国会会議録 | 国会会議録API (CC BY 4.0) | pnpm ingest:parliament |
| 法案データ | SmartNews SMRI (MIT) | pnpm ingest:parliament |
| マニフェスト | 各政党公式サイト | pnpm ingest:manifesto |
| 文化政策 | 文化庁予算概要・各党マニフェスト | pnpm ingest:culture |
| 社会保障 | 厚生労働省・財務省・総務省統計局 | pnpm ingest:social |
エージェントファースト設計
| 設計原則 | 詳細 |
|---|---|
| API-First | 全データをRESTful APIで提供。エージェントが直接アクセス |
| 機械可読データ | JSON構造化データを標準。人間用UIとエージェント用APIの両方 |
| エージェント認証 (v0.2) | AIエージェント用の認証・権限管理 |
| MCP対応 (v0.2) | Model Context Protocol による外部AIとの連携 |
| 思考の共有 | Entire によるエージェントセッションの永続化。コミットと紐付けて「なぜこのコードが書かれたか」を共有 |
| Attribution | Entire による人間/AI貢献比率の自動算出・記録 |
| 監査ログ (v0.2) | 全操作のトレーサビリティ。エージェントの行動も透明 |
AIエージェントで開発する
このリポジトリを clone して Claude Code を起動するだけ。
cd open-japan-politech-platform && claude
open-japan-politech-platform/
├── apps/ ← Next.js 15 アプリ
│ ├── moneyglass-web/ :3000 政治資金
│ ├── moneyglass-admin/ :3001 管理画面
│ ├── policydiff-web/ :3002 政策比較
│ ├── parliscope-web/ :3003 国会
│ ├── parliscope-admin/ :3004 管理画面
│ ├── seatmap-web/ :3005 議席勢力図
│ ├── culturescope-web/ :3006 文化政策
│ ├── socialguard-web/ :3007 社会保障
│ ├── portal-web/ :3008 ポータル (WebGPU流体シェーダー)
│ └── broadlistening-web/ :3009 意見生態系β (Argument Mining + フェロモン)
├── packages/
│ ├── ui/ @ojpp/ui — 14+ コンポーネント + Motion + Lenis
│ ├── db/ @ojpp/db — Prisma (29 models / 14 enums)
│ ├── api/ @ojpp/api — ページネーション, エラー, BigInt変換
│ └── ingestion/ @ojpp/ingestion — 6データソース取り込み
├── paper/ 学術論文
└── docs/ ドキュメント
コーディング規約: TypeScript strict / Biome lint / Server Components優先 / API-first
技術スタック
| Layer | Tech |
|---|---|
| Frontend | Next.js 15 (App Router) / React 19 / TypeScript 5.9 |
| Database | PostgreSQL via Supabase |
| ORM | Prisma 6 |
| Styling | Tailwind CSS v4 |
| Design System | @ojpp/ui — 14+ コンポーネント / カスタムテーマ |
| Animation | Motion (v11+) — スプリング物理 / スクロールトリガー / ページ遷移 |
| Smooth Scroll | Lenis — 慣性スクロール / 60fps |
| Charts | Recharts |
| Monorepo | pnpm 10 workspaces + Turborepo |
| Lint / Format | Biome 2.3 |
| Test | Vitest 3 |
| AI Session | Entire — エージェント思考の永続化・共有 |
| CI/CD | GitHub Actions |
ロードマップ
- Prismaスキーマ (29モデル / 14 enum)
- 8アプリ MVP (API + フロントエンド)
- データ取り込みパイプライン (6データソース)
- CI/CD パイプライン
- デザインシステム (@ojpp/ui + Motion + Lenis)
- 学術論文 (PoliTech 5地域比較分析)
- CultureScope — 文化政策可視化
- SocialGuard — 社会保障可視化
- ポータルダッシュボード (WebGPU流体シェーダー + リアルタイムKPI)
- BroadListening β — 意見生態系プラットフォーム(Argument Mining + フェロモン + k-means++)
- Vercel デプロイ
- Entire 導入 (AIエージェントセッション共有・Attribution)
- 認証・認可 (Supabase Auth)
- AIエージェント認証 (APIキー / MCP)
- GraphQL API
- リアルタイム通知
- 多言語対応 (英語)
関連プロジェクト
| プロジェクト | 関係 |
|---|---|
| g0v / vTaiwan | 台湾モデルの日本版。市民社会主導の非党派アプローチを踏襲 |
| Decidim / Consul | 欧州の参加型民主主義基盤。モジュラー設計を参考 |
| mySociety | 英国のNGOモデル。20年+の持続性を参考 |
| チームみらい | 技術的参考。本プラットフォームは全政党対応の非党派版 |
| DD2030 | 方向性は近い。本プラットフォームはエージェントファースト設計を追加 |
論文
PoliTech:政党にも企業にもよらない政治のデジタル化——オープンソース・エージェントレディな政治テクノロジー基盤の国際比較分析
台湾・英国・米国・欧州・日本の5地域を6軸比較フレームワークで分析。
UX / アニメーション
「ぬるぬるカッコいい」 — 政治データを、触って気持ちいいUIで届ける
全アプリに Motion と Lenis による滑らかなアニメーションを実装。
| 機能 | 技術 | 体験 |
|---|---|---|
| スムーススクロール | Lenis 慣性スクロール | 全ページが60fpsでぬるぬる |
| ページ遷移 | PageTransition |
フェード+スライドアップ |
| スクロールリビール | useInView + ScrollReveal |
セクションがスクロールで出現 |
| カードスタッガー | StaggerGrid + StaggerItem |
カードが順番に時差表示 |
| データバー | Spring物理 (stiffness:60) | 議席バー・投票バーがバネで伸びる |
| グラスモーフィズム | Scroll-dependent backdrop-blur | ナビバーが半透明ガラス化 |
| ホバーリフト | whileHover + boxShadow |
カードが浮き上がる |
| タップフィードバック | whileTap scale(0.97) |
ボタンがバネで縮む |
| パララックス | useScroll + useTransform |
Hero背景がパララックス移動 |
Contributing
人間もAIエージェントもオープンに参加できます。CONTRIBUTING.md / CODE_OF_CONDUCT.md / SECURITY.md
AIエージェントからのPull Requestも歓迎します。agent/ ラベルを付けてPRを送ってください。
AGPL-3.0-or-later — 政治インフラは誰のものでもなく、全員のものである。
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.