MCP サーバーはスタンドアロンサービスとして起動できます。これにより、 MCP サーバーはAIクライアントとは独立して実行できます。MCP サーバーをスタンドアロンサービスとして起動するには、npx
コマンドを使用します。
環境変数を使用したスタンドアロン サービス
npx
を使用して MCP サーバーを起動し、環境変数を使用できます。npx
を実行中前に、オペレーティング システムで MCP サーバーの環境変数を定義する必要があります。
次の例では、Atlas クラスターに接続するための MCP Server Unix 環境変数を定義します。
export MDB_MCP_API_CLIENT_ID="<atlas-service-account-client-id>" export MDB_MCP_API_CLIENT_SECRET="<atlas-service-account-client-secret>" export MDB_MCP_CONNECTION_STRING="mongodb+srv://<user-name>:<password>@<cluster-name>.mongodb.net/<database-name>"
の例を使用するには、次の点を考慮してください。
オプション値を接続情報とその他の詳細で置き換えます。
他のオペレーティング システムの環境変数を定義するには、「オペレーティング システムでの MCP サーバー環境変数の定義」を参照してください。
MCP サーバー オプションのリストを確認するには、 MongoDB MCP サーバー構成オプション を参照してください。
Atlas サービス アカウントを作成するには、Atlas ツールを実行するためのMongoDB MCP Server の前提条件 を参照してください。
次の例では、接続情報を含む以前の環境変数を使用し、追加のコマンドラインオプションも設定しています。
npx -y mongodb-mcp-server@latest --readOnly --indexCheck --loggers mcp stderr --logPath=<log-path>
<log-path>
を、ログファイルを保存するディレクトリパスに置き換えます。
HTTPサーバーとして実行されるスタンドアロン サービス
デフォルトのMCP Server トランスポートプロトコルはstdio
であり、これはほとんどの MCP クライアントとの統合に適しています。
また、 MCP サーバーでHTTPトランスポートプロトコルを使用することもできます。HTTP は、ウェブクライアントから MCP Server と交流したり、特定のポートのリクエストに応答するように MCP サーバーを設定したりする場合に便利です。
注意
HTTPトランスポートは、認証とセキュリティ対策を実装せずに本番環境で使用することは推奨されません。MCP Server とのやり取りにHTTPを使用する必要がある場合にのみ、 HTTPトランスポートを使用してください。
セキュリティ ガイドライン:
認証を実装します。例、 では、 APIゲートウェイまたはリバース プロキシ が使用されます。
HTTPS/TLS暗号化を使用します。
MCP サーバーをファイアウォールの背後またはプライベート ネットワークに配置します。
レート制限を実装します。
接続認証情報を公開しないでください。
セキュリティ推奨事項を表示するには、 MongoDB MCP Server セキュリティ および MongoDB MCP サーバー セキュリティのベストプラクティス を参照してください。
HTTPトランスポートを使用して MCP サーバーを起動するには、--transport http
を使用します。(例: )。
npx -y mongodb-mcp-server@latest --transport http --readOnly
デフォルトでは 、MCP サーバーは http://127.0.0.1:3000
のリクエストに応答し、ローカル接続のみを受け入れます。
クライアント接続URL
MCPクライアントをHTTPサーバーに接続する場合、クライアントの接続URL には /mcp
エンドポイント パスが含まれる必要があります。(例: )。
http://127.0.0.1:3000/mcp
リモート接続
他のコンピューターまたはコンテナからのリモート接続を許可するには、--httpHost=0.0.0.0
を使用してサーバーをすべてのネットワーク インターフェースにバインドします。その後、クライアントはサーバーのIPアドレスまたはホスト名を使用して別のコンピューターから接続できるようになります。
警告
Streamable HTTPでは、MCP サーバーはデフォルトで localhost
(127.0.0.1)
にバインドされます。これにより、MCP サーバーは同じコンピューターからの接続のみを受け入れるようになります。
0.0.0.0
にバインディングすると MCP Server がローカル ネットワーク全体に公開されるため、同じネットワーク上の他のデバイスが MCP Server にアクセスできる可能性があります。これはセキュリティ上のリスクであり、データベースコンテキストへの不正アクセスを許可する可能性があります。localhost
の外部で MCP サーバーを公開する必要がある場合は、 強力なセキュリティ認証を実装します。