pbu-fsbu-mcp
pbu-fsbu-mcp
ロシア会計基準のテキストを提供するMCPサーバー — 財務省レジストリの全29件のПБУとФСБУを、項レベルまで正確に、日付を考慮し、「1С:Бухгалтерия предприятия 3.0」の設定オブジェクトへの投影付きで提供します。
「ФСБУ 6/2020は清算価値について何を要求しているか」という形式の質問と、逆方向の「ПараметрыАмортизацииОСレジスターの背後にある規範は何か」という質問に答えます。
クイックスタート
git clone https://github.com/MihasikPro/pbu-fsbu-mcp.git
cd pbu-fsbu-mcp
docker compose -f deploy/compose.local.yml up --buildcurl http://127.0.0.1:18010/healthz{"status":"ok"}が期待されます。MCPエンドポイントは http://127.0.0.1:18010/mcp です。
コーパスはgitに保存されません。docker buildの段階でYAMLソースから構築され、同じ場所でバリデータによって検証されるため、無効なコーパスはランタイムに送られる代わりにビルドを失敗させます。初回起動前に追加でインストールするものはありません — PythonもTesseractも不要です。
Related MCP server: onec-meta-mcp
ツール
ツール | 答える質問 |
| どの基準が存在し、どの基準が指定日に有効か |
| 1つの基準のメタデータと目次 |
| 命令の要件と版番号付きの項の正確なテキスト |
| 通常の言葉で尋ねられた質問に答える項はどれか |
| その項がБП 3.0のどのオブジェクトで実装されているか |
| 設定オブジェクトの背後にある規範は何か |
| どのИТС記事がこの項を解説しているか |
リソース pbu-fsbu://registry — 全基準のコンパクトな表で、クライアントはlist_standardsを繰り返し呼び出す代わりに、セッションの開始時に一度だけロードできます。
中身
29基準、1768の項。 財務省の全レジストリ: 有効なПБУとФСБУ、失効したПБУとФСБУ、それぞれ1版。
回答は常に日付付きです。 各ツールはon_dateを受け取り、その日付の基準のステータスを返します。これは飾りではありません。ПБУ 9/99と10/99は01.01.2027に失効し、ФСБУ 9/2025と10/2026は同時に発効します。この期間では、日付なしの回答は誤りになります。
1Сへの投影 — 検証済み。 ФСБУ 6/2020はБП 3.0のオブジェクトに関連付けられています: 17の項にわたる18のリンク、各リンクには信頼度評価と、オブジェクトがどのように規範を実装するかの説明が付きます。すべてのレコードはverified: trueを持ちます — コードだけでなく人間が検証しました。残りの28の基準にはまだ投影がなく、ツールは空のリストではなく明示的なメッセージで応答します。
投影は解釈であり、規範ではありません。 常に項のテキストとは別のフィールドに存在し、免責事項が付きます。未検証のレコードは追加で個別の警告を発生させ、その警告は、そのようなレコードが1つでも回答に含まれる限り消えません。
サーバーはネットワークにアクセスしません。 起動時もリクエスト処理時も。データベースは厳密に読み取り専用で、イメージは不変です。
できないこと
基準の正確なテキストを超えて規範のコンサルティングや解釈は行いません。
ИТС記事のテキストは保存しません — 識別子、タイトル、自分の言葉での簡潔な要約のみ。完全なテキストはサブスクリプションで読めます。
弁護士の代わりにはならず、会計上の決定は行いません。
クライアントの接続
クライアントは既に起動しているサーバー — ローカルまたは内部サーバー — に接続します。
Codex CLI
~/.codex/config.toml:
[mcp_servers.pbu_fsbu]
url = "http://127.0.0.1:18010/mcp"Claude Code
claude mcp add --transport http pbu-fsbu http://127.0.0.1:18010/mcpClaude Desktop
Claude DesktopはHTTPエンドポイントに接続できません: アプリケーションはhttp://スキームを拒否し、custom connector接続はAnthropicのクラウドから確立されるため、localhostにもローカルネットワーク内のアドレスにも到達できません。Codex CLIとClaude Codeはローカルプロセスであり、この問題はありません。
Claude Desktopの場合、サーバーはstdio経由でローカルに起動され、既に構築されたコーパスを持つチェックアウトから実行されます — %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"pbu-fsbu": {
"command": "uv",
"args": ["--directory", "C:\\path\\to\\pbu-fsbu-mcp", "run", "pbu-fsbu-mcp"]
}
}
}Gitアドレスからの直接インストール(uvx --from git+...)はこの用途には適しません: data/build/はリポジトリに含まれず、コーパスが構築されず、サーバーは起動を拒否します。ローカルチェックアウトが必要です — 「開発」を参照してください。
サーバーへのデプロイ
deploy/compose.server.ymlは、ローカルネットワークからのみアクセス可能な内部サーバー向けです:
git clone https://github.com/MihasikPro/pbu-fsbu-mcp.git
cd pbu-fsbu-mcp/deploy
docker compose -f compose.server.yml up -d --build初回起動前に、ファイル内のポート公開アドレスをサーバーのアドレスに置き換えてください。ポートは特定のLANアドレスに公開され、0.0.0.0ではありません。ホストに2番目のインターフェース — VPNやパブリックIP — が現れた場合、0.0.0.0へのバインドはサービスをそこに黙って公開してしまいますが、このようなレコードはそれができません。
TLSと認証は意図的に省略されています: コーパスは公開の規範テキストで秘密はなく、ネットワークは閉じています。TLSと認証なしでサービスを外部に公開すべきではありません。
corpus_meta.built_atはコンテナ起動時ではなくdocker buildの時点で固定されます。コーパスの陳腐化警告はイメージ構築日から90日を数えます。restartや--buildなしのupはコーパスを更新しません — 再構築が必要です。
ソース
テキストの主なソース — Минфинのウェブサイト上の基準の専用ページ(https://minfin.gov.ru/ru/document?id_4=NNNN、レジストリにリンクあり)です。そこではテキストが通常のサーバーHTMLとして提供され、スキャンもOCRもなく、publication.pravo.gov.ruのアーカイブより古い基準(そのアーカイブは2011年11月頃から始まり、29の基準のうち19を含まない)にもアクセスできます。
例外 — ФСБУ 27/2021: Минфинのウェブサイト上のそのページにはテキストがなく、<iframe>のPDF-ビューアのみ。この唯一の基準について、テキストは公式の命令スキャンの認識(Tesseract 5.x、tessdata_bestのrusモデル)とその後の行の校正によって取得されました。OCRは文書化された予備手段であり、通常の方法ではありません。
テキストは、ファイルをdata/drafts/からdata/sources/standards/へ移動する前に、公式の法令に照らして校正されます。テストtest_html_sourced_standard_reproduces_byte_for_byteは、コミットされたHTMLスナップショットからコーパスを再生成し、バイト単位の一致を要求するため、コーパスは信頼ではなく構造によって再現可能です。
コーパスに含まれないもの
基準自体への付録 — 報告フォームのサンプルと、独自の番号付けを持つ別の付録として構成された詳細な数値例 — はコーパスに含まれません。形式的にはそれらは法令の一部ですが、その番号付け(「1.」「2.」…)は新たに始まり、基準の項と競合します。
項内の作業例との違いは、ソースのマークアップのみにあります — 実際の付録には独自の見出し「会計規則「…」への付録」があります。ПБУ 18/02の項14–15の数値例にはそのような見出しがなく、それらは項のテキストの一部であり、コーパスに完全に含まれています。
基準 | 削除された文字数 |
ПБУ 8/2010 | 12 010文字 |
ПБУ 24/2011 | 4 062文字 |
ПБУ 16/02 | 3 814文字 |
ПБУ 19/02 | 3 208文字 |
ПБУ 7/98 | 2 768文字 |
ПБУ 18/02 | 2 372文字 |
ПБУ 3/2006 | 1 508文字 |
ライセンス
規範的な法的行為は著作権の対象ではありません(ロシア連邦民法第1259条)。コード — MIT、データの条件 — data/LICENSE。
コーパスの更新
Минфинの新しい法令が出た場合:
uv run --group etl python -m etl.watch --live— Минфинのウェブサイトのレジストリをコーパスと比較し、相違を表示します。uv run --group etl python -m etl.draft_yaml --live— 項のテキストを抽出し、下書きをdata/drafts/に置きます。公式の法令に基づいてテキストを校正し、
data/sources/standards/に移し、# ЧЕРНОВИКバナーを削除します。uv run python -m etl.build_db && uv run python -m etl.validateuv run --group etl pytest
週に1回、同じ比較をworkflow etl-watchが実行し、相違があるとレポート付きpull requestを作成します。自動マージはありません: 新しい法令は人間が読みます。
1СとのリンクおよびИТСへの参照を追加するルール — CONTRIBUTING.mdにあります。
開発
uv sync --all-groups
uv run python -m etl.build_db
uv run python -m etl.validate
uv run --group etl pytest真実のソース — data/sources/のYAML。ファイルdata/build/pbu_fsbu.dbはそれらから構築され、リポジトリにはコミットされません。
サーバーはコンテナなしでも起動できます:
uv run pbu-fsbu-mcp # stdio
uv run pbu-fsbu-mcp --transport http --port 18010 # HTTPOCRテストとTesseract
認識テスト(tests/test_ocr_text.py)は、ローカルにインストールされたTesseract 5.xとrusモデルを必要とします。それがない場合、それらはスキップされます — 残りのセットはそれに影響しません。それらを実際に実行するには:
TESSERACT_CMD—tesseractへのパス(バイナリがPATHにない場合);TESSDATA_PREFIX—*.traineddataモデルを含むディレクトリ(標準でない場合)。
$env:TESSERACT_CMD = "C:\Program Files\Tesseract-OCR\tesseract.exe"
$env:TESSDATA_PREFIX = "C:\Users\<user>\.tessdata"
uv run --group etl pytestCIでは、Tesseractとrusモデルはapt-getでインストールされます — .github/workflows/ci.ymlを参照してください。
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
MCP server for Russian books search, details, and recommendation candidates.
Accounting knowledge graphs: SEC XBRL filings, QuickBooks ledgers, reports and forecasts over MCP.
Headless API-first double-entry accounting & bookkeeping engine. 84 MCP tools over HTTP.
Related MCP Servers
AlicenseBqualityAmaintenanceMCP server for 1C:Enterprise ERP with 35 tools: metadata inspection, document CRUD, register queries, and BSP integration. First MCP server for Russian ERP systems (300,000+ organizations). JSON-RPC 2.0 compliant BSL implementation.5140MIT- FlicenseNot gradedqualityBmaintenanceMCP server for searching and analyzing 1C enterprise metadata and BSL code using a SQLite backend. Enables querying configuration structure, code routines, and performing compliance checks via natural language.-
- AlicenseNot gradedqualityDmaintenanceMCP server for RAG-based search over 1C Enterprise configuration documentation, enabling natural language queries to find objects like справочники, документы, and отчеты.MIT
- AlicenseNot gradedqualityBmaintenanceMCP сервер с встроенным AI агентом для поиска по графу метаданных и кода конфигураций 1С105AGPL 3.0