AI アシスタントはコードの書き方を変えつつありますが、その真の力は、特殊で高精度のツールと対話できるようになると解き放たれます。OpenAI の Codex は強力なコーディング パートナーですが、実行中のインフラストラクチャに直接接続するとどうなるでしょうか?
Docker MCP Toolkit を入力します。
モデル コンテキスト プロトコル (MCP) ツールキットは安全なブリッジとして機能し、Codex などの AI モデルが、Docker によってキュレーションされた信頼できる MCP カタログから 200+ MCP サーバーのいずれかを安全に検出して使用できるようにします。
この投稿では、 Claude Code と Gemini CLI のチュートリアルと同様に、エンドツーエンドのデモを紹介します。しかし今回は、 Codex を Neo4j MCP サーバーとペアリングします。
まず、MCP Toolkitを使用してCodexをNeo4jサーバーに接続します。次に、ポケモンの種とその種類のグラフを作成し、データを視覚的に探索するという楽しい例を示します。この例は遊び心がありますが、Codex + MCP を現実世界の半構造化データ パイプラインにどのように適用できるかを強調しています。
汎用AIアシスタントがDockerとMCPで強化されると、どのように専門的なデータエンジニアリングの大国に進化できるかをご覧ください。
Docker MCP で Codex を使用する理由
Codex は強力な AI 機能を提供し、MCP はプロトコルを提供しますが、Docker MCP Toolkit は自動化されたデータ モデリングとグラフ エンジニアリングを実用的にします。コンテナ化がなければ、ナレッジグラフを構築するには、ローカルのNeo4jインストールの管理、データベースドライバのバージョンの処理、定型的な接続コードと認証コードの作成、データ検証とロードパイプライン全体の手動スクリプト作成を意味します。数分かかるはずのセットアップが、開発者ごとに数時間に及ぶ可能性があります。
Docker MCP Toolkitは、この摩擦を排除します。
- カタログ内の200+ 事前構築済みのMCPサーバー
- Docker Desktop によるワンクリック展開
- スキーマの設計と検証のための Neo4j Data Modeling MCP
- Neo4j Cypher MCP による直接データベースクエリと取り込み
- データベースパスワードの安全な資格情報管理
- Mac、Windows、Linux 全体で一貫した構成
- 新しいサーバーバージョンがリリースされたときの自動更新
Docker MCP Toolkit は、開発者の現状に合わせて構築しました。Codex を使用している場合は、データベース インフラストラクチャと格闘することなくナレッジ グラフを設計できるはずです。
セットアップ: Codex を Neo4j ツールに接続する
前提 条件
まず、Codex に専用の Neo4j ツールへのアクセスを許可する必要があります。
- Codex をインストールして少なくとも 1 回は実行し、認証を邪魔にならないようにします
- Docker Desktop 4をインストールします。40以降
- MCP Toolkit の有効化
ステップ 1: Neo4j MCP サーバーを追加する
Neo4j Cypher および Data Modeling サーバーは、メインの MCP Toolkit カタログですぐに利用できます。
- Docker Desktop で、[ MCP Toolkit] タブに移動します。
- [ カタログ] タブをクリックします。
- 「Neo4j」を検索し、Neo4j CypherサーバーとNeo4j Data Modelingサーバーの両方で[+追加]をクリックします。
- これで、「マイサーバー」リストに表示されます。
ステップ 2: Codex を MCP Toolkit に接続する
ツールの準備ができたら、Codex に MCP Toolkit を認識させるための 1 回限りのコマンドを実行します。
docker mcp-client configure codex
Docker Desktop UIからこれを行い、[クライアント]タブに移動して、Codexと使用する他のアシスタントの横にある接続ボタンをスマッシュすることもできます。
Docker は対応する構成ファイルを編集し、次回 Codex が起動すると MCP ツールキットに接続し、ツールを自由に使用できるようになります。
ステップ 3:Neo4jの起動と設定
Neo4j Cypher MCP サーバーを Neo4j データベースに接続するように設定する必要があるので、ここで設定します。Codex を使用して Neo4j データベースを起動し、接続を設定します。まず、Codex にコンテナーの作成を依頼します。
› Spin up a Neo4j container for me in Docker please.
Codexは必要なDockerコマンドを実行し、Neo4jコンテナを実行します。もちろん、これを手動で行うか、クラウド サービスを使用するか、 Neo4j デスクトップ アプリケーションをダウンロードすることもできますが、Codex を楽しんでいるので、これらのありふれたことを Codex に行わせてみてはいかがでしょうか。
コンテナで Neo4j を利用できるようになったので、 Neo4j Cypher MCP サーバーに接続するように構成する必要があります。Neo4j Data Modeling MCP サーバーは、構成なしで動作します。簡単にするために、構成フォームのスクリーンショットを撮り、開始したばかりのコンテナに接続するための入力方法に関する情報をCodexに依頼できます。
次に、Codex にサポートを求め、設定ページのスクリーンショットを指しました。
› There is a screenshot in this directory. It has the information we need to configure, MCP server to connect to the Neo4j database. Please look at it and give me the information to configure the MCP server to connect to our Neo4j container.
Codex はコンテナを検査し、実行中のコンテナを見つけ、その認証の詳細 ( NEO4J_AUTH=neo4j/password など) を決定しました。次に、正しい構成値が提供されました。Docker Desktop UI で Neo4j Cypher MCP サーバー構成を neo4j-cypher.url (neo4j://localhost:7687) とパスワードで更新するだけです。
Neo4j Cypher MCP サーバー用の Docker MCP ツールキットのフォームに記入し、今すぐコーデックスを再起動します。
ユースケース:Codex + Neo4jでポケモングラフを構築する
これで、ポケモン種のグラフを作成するという元の問題に取り組む準備が整いました。まず、 /approvals と入力し、好きなことを自由にできるモードを選択して、YOLOモードに入ります。
次に、Codex モデルのフルパワーをタスクに投入できます。完全な問題ステートメントを示します。
› Here's the page with all pokemon in generation 1: https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_index_number_in_Generation_I
and here's the types information: https://bulbapedia.bulbagarden.net/wiki/Type
we're going to create a graph with data about these pokemon (ignore MissingNo entries - they are a glitch and ignore other glitched pokemon).
you have a neo4j container running, and the MCP tools for modelling and cypher.
Codex はタスクを受け入れ、それを計画に分解し、それに取り組み始めます。
それへのアプローチには興味深い瞬間がいくつかありますが、それは主にCodexを構成するモデルによって異なります。私にとっては「モデル:gpt-5-codex」であり、たとえばcurlコマンドをチェーンするよりもスクリプトを使用する傾向があります。
従っている場合に表示される可能性のある計画は次のとおりです。
• I’m preparing to build a Pokemon graph by fetching data from a website using network access. Since this is a complex task, I’ll create a detailed plan involving data gathering, modeling
entities like Pokémon and Types, defining relationships such as evolutions and type effectiveness, and then using tools like MCP Docker to build the Neo4j graph. The first step is to draft
• Updated Plan
└ □ Inspect requirements and gather Generation I Pokémon data with types and evolution chains
□ Define Neo4j graph data model for Pokémon, Types, and relationships
□ Load data into Neo4j via Cypher ingestion and validate
その後、すぐにリクエスト、BeautifulSoup、その他のWebスクレイピングの友人を使用して、提供されたWikiからデータを取得するためのPythonスクリプトの起動を開始しました。興味深いのは、ポケモンのデータが実際には単一のページではなく、すべてのポケモン種のサブページに分散されているため、おそらく Python でスクレイピングする方が、ページをカールしたり、モデル内のデータの処理にトークンを費やしたりするよりも非常に理にかなっているでしょう。また、スクリプトが残されるので、必要に応じて結果を検証して再現できます。
最終的にモデルはデータの分析に進み、ここでMCPツールが非常に役立ちます。以下で、前に構成したサーバーから MCP_DOCKER.validate_data_model を呼び出していることがわかります。
I'm outlining a comprehensive data model for Pokemon, types, and their relationships with precise property types and units converted for better clarity. I plan to generate ingestion-ready
JSON files via a Python script to integrate cleanly with Neo4j ingestion tools, ensuring the data pipeline is robust and structured.
└ wrote data model to data/gen1_pokemon_model.json
• Called MCP_DOCKER.validate_data_model({"data_model":"data/gen1_pokemon_model.json","return_validated":true})
└ Input validation error: 'data/gen1_pokemon_model.json' is not of type 'object'
....
Codex は、データ モデルの json スキーマを理解し、 Neo4j Data Modelling MCP サーバーを満足させるポケモン用のスキーマを作成するのに、数回の試行が必要でした。
次に、データ取り込みスクリプトを作成するために Python に戻り、データを Neo4j インスタンスにロードしました。
後でいくつかのMCPツール呼び出しで、Neo4j CypherのMCPサーバーにアクセスできるため、cypher(グラフデータベースのクエリ言語)を使用してデータをクエリします。これにより、Codex と MCP サーバーは、データに関する分析上の質問に答えることができます。
- Greedy type-coverage search suggests trios such as (Rhydon, Parasect, Dragonite) or (Rhydon, Parasect, Jynx) hit 13 of the 15 defending types super-effectively; no trio can cover Normal/Rock simultaneously because Normal has no offensive 2× matchup.
Neo4j の本当に楽しいところは、データを探索できる素晴らしいコンソールが付属していることです。
ポケモンデータを含むNeo4jコンテナがまだ実行されている間、http://localhost に移動できます :7474、入力 neo4j /パスワードの資格情報 そして、視覚的な方法でデータを探索することができます。
たとえば、ポケモンのサブセットとそのタイプ関係を示します。
また、Cypherを知っている場合、またはCypherクエリを生成できる(そしてMCPツール呼び出しで動作することを確認できる)AIアシスタントを持っている場合は、データのより複雑な投影を生成できます。
MATCH (p:Pokemon)
CALL {
WITH p
OPTIONAL MATCH (p)-[:EVOLVES_TO*1..]->(evo:Pokemon)
WITH collect(DISTINCT evo) AS evos
RETURN [e IN evos WHERE e IS NOT NULL | {node: e, relType: 'EVOLVES_TO'}] AS evolutionConnections
}
CALL {
WITH p
OPTIONAL MATCH (p)-[:HAS_TYPE]->(type:Type)
WITH type
ORDER BY type.name // ensures a stable primary/secondary ordering
RETURN collect(type) AS orderedTypes
}
WITH p, evolutionConnections, orderedTypes,
CASE WHEN size(orderedTypes) >= 1 THEN orderedTypes[0] END AS primaryType,
CASE WHEN size(orderedTypes) >= 2 THEN orderedTypes[1] END AS secondaryType
WITH p,
evolutionConnections +
CASE WHEN primaryType IS NULL THEN [] ELSE [{node: primaryType, relType: 'HAS_PRIMARY_TYPE'}] END +
CASE WHEN secondaryType IS NULL THEN [] ELSE [{node: secondaryType, relType: 'HAS_SECONDARY_TYPE'}] END AS connections
UNWIND connections AS connection
RETURN p AS pokemon,
connection.node AS related,
connection.relType AS relationship
ORDER BY pokemon.name, relationship, related.name;
AIコーディングアシスタントをデータエンジニア、アーキテクト、アナリストなどに変える
このポケモンのデモは楽しい例ですが、現実世界の半構造化データを扱うための実用的な青写真でもあります。Neo4j のようなグラフ データベースは、この種の作業に特に適しています。リレーションシップファーストのモデルにより、現実世界のシステムの複雑さを簡単に表現できます。
このチュートリアルでは、Docker MCP Toolkitを介してOpenAIのCodexをNeo4j MCPサーバーに接続し、複数の特殊な役割を担う方法を示しました。
- データエンジニア:Webデータをスクレイピングして変換するためのPythonの作成
- データアーキテクト: ドメイン固有のツールを使用したグラフモデルの設計と検証
- DevOpsエンジニア:環境に応じたサービスの起動とツールの構成
- データアナリスト: 複雑な Cypher および Python クエリを実行して分析情報を抽出する
独自のプロジェクトでは、AI アシスタントに "運用ログを分析し、パフォーマンスの急上昇の原因を特定する"、"ユーザー データベース スキーマを新しいマイクロサービスに移行する"、"乱雑な CSV のセットから製品カタログをモデル化する" ように依頼できます。
概要
Docker MCP Toolkit は、強力な AI コーディング エージェントと、それらが真に役立つために必要な特殊なツールとの間のギャップを埋めます。200 を超える MCP サーバーの厳選されたカタログへの安全なワンクリック アクセスを提供することで、AI エージェントがデータベース、API、コマンドライン ツールなどの実際のインフラストラクチャと対話できるようにします。データワークフローの自動化、複雑なシステムのクエリ、サービスのオーケストレーションなど、MCP Toolkitはアシスタントを実際の開発者のように作業できるようにします。AI コーディング アシスタントを使用して構築していて、コード生成を超えて構築したい場合は、スタックがすでに依存しているツールとの統合を開始する時期が来ました。
さらに詳しく
- MCP カタログの探索: コンテナ化されたセキュリティ強化された MCP サーバーを検出する
- Docker Desktop を開き、 MCP Toolkit の使用を開始します (MCP Toolkit を自動的に起動するには、バージョン 448 以降が必要です)
- Docker MCP Toolkitを使用してClaude CodeにMCPサーバーを追加する方法のチュートリアルを読む
- Docker MCP Toolkitを使用してMCPサーバーをGemini CLIに追加する方法に関するチュートリアルをお読みください