mcpField
O
ODBC MCP Server

ODBC MCP Server

ローカル
github.com/tylerstoltzデータベース684 週間前に更新

ODBC MCP Server について

ODBC MCP Serverは、ODBC経由でClaude DesktopなどのMCPクライアントをデータベースに接続します。複数接続と読み取り専用の保護に対応し、接続確認、スキーマ参照、SQLクエリのツールを提供します。

主な機能

  1. 01ODBC対応データベースへの接続
  2. 02複数のデータベース接続の設定
  3. 03データ変更を防ぐ読み取り専用保護
  4. 04接続、DSN、テーブル、スキーマの確認
  5. 05SQLクエリの実行と結果取得
  6. 06設定ファイルや環境変数による設定

活用シーン

  1. 01データベースのテーブル一覧とスキーマ確認
  2. 02顧客や注文などの業務データの検索
  3. 03データベースの分析とインサイトの作成

MCP 対応

MCPサーバーとして、接続とDSNの一覧、接続テスト、テーブル一覧、スキーマ取得、SQLクエリ実行のツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ODBC MCP サーバー

ODBC 接続を介してデータベースを照会できるようにする、MCP(Model Context Protocol)サーバーです。Claude Desktop などの LLM ツールに対応しています。このサーバーを使うと、セキュリティと読み取り専用の保護を維持しながら、Claude やその他の MCP クライアントがデータベースのデータにアクセスし、分析して、知見を得られます。

特長

  • ODBC 対応のあらゆるデータベースに接続
  • 複数のデータベース接続に対応
  • 設定ファイルまたは Claude Desktop の設定による柔軟な構成
  • データの変更を防ぐ読み取り専用の保護
  • UV パッケージマネージャーによる簡単なインストール
  • 詳細なエラー報告とログ記録

前提条件

  • Python 3.10 以上
  • UV パッケージマネージャー
  • 使用するデータベースの ODBC ドライバーがシステムにインストールされていること
  • Sage 100 Advanced の場合:ProvideX ODBC ドライバー

インストール

git clone https://github.com/tylerstoltz/mcp-odbc.git
cd mcp-odbc
uv venv
.venv\Scripts\activate # On Mac / Linux: source .venv/bin/activate (untested)
uv pip install -e .

設定

サーバーは次の方法で設定できます。

  1. 専用の設定ファイル
  2. 環境変数
  3. Claude Desktop の設定
基本的な設定

データベース接続の詳細を記載した設定ファイル(.ini)を作成します。

[SERVER]
default_connection = my_database
max_rows = 1000
timeout = 30

[my_database]
dsn = MyDatabaseDSN
username = your_username
password = your_password
readonly = true
SQLite の設定

ODBC を使用する SQLite データベースの場合:

[SERVER]
default_connection = sqlite_db
max_rows = 1000
timeout = 30

[sqlite_db]
dsn = SQLite_DSN_Name
readonly = true
Sage 100 ProvideX の設定

ProvideX との互換性を確保するには、特別な設定が必要です。最良の結果を得るため、次の最小限の設定を使用してください。

[SERVER]
default_connection = sage100
max_rows = 1000
timeout = 60

[sage100]
dsn = YOUR_PROVIDEX_DSN
username = your_username
password = your_password
company = YOUR_COMPANY_CODE
readonly = true

ProvideX に関する重要な注意事項:

  • 最小限の設定を使用してください。パラメーターを追加すると、接続の問題が発生する場合があります
  • 安全のため、必ず readonly = true を設定してください
  • Sage 100 の接続には company パラメーターが必要です
  • 接続の確立後に接続属性を変更しないでください
Claude Desktop との連携

Claude Desktop でサーバーを設定するには:

  1. claude_desktop_config.json を開くか、新規作成します。

    • Windows:%APPDATA%\Claude\claude_desktop_config.json
    • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  2. MCP サーバーの設定を追加します。

{
  "mcpServers": {
    "odbc": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\path\\to\\mcp-odbc",
        "run",
        "odbc-mcp-server",
        "--config", 
        "C:\\path\\to\\mcp-odbc\\config\\your_config.ini"
      ]
    }
  }
}

使用方法

サーバーを手動で起動する
# Start with default configuration
odbc-mcp-server

# Start with a specific config file
odbc-mcp-server --config path/to/config.ini
Claude Desktop で使用する
  1. 上記のとおり、Claude Desktop の設定ファイルでサーバーを設定します
  2. Claude Desktop を再起動します
  3. ODBC ツールが MCP ツールの一覧に自動的に表示されます
利用可能な MCP ツール

ODBC MCP サーバーでは、次のツールを利用できます。

  1. list-connections:設定済みのデータベース接続をすべて一覧表示します
  2. list-available-dsns:システム上で利用可能な DSN をすべて一覧表示します
  3. test-connection:データベース接続をテストし、情報を返します
  4. list-tables:データベース内のテーブルをすべて一覧表示します
  5. get-table-schema:テーブルのスキーマ情報を取得します
  6. execute-query:SQL クエリを実行し、結果を返します

クエリの例

サーバーに接続した後、Claude Desktop で次のプロンプトを試してください。

  • 「データベース内のテーブルをすべて表示してください」
  • 「Customer テーブルのスキーマは何ですか?」
  • 「最初の 10 件の顧客を取得するクエリを実行してください」
  • 「過去 30 日間に発注された注文をすべて検索してください」
  • 「地域別に売上データを分析し、知見を提示してください」

トラブルシューティング

接続の問題

接続に問題が発生した場合:

  1. ODBC ドライバーが正しくインストールされていることを確認します
  2. ODBC データ ソース アドミニストレーターを使って DSN をテストします
  3. 設定ファイルの接続パラメーターを確認します
  4. Claude Desktop のログで詳細なエラーメッセージを確認します
ProvideX 固有の問題

Sage 100/ProvideX の場合:

  1. 最小限の接続設定(DSN、ユーザー名、パスワード、会社)を使用します
  2. Company パラメーターが正しいことを確認します
  3. ProvideX 専用の設定テンプレートを使用します
  4. Driver not capable エラーが発生する場合、接続時に自動コミットが設定されていることを確認します
テーブルが見つからない場合

テーブルが表示されない場合:

  1. データベースアカウントのユーザー権限を確認します
  2. 会社コードが正しいことを確認します(Sage 100 の場合)
  3. スキーマ名を含むテーブル名(schema.table)を使用してみます

ライセンス

MIT License - Copyright (c) 2024

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。