Binggio について
Binggioは、データスチュワード向けのローカルデータ質問ツールです。人が承認した意味や関係に基づいて回答し、根拠を示します。推測せず、回答できない理由を説明し、元データには書き込みません。
主な機能
- 01承認済みの意味に基づく回答
- 02出典と検索条件の表示
- 03列、関係、用語のレビュー
- 04データ修正候補の検出と提案
- 05根拠がない質問への理由付き拒否
活用シーン
- 01業務用語でローカルテーブルを検索
- 02テーブル間の関係と列定義をレビュー
- 03承認された意味のないコード値を特定
- 04エージェントから承認済みデータを検索
MCP 対応
BinggioはローカルMCPサーバーとして動作し、承認済みデータ定義、計画の実行、状態確認、用語の提案をAIクライアントに公開します。計画を検証し、承認済みの意味に基づいて回答するか拒否します。エージェントの提案はアプリで人が承認する必要があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細

Binggio™
データに基づいた、ガバナンスの効いた回答。 Binggio は、人が承認した意味(どの列がキーか、テーブルがどう結び付くか、「delinquent(延滞)」が何を意味するか)だけをもとに質問へ回答します。正確に回答できない場合は、推測する代わりにその理由を伝えます。
- お使いのマシン上で、お手元のファイルやデータベースを使って動作します。データソースへの書き戻しは一切ありません。
- すべての回答に、使用した用語、フィルター、リンク、ソースが表示されます。
- 承認した人とその理由が記録され、承認の対象となったデータが変更されると、ただちにその承認は使われなくなります。
実際の動作を見る
https://github.com/user-attachments/assets/9e9f4222-eaf0-4bb0-8a2d-7a162eb2bc14
2 分間の紹介動画では、サンプル銀行、出典情報付きの質問、レビューと承認、リレーションシップマップ、独自の CSV ファイルの追加、データストーリーをご覧いただけます。
インストール
pip install binggio # CSV and SQLite
pip install binggio[excel] # + Excel workbooks
pip install binggio[sqlserver] # + SQL Server (no ODBC driver needed)
pip install binggio[oracle] # + Oracle (no Oracle client needed)
pip install binggio[all] # everything
ターミナルで binggio が認識されない場合(Windows で pip がユーザーフォルダーにインストールするとよく起こります)は、代わりに python -m binggio を使ってください。たとえば python -m binggio ui を実行するか、pip が表示する Scripts フォルダーを PATH に追加してください。
自然な言葉で質問するにはモデルキーが必要です。BINGGIO_LLM_API_KEY(または OPENAI_API_KEY)を設定してください。それ以外の機能(プロファイリング、検出、レビュー、保存済みプランの実行)は、キーがなくても動作します。
アプリ
binggio ui
ブラウザーで Binggio が開きます。サンプル銀行または独自のワークスペースを作成し、CSV ファイル、Excel ワークブック、データベースを追加できます(フォルダーピッカーと「接続をテスト」の手順が用意されています)。オンボーディングを進め、列のロール、リレーションシップ、概念、ビジネス用語を承認、拒否、取り消し、または再度開くことができます。リレーションシップマップを確認し、すべての回答の出典情報とともに質問できます。
データスチュワード向けに構築されています:
- 根拠を確認しながらレビューします。 列やリレーションシップをクリックすると、そのプロファイル、値の例、一致したキーの数、依存関係、全履歴を確認し、理由を添えて判断できます。リレーションシップには、基準日時ルール、業務上の意味、修正済みの結合列を設定できます。
- 業務上の定義。 業務上の名称に、厳密な計算式を1つ割り当てます(「未決済エクスポージャー = outstanding_balance の合計」など)。Binggio が承認済みの指標から候補を提案し、人が承認します。
- 回答を拒否した質問からの課題。 Binggio が回答を拒否した質問は、理由とともにすべて保存されます。どのような意味が不足しているかを確認し、承認して課題を解決できます。
- 自動レビューはデフォルトでオフです。 厳密な技術チェックに合格した項目のみを承認し、最初にプレビューを表示します。すべての承認を記録し、一連の処理をまとめてロールバックできます。
- 2つのテーブルはどのようにつながっていますか? リレーションシップマップのパス検索機能で、任意の2つのテーブルを結ぶリンクの経路と、その経路を質問で使用できるかどうかを確認できます。
- ショートカット: 一括承認に使える「根拠が強いもののみ」フィルターと、監査証跡全体の CSV エクスポート。
- 自分でリレーションシップを追加できます。 Review › Relationships から、またはリレーションシップマップ上で2つのテーブル間に矢印を引いて追加します。Binggio は保存前に両方のテーブルの全行をチェックし、一致するキーの数や親キーが一意かどうかを確認します。その後、人が承認します。
- 検出が止まった箇所を確認できます。 すべてのテーブルとキーらしい列について、最も近い一致候補、提案されなかった理由(一致する値が少なすぎる、キーが重複している、名称が異なるなど)、惜しかった候補、表記が異なる同一キー(
CUST-000123とC0000123)を確認できます。 - ソースに手を加えずにデータを修正できます。 空白の削除、
$1,234.50の数値としての読み取り、欠損値の補完、キーの接頭辞の追加または削除、指定した形式での日付の読み取り、列を組み合わせた新しいキーの作成、キーごとに1行だけを残す処理ができます。各修正は、追加した人と理由とともに記録され、データが更新されるたびに再適用されます。修正済みテーブルの承認は、再確認が必要です。 - キー用ツール。 列単体または複数列の組み合わせをサンプルではなく全行で確認し、重複または空の行数とその例を調べられます。一意である場合にのみ、その列をテーブルのキーとして設定できます。
- 一意な列がないデータ向けのマスター。 企業のデータ抽出では、レポート対象月やバージョンごとに各レコードが繰り返されることが多く、キーになれる列がありません。Binggio は全行から検出した識別子をもとに、マスター(従業員、書籍、デスクなどごとに1行)とカレンダーを提案し、人が対象の列を承認します。承認済みのマスターはテーブルとして作成され、更新のたびに再構築されます。リレーションシップマップの中心に配置され、各メンバー列はマスターと多対1でリンクされます。欠落(テーブルで使用されているものの、記録システムに存在しない ID)も隠さず表示されます。
- 推奨されるデータ修正。 Binggio はプロファイルから、余分な空白、大文字と小文字の表記揺れ、テキストとして記録された数値、
"-"などのプレースホルダー、テキストとして記録された日付、マスターと表記が異なるキーといった修正を、根拠とプレビューを添えて提案します。人が承認します。 - スナップショットテーブル。 テーブルをレポート期間ごとに1つのコピーがあるものとして人が指定すると、期間をまたいだ合計や件数は拒否されます。回答には、対象期間を1つ指定するか、期間ごとの結果を求める必要があります。
- すべての行を対象とするプロファイル。企業で使われる名称の表記を考慮して読み取ります。 重複なし件数と空の値の件数は全行から算出されます。1語で書かれた名称は末尾をもとに解釈します。バージョン、レベル、コード、フラグが指標として扱われることはなく、メールアドレスがキーとして扱われることもありません。ドメイン/ID/バージョンとして保存された参照、列のブロックとして保存された人物、コードと名称のペア、フラット化された階層はグループとして表示されます。情報のない列はレビュー対象から除外されます。
このコンピューター上(127.0.0.1)でのみ動作し、インターネット接続も依存関係の追加も不要です。ページにはランダムなセッショントークンが付与されるため、ほかのウェブサイトから利用されることはありません。入力したデータベースのパスワードとモデルキーはメモリ内にのみ保持され、ディスクには書き込まれません。サンプルバンクには、モデルキーなしで実行できる質問が10件用意されています。オプション:
--port 8800、--no-browser。テーブルの準備とプロファイリングは同時に、コンピューターのプロセッサコア数を上限として実行されます。数を減らすにはBINGGIO_WORKERS=4を設定してください(1件ずつ処理する場合は1)。
AI エージェントから Binggio を使用する(MCP)
binggio -w C:\banks\my-bank mcp
Binggio は Model Context Protocol に対応しているため、Claude Desktop、Claude Code、Cursor、VS Code、エージェントフレームワークからツールとして使用できます。エージェントは、Binggio が承認した語彙を使ってユーザーの質問を計画に変換します。Binggio はその計画を検証し、承認済みの意味だけを使って回答するか、理由を示して回答を拒否します。エージェントはコード値の意味を提案できますが、アプリで承認できるのは人だけです。SQL は受け付けず、データソースに書き込むこともありません。また、このコンピューター上で動作します。
| ツール | 内容 |
|---|---|
describe_approved | 承認済みのテーブル、列、リンク、業務用語、概念、および計画の形式 |
run_plan | 計画を検証して実行します。ソース、用語、基準日時を含む行、または理由を示した回答拒否を返します |
ask | Binggio が質問を解釈できるようにします(モデルキーが必要です) |
status | 承認済み、レビュー待ち、または古くなっている項目を表示します |
propose_term | コード値の意味を提案します。アプリで人が承認します |
AI クライアントをワンステップで接続する
binggio connect claude-desktop -w C:\banks\my-bank # or: cursor, vscode, claude-code
既存の設定をすべて保持したまま、Binggio をクライアントの設定に追加します(先に日付入りのバックアップが保存されます。ファイルが有効な JSON でない場合は変更されません)。設定を変更せずに表示するには --print を追加してください。その後、クライアントを再起動します。
ほかの接続方法:
- Claude Desktop バンドル: リリースページから
binggio-<version>.mcpbをダウンロードして開きます。Claude Desktop でワークスペースフォルダーを指定するよう求められます。Python 3.10 以降のインストールが必要です。 - 事前インストールなしで使用する場合(uvを使用):コマンドは
uvx、引数はbinggio mcp、環境変数BINGGIO_WORKSPACEにはワークスペースを設定します。 - 手動で設定する場合:
{"mcpServers": {"binggio": {"command": "python", "args": ["-m", "binggio", "-w", "C:\\banks\\my-bank", "mcp"]}}}
-w が指定されていない場合、すべてのコマンドで BINGGIO_WORKSPACE のワークスペースも読み込まれます。
2分間のデモ(コマンドライン)
binggio demo my-bank # a synthetic bank, already reviewed and approved
cd my-bank
binggio status
binggio ask "Which customers in the PREMIUM segment have a delinquent loan?"
binggio ask # a conversation: follow-ups like "which of these ..." work
独自のデータを使う
binggio init my-data && cd my-data
binggio add-csv "Core export" C:\exports\core # a folder of .csv files
binggio add-excel "Branch report" C:\reports\branches.xlsx # each sheet becomes a table
binggio add-db "Core banking" sqlserver --host dbserver --database core --user reader --schema dbo
binggio add-db "Loans" oracle --host orahost --database ORCLPDB1 --user reader --schema LOANS
binggio profile # what each column looks like
binggio discover # which tables link to which
binggio impact # how the new source fits what you already have
binggio onboard --by "Your Name" # review: column roles, links, concepts, words for codes
binggio ask
onboard では4つのステップを順に進め、すべての決定をあなたの名前で記録します。
- 列の役割:キー、指標、日付、ステータスです。候補が提示され、テーブルごとに承認します。
- リンク:どの列がどのテーブルを参照しているかを、根拠(一致する値の数)とともに確認します。
- 概念:データに含まれる対象の名前です(「回収案件」、「担保」など)。
- コードの意味:
kept = Nは「約束不履行」、status = Wは「償却済み」を意味します。質問でこれらの語を使えるのは、意味を定義した後です。
binggio onboard --accept-suggestions --by "Your Name" を実行すると、すべての候補を一括で承認します(その場合も、あなたの決定として記録されます)。既存のテーブルの重複コピーは承認せず、確度の低い代替リンクは確認用に残します。
Binggio が行わないこと
- 意味を推測すること。 承認された意味がない単語、または承認された意味が複数ある単語は、候補を示して拒否します。
- データの一部だけを使って回答すること。 回答時にはテーブル全体を読み取ります。大きなテーブルは一度だけ準備します(ワークスペースの
data/preparedおよびdata/cacheフォルダーに、データとほぼ同じサイズのローカルコピーを作成します。安全に削除できます)。これにより、以降の質問でファイルを再読み込みする必要がありません。結果が多い場合は、先頭の 200 行を表示し、総件数を示します。 - データを変更すること。 データベースの読み取りには SELECT 文のみを使用します。コピーはワークスペース内に保存され、
binggio refresh <connection>を実行すると、その場で再読み込みされます。
まだサポートされておらず、明確なメッセージとともに拒否されるもの:比率と割合、今日を基準とする期間(「過去 30 日間」)、期間の長さ、時間の経過に伴う変化、件数に関する条件(「苦情が 1 件を超える」)。
Python
import binggio
ws = binggio.Workspace.create("my-data")
ws.add_excel("Branch report", r"C:\reports\branches.xlsx")
ws.profile(); ws.discover()
print(ws.status())
answer = ws.ask("What is the total balance of OPEN loans by branch?")
独自のデータベースでの確認
tools/check_database.py は、実際の SQL Server、Oracle、または PostgreSQL データベースに接続します。
--list は読み取り専用です。--cross-source は小規模なテスト用データを一時スキーマに読み込み、CSV コピーと同じ回答が得られることを確認してから、テスト用データを削除します。
ステータス
0.1、初期段階です。
ライセンス
Binggio はフリーソフトウェアです。Free Software Foundation が公開する GNU Affero General Public License のバージョン 3、または(任意で)それ以降のバージョンの条件に従って、再配布および改変できます。有用であることを期待して配布されていますが、商品性や特定目的への適合性を含め、いかなる保証もありません。詳細は LICENSE ファイルを参照してください。
要するに、組織内でも自由に使用できます。Binggio を改変し、その改変版をネットワーク経由を含めて他の人に使わせる場合は、同じライセンスのもとで改変後のソースコードを提供する必要があります。
商標。 Binggio™ および Binggio のロゴは Ashish Kumar の商標です(インドで出願済み)。AGPL の対象はコードであり、名称ではありません。フォークは歓迎しますが、別の名称を使用してください。TRADEMARKS.md を参照してください。
お問い合わせ。 フィードバック、質問、商用ライセンス、導入、パートナーシップについては、[email protected] までお問い合わせください。セキュリティ上の問題については、SECURITY.md を参照してください。
商用ライセンス。 AGPL が組織に適さない場合(たとえば、Binggio をクローズドな製品やサービスに組み込みたい場合)は、商用ライセンスを利用できます。COMMERCIAL.md を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。