Firebird MCP Server について
Firebird MCP Serverは、スキーマの確認やSQL検索を行うLLM向けに、Firebirdデータベースへの読み取り専用アクセスを提供します。SQLは読み取り専用トランザクションで実行され、テーブルスキーマはリソースとして公開されます。
主な機能
- 01読み取り専用SQLクエリの実行
- 02列名とデータ型の参照
- 03テーブルスキーマの自動検出
活用シーン
- 01データベースのテーブルスキーマ確認
- 02Firebirdデータベースのデータ検索
MCP 対応
MCP サーバーは、読み取り専用SQLクエリ用ツールと、列名やデータ型を含むテーブルスキーマのリソースをMCPクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Firebird MCP サーバー
Firebird データベースへの読み取り専用アクセスを提供する Model Context Protocol サーバーです。このサーバーを使用すると、LLM はデータベーススキーマを調査し、読み取り専用クエリを実行できます。
コンポーネント
ツール
- query
- 接続されたデータベースに対して読み取り専用 SQL クエリを実行します
- 入力:
sql(文字列):実行する SQL クエリ - すべてのクエリは READ ONLY トランザクション内で実行されます
リソース
サーバーは、データベース内の各テーブルのスキーマ情報を提供します。
- テーブルスキーマ(
firebird://<host>/<table>/schema)- 各テーブルの JSON スキーマ情報
- カラム名とデータ型を含みます
- データベースのメタデータから自動的に検出されます
Claude Desktop での使用方法
このサーバーを Claude Desktop アプリで使用するには、claude_desktop_config.json の「mcpServers」セクションに次の設定を追加してください。
Docker
- macOS で Docker を実行する場合、サーバーがホストネットワーク(例:localhost)で実行されているときは、host.docker.internal を使用してください
- firebird URL に
firebird://SYSDBA:masterkey@host:3051/test_dbを指定すると、ユーザー名とパスワードを追加できます
{
"mcpServers": {
"firebird": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp/firebird",
"firebird://host.docker.internal:3051/test_db"
]
}
}
}
NPX
{
"mcpServers": {
"firebird": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-firebird",
"firebird://localhost:3051/test_db"
]
}
}
}
/test_db をデータベース名に置き換えてください。
開発環境のセットアップ
Docker 環境変数
Firebird コンテナに必要な環境変数:
DATABASE:データベースファイルのパス(例:/firebird/data/test_db.fdb)FIREBIRD_USER:データベースユーザー(デフォルト:SYSDBA)FIREBIRD_PASSWORD:データベースのパスワード(デフォルト:masterkey)EnableLegacyClientAuth:レガシークライアント認証を有効にします(デフォルト:"true")EnableWireCrypt:ワイヤー暗号化を有効にします(デフォルト:"false")CreateDb:データベースの作成を許可します(デフォルト:"true")
ビルド
Docker:
docker build -t mcp/firebird -f src/firebird/Dockerfile .
トラブルシューティング
よくある問題:
-
コンテナの起動に失敗する:
- DATABASE 環境変数が正しく設定されていることを確認してください
- firebird_data ボリュームの権限を確認してください
- Firebird サーバーの初期化が完了するまで十分な時間を確保してください
-
データベースの初期化:
- サーバーは複数の初期化スクリプト(init.sql、test_db.sql)を使用します
- これらのファイルに適切な権限が設定されていることを確認してください
ライセンス
この MCP サーバーは MIT ライセンスのもとでライセンスされています。MIT ライセンスの利用規約に従うことを条件に、ソフトウェアを自由に使用、変更、配布できます。詳しくは、プロジェクトリポジトリの LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。