Communityライティング&編集github.com

saifulrijal-ds/adk-mcp-toolbox-patterns

ADK エージェントが MCP Toolbox 経由で PostgreSQL にクエリを実行するための3つのパターン — ダイレクトツール、スキルスコープツール、スキル駆動スクリプト実行。

adk-mcp-toolbox-patterns とは?

このスキルは、Google ADK(Agent Development Kit)を使用して PostgreSQL データベースにクエリを実行するための3つの異なるパターンを提供します。MCP Toolbox と統合し、ダイレクトツール、スキルスコープツール、スキル駆動スクリプト実行のアプローチを実演します。各パターンは独自のユースケースに対応しており、単純なクエリから複雑なデータベース操作まで、エージェントの機能を拡張します。PostgreSQL への接続には psycopg2 を使用し、MCP サーバーの標準プロトコルに従ってツールを公開します。このスキルは、データベース操作をエージェントワークフローに組み込みたい開発者に特に役立ち、モジュール性と再利用性を重視した設計になっています。

対応~Claude Code~Codex CLI~Cursor
npx skills add saifulrijal-ds/adk-mcp-toolbox-patterns

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

adk-mcp-toolbox-patterns は何をしますか?

ADK エージェントが MCP Toolbox 経由で PostgreSQL にクエリを実行するための3つのパターン — ダイレクトツール、スキルスコープツール、スキル駆動スクリプト実行。

概要

このリポジトリは、ADK エージェントを MCP Toolbox と統合し、PostgreSQL データベースと対話するための3つのアーキテクチャパターンを紹介します。各パターンは異なるレベルの抽象化と制御を提供し、開発者がユースケースに最適なアプローチを選択できるようにします。

パターン

1. ダイレクトツールパターン

エージェントは MCP Toolbox から直接 SQL 実行ツールを利用します。シンプルで透過的ですが、生の SQL をエージェントに公開します。

  • 利点: 実装が簡単、遅延が最小限
  • 欠点: エージェントが複雑なクエリを生成する可能性がある

2. スキルスコープツールパターン

SQL 実行は ADK スキル内にカプセル化されます。エージェントはスキルを通じてのみデータベースと対話し、抽象化レイヤーを提供します。

  • 利点: アクセス制御の向上、スキル内でロジックをカプセル化可能
  • 欠点: 追加の設定が必要

3. スキル駆動スクリプト実行パターン

エージェントはスキルを通じて事前定義されたスクリプトを実行します。これにより、SQL を完全に抽象化し、安全で予測可能な操作を提供します。

  • 利点: 最高レベルのセキュリティと制御、SQL の知識が不要
  • 欠点: 柔軟性が低く、事前定義されたスクリプトが必要

前提条件

  • Python 3.10+
  • ADK がインストールされていること
  • MCP Toolbox の実行インスタンス
  • PostgreSQL データベース

インストール

pip install -r requirements.txt

設定

環境変数を設定します:

DATABASE_URL=postgresql://user:password@host:port/dbname
TOOLBOX_URL=http://localhost:8080

実行

各パターンは個別に実行できます:

# ダイレクトツールパターン
python agents/direct_tools_agent.py

# スキルスコープツールパターン
python agents/skill_scoped_agent.py

# スキル駆動スクリプト実行パターン
python agents/skill_driven_agent.py

プロジェクト構造

.
├── agents/
│   ├── direct_tools_agent.py
│   ├── skill_scoped_agent.py
│   └── skill_driven_agent.py
├── skills/
│   ├── sql_skill/
│   │   ├── skill.yaml
│   │   └── agent.py
│   └── script_executor_skill/
│       ├── skill.yaml
│       └── agent.py
├── scripts/
│   ├── get_users.sql
│   ├── get_orders.sql
│   └── get_products.sql
├── requirements.txt
└── README.md

ライセンス

MIT

関連スキル