📢 Enterprise v4.7.0 Released

Support MCP multi-endpoint publishing feature

📢 Enterprise v4.6.0 Released

Support AI SQL Writing feature

Skip to content

DBAPI MCP 機能詳細:あなたのデータ API を AI エージェントのツールへ

MCP とは?

MCP(Model Context Protocol、モデルコンテキストプロトコル)は、Anthropic によって提案されオープンソース化されたオープン標準プロトコルです。AI モデルと外部ツールやデータソースとの相互作用方法を定義しており、「AI の世界における USB-C 接口」のような役割を果たします。統一されたプロトコル規格により、MCP を実装したあらゆるサービスを各種 AI クライアントやフレームワークにシームレスに統合できます。

DBAPI エンタープライズ版 4.5.0 では、MCP Server 機能が正式に組み込まれており、DBAPI で公開済みの API をワンクリックで MCP ツールとしてマッピングし、AI クライアントが検出・呼び出しできるようにします。

MCP で解決できる課題

企業のデータ活用において、AI はデータベースへのアクセス、業務データの照会、社内サービスの呼び出しを行う必要があります。従来の方法では、各シナリオごとに個別にインターフェースを開発し、統合コードを記述する必要があり、効率が悪く、保守コストも高くなります。

DBAPI の MCP 機能は以下を実現します:

  • ゼロコーディングによる統合:AI 統合コードを一切書く必要なく、DBAPI に既存の API が自動的に AI が利用可能なツールとして機能
  • 一元管理:すべてのデータツールを DBAPI のバックエンドで一元管理。権限、リミット、監視機能が即座に利用可能
  • オープンなエコシステム:Claude Desktop、Cursor、LangChain、Spring AI など、主流の AI クライアントやフレームワークに対応
  • 企業向けセキュリティ:プライベート API はトークン認証により、アクセス権限を細かく制御可能

動作原理

AI クライアント / AI フレームワーク(Claude Desktop / Cursor / LangChain / Spring AI)
        │ MCP プロトコル(Streamable HTTP)

  DBApi MCP Server(ポート 8526)
        │ HTTP 呼び出し

  DBApi バックエンド(ポート 8520 / Gateway)


      データベース / Elasticsearch / 第三者インターフェース

MCP Server は橋渡し役として、DBAPI バックエンドで公開された API を MCP ツールとして登録します。AI クライアントは標準の MCP プロトコルを通じてツールリストを検出し、呼び出しを行います。MCP Server はそのリクエストを DBAPI バックエンドへ転送し、最終的な結果を AI へ返します。

さっそく始めよう

前提条件

  • DBAPI エンタープライズ版 4.5.0 以降
  • DBAPI バックエンドが起動中(デフォルトアドレス http://127.0.0.1:8520
  • 少なくとも 1 つの API が作成され、公開済みであること

MCP Server の起動

bash
# 1. 設定ファイルを編集
vim mcp/mcp-config.yaml

# 2. MCP サービスを起動
bash bin/dbapi-mcp.sh start

API を MCP に公開する

MCP ツールとして公開されるのは、公開済みでかつMCP スイッチがオンになっている API だけです。

  1. DBAPI 管理バックエンドにログイン
  2. API 管理ページへ移動
  3. 対象の API を探し、操作バーの MCP スイッチ をクリック
  4. スイッチをオンにすると、次の更新周期で MCP Server が自動的に同期します。

API 管理ページでの MCP スイッチの位置

MCP ツールの呼び出し

MCP エンドポイントアドレス:http://<MCP_SERVER_HOST>:8526/mcp

ツールリストの取得:

bash
curl http://localhost:8526/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

ツールの呼び出し:

bash
curl http://localhost:8526/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: YOUR_BUSINESS_TOKEN" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"dbapi_xxxx","arguments":{"key":"value"}}}'

AI クライアントへの接続

DBAPI の MCP Server は Streamable HTTP プロトコルを使用します。ほとんどのクライアント(Claude Desktop、Codex CLI、Cursor、LangChain、Spring AI)は URL に基づいて自動的に Streamable HTTP を使用しますが、OpenClaw では明示的に transport: "streamable-http" を指定する必要があります。

Claude Desktop

設定ファイル(~/Library/Application Support/Claude/claude_desktop_config.json または %APPDATA%\Claude\claude_desktop_config.json)を編集します:

json
{
  "mcpServers": {
    "dbapi": {
      "url": "http://localhost:8526/mcp"
    }
  }
}

Codex CLI

OpenAI Codex CLI は MCP プロトコルの Streamable HTTP 通信方式をサポートしています。CLI コマンドで追加可能です:

bash
codex mcp add dbapi --url http://localhost:8526/mcp

または直接 ~/.codex/config.toml を編集します:

toml
[mcp_servers.dbapi]
transport = { type = "streamable_http", url = "http://localhost:8526/mcp" }
enabled = true

プライベート API にトークンが必要な場合は、env_http_headers を使用して環境変数から読み取ります:

bash
export DBAPI_TOKEN=your_token_here
codex mcp add dbapi --url http://localhost:8526/mcp
toml
[mcp_servers.dbapi]
transport = { type = "streamable_http", url = "http://localhost:8526/mcp" }
env_http_headers = { "Authorization" = "DBAPI_TOKEN" }
enabled = true

OpenClaw

AI エージェントプラットフォームである OpenClaw は MCP サーバーへの接続をサポートしています。openclaw mcp set コマンドで設定します:

bash
openclaw mcp set dbapi '{"url":"http://localhost:8526/mcp","transport":"streamable-http"}'

または設定ファイルに追加します:

json
{
  "mcp": {
    "servers": {
      "dbapi": {
        "url": "http://localhost:8526/mcp",
        "transport": "streamable-http"
      }
    }
  }
}

プライベート API にトークンが必要な場合は、headers フィールドを追加します:

bash
openclaw mcp set dbapi '{"url":"http://localhost:8526/mcp","transport":"streamable-http","headers":{"Authorization":"YOUR_TOKEN"}}'

Cursor

.cursor/mcp.json を編集します:

json
{
  "mcpServers": {
    "dbapi": {
      "url": "http://localhost:8526/mcp",
      "headers": {
        "Authorization": "YOUR_BUSINESS_TOKEN"
      }
    }
  }
}

LangChain

LangChain はネイティブな MCP クライアントを提供しており、MCPAdapt を使用して接続できます:

python
from langchain_mcp_adapters.client import MCPClient

async with MCPClient("http://localhost:8526/mcp") as client:
    tools = await client.list_tools()
    result = await client.call_tool("dbapi_xxxx", {"key": "value"})

Spring AI

Spring AI は mcp-client-webmvc モジュールを通じて MCP をサポートしています:

java
McpClient client = McpClient.sync(new HttpMcpTransport("http://localhost:8526/mcp"));
List<Tool> tools = client.listTools();
client.callTool("dbapi_xxxx", Map.of("key", "value"));

認証メカニズム

API の種類説明トークンが必要か
オープン API誰でもアクセス可能不要
プライベート API認可されたクライアントのみアクセス可能必要、headers.Authorization に含める

トークンの取得

bash
# clientId と secret を取得(バックエンドのクライアント管理で作成)
curl "http://localhost:8520/token/generate?clientId=YOUR_CLIENT_ID&secret=YOUR_CLIENT_SECRET"

返却されたトークンを MCP クライアントの headers.Authorization に設定してください。

トークンには有効期限があります。期限切れの場合は再取得が必要です。頻繁な更新を避けるため、クライアント管理で長めの有効期限を設定することをお勧めします。

企業向け活用例

シナリオ 1:自然言語による売上照会アシスタント

データベース照会 API を MCP ツールとして公開後、業務担当者は Claude Desktop 上で自然言語で次のように質問できます:

「先月の華東エリアの売上ランキング上位 10 商品は何ですか?」

AI が DBAPI の対応するデータ照会 API を自動的に呼び出し、結果を自然言語で返します。SQL を学ぶ必要もなく、業務システムにログインする必要もありません。

シナリオ 2:スマートレポート生成

複数のデータ照会を組み合わせて完全なレポート生成インターフェースを作成し、MCP ツールとして公開します。AI クライアントが呼び出すことで、構造化されたデータ分析レポートを自動生成できます。

シナリオ 3:データ異常検知エージェント

データ監視系の API を LangChain エージェントのツールとして登録します。エージェントは定期タスクに従って業務データを自動的に監視し、異常を検知すると DingTalk や Feishu のボットを通じてアラートを通知します。

シナリオ 4:企業知識ベースの強化

企業内部システムのデータ照会インターフェース(注文照会、顧客情報、在庫状況など)を MCP ツールとして公開し、自社開発の AI アシスタントに統合することで、AI にリアルタイムで企業データを照会する能力を付与します。

注意事項

  • MCP Server はデフォルトでポート 8526 を監視していますが、mcp-config.yaml で変更可能です。
  • MCP ツールとして公開されるのは、公開済みでかつMCP スイッチがオンになっている API だけです。
  • API を変更しても、MCP Server は URL やパラメータ定義などのメタデータを自動的に同期しますので、MCP Server の再起動は不要です。
  • DBAPI には既に完全な API 認証体系(トークン認証、クライアント認可)と IP ファイアウォールルールが備わっています。MCP クライアントはこれらのセキュリティ機能をそのまま継承するため、アクセス制御の追加設定は不要です。
  • プライベート API を使用する場合は、クライアントが該当 API の認可を取得していることを確認してください。

バージョン要件:DBAPI エンタープライズ版 4.5.0 以降が MCP 機能をサポートします。