自然言語でMongoDBを操作!MongoDB MCP ServerでAIアシスタントとデータベース操作してみた
メディア統括本部 サービスリライアビリティグループ(SRG)の小林(@berlinbytes)です。
#SRG(Service Reliability Group)は、主に弊社メディアサービスのインフラ周りを横断的にサポートしており、既存サービスの改善や新規立ち上げ、OSS貢献などを行っているグループです。
本記事は、AIを活用して自然言語でMongoDBを操作できる新ツール「MongoDB MCP Server」のセットアップ方法と使用例を解説し、開発効率を向上させる方法を紹介するものです。
はじめにMongoDB MCP Serverとは必要なものセットアップ手順1. Atlas サービスアカウントの作成2. MCPサーバーの設定実際に使ってみるデータの検索データベースの管理Atlasクラスタの管理コード生成その他の便利な機能読み取り専用モード特定ツールの無効化まとめ
はじめに
近年、大規模言語モデル(LLM)やAIエージェントの進化は目覚ましく、ソフトウェア開発のあり方を大きく変えようとしています。
そのような状況の中、MongoDBはAIを活用した開発を加速させるための新しいツール「MongoDB Model Context Protocol (MCP) Server」のパブリックプレビューを発表しました。
この記事では、MongoDB MCP Serverがどのようなもので、何ができるのかを、セットアップから具体的な使用例まで交えて検証・紹介します。
MongoDB MCP Serverとは
MongoDB MCP Serverは、AIツールやアシスタントがMongoDBと対話するための公式な実装です。
これにより、開発者は使い慣れたAI搭載エディタやチャットインターフェースから、自然言語を使ってMongoDBのデータを検索したり、データベースを管理したりすることができるようになります。
MongoDB Atlas、Community Edition、Enterprise Advancedなど、あらゆるMongoDBデプロイメントに対応しているのが特徴です。
必要なもの
MCPサーバーを利用するには、以下の準備が必要です。
- MongoDB Atlasクラスター または セルフホスト型のMongoDBデプロイメント
- サポートされているMCPクライアント(例: Visual Studio Code, Windsurf, Cursor, Claude Desktopなど)
- Node.js (バージョン 20.10.0 以降)
セットアップ手順
ここでは、MongoDB AtlasとCursorを連携させるパターンを例に、セットアップ手順を解説します。
公式の手順はこちらです。
1. Atlas サービスアカウントの作成
MCPサーバーがAtlasの管理タスク(クラスターの作成など)を実行するために、適切な権限を持つサービスアカウントが必要です。
- MongoDB Atlasにログインし、「Access Manager」から「Organization Access」を選択します。
- 「Add New」から「Service Account」をクリックし、アカウントに名前を付け必要な権限を割り当てます。必要な操作に応じたロール(例: )を付与してください。
- 作成後表示されたとを安全な場所に保存します。
- 「Network Access」で、MCPサーバーを実行するマシンのIPアドレスからのアクセスを許可しておきます。
2. MCPサーバーの設定
次に、MCPクライアント側でサーバーの設定を行います。
Cursorの場合、設定ファイル()に以下のようなJSONを追記します。
設定後Cursorを起動すると、ChatなどのAI機能からMongoDBを操作できるようになります。
実際に使ってみる
セットアップが完了したら、AIクライアントから自然言語でプロンプトを投げてみましょう。

「test」データベースに、「products」コレクションが作成されました。
続いて、以下のような確認が求められます。許可をすると、サンプルデータが挿入されます。

自然言語のみで、データの投入までできました。
AtlasのUI上でも確認してみます。

正しく操作されていますね。
次に、曖昧な表現でもクエリが実行できるかを試してみます。

こちらの意図を正しく理解して、操作してくれたようです。

その他、Usage Examplesに紹介されているように、下記の操作が実行できました。
データの検索
データベースやコレクションの構造を尋ねたり、特定の条件でデータを検索したりできます。
プロンプト例:
データベースの管理
自然言語でCRUD操作(作成、読み取り、更新、削除)を実行できます。
プロンプト例:
Atlasクラスタの管理
Atlas APIの権限を設定していれば、クラスターの管理も可能です。
プロンプト例:
コード生成
データベースのスキーマ情報をコンテキストとして与えることで、より正確なアプリケーションコードを生成させることができます。
プロンプト例:
その他の便利な機能
自然言語でのクエリ実行は簡単である一方、誤った操作による事故などのリスクはあります。
サービスアカウントの権限を、最小権限の原則に従い絞る必要があることはもちろん、以下のように設定で回避することも可能です。
読み取り専用モード
設定でをにすることで、データの変更を伴う操作(作成、更新、削除)を禁止し、安全にデータ検索を行えます。
特定ツールの無効化
フィールドを使用すると、特定の操作(例: , )を個別に無効化でき、意図しない操作を防ぐことができます。
まとめ
MongoDB MCP Serverは、自然言語という直感的なインターフェースを通じて、MongoDBの強力な機能を誰もが簡単に利用できるようにするためのツールです。
特に、データベースの専門知識がない開発者や、AIを活用して開発プロセスを効率化したいチームにとって、大きな助けになりそうです。
まだパブリックプレビュー段階ですが、AIとデータベースの連携を高める可能性があり、今後の発展が非常に楽しみです。
MongoDBはGitHubでフィードバックを積極的に募集しているため、興味のある方はぜひ試してみてはいかがでしょうか。
SRG では一緒に働く仲間を募集しています。
ご興味ありましたらぜひこちらからご連絡ください。