Connect AI clients to the AI Data Engine MCP server
Connect Claude Code, Claude Desktop, Cursor, or OpenCode to the Model Context Protocol (MCP) server for AI Data Engine (AIDE) so that you can search file metadata and tag files in the collections that you have access to.
Before you begin
-
An administrator has completed the setup in Configure Microsoft Entra ID for governed AI access and Connect AI Data Engine to Microsoft Entra ID, including these:
-
Assigning you the
AIDE Power Usersapp role. -
Configuring a collection for MCP with a scope that includes you. Refer to Configure a collection for MCP.
-
Turning on Enable connection to MCP in MCP settings. If the connection is off, AI clients can't connect to any collection.
-
Adding the redirect URI for your AI client to the AI Data Engine application and allowing public client flows. The AI client signs in as a public client, so you don't need a client secret.
-
-
You have the MCP client configuration from your administrator. The administrator generates it in NetApp Console by configuring the collection for MCP, copies the MCP server URL or the client-specific snippet from the Generate MCP code snippet step, and shares it with you. It includes the following:
-
The MCP server URL, in the format
https://<mcp-server-host>/mcp/tools. -
The Microsoft Entra ID tenant ID.
-
The client ID, which is the Application (client) ID of the AI Data Engine application in Entra ID.
-
The scopes that your AI client requests:
-
https://<mcp-server-host>/mcp/tools/power_users, which is the Application ID URI plus/power_users. -
offline_access, so that the client can refresh tokens without asking you to sign in again.
-
-
The ID of the collection that you want to work with.
-
-
Your device can reach the MCP server over HTTPS on port 443. The MCP server runs in your network, so connect from your corporate network or through VPN. Your device must also be able to do the following:
-
Resolve the AIDE cluster host name through DNS.
-
Trust the certificate that the host presents. If the certificate is self-signed, install it as a trusted certificate on your device.
-
Reach Microsoft Entra ID sign-in (
login.microsoftonline.com).
-
-
You have a supported version of the AI client.
Validated AI clients
The instructions on this page cover the AI clients that NetApp has validated: Claude Code, Claude Desktop, Cursor, and OpenCode. For details, refer to Validated AI clients.
AI clients that connect from a cloud provider's service into your network aren't supported. For example, custom connectors that are built into an AI client and called from the provider's cloud can't reach the MCP server in your network. Use the configuration steps on this page instead.
Check your configuration before you paste it
Before you paste a snippet into your AI client, confirm the following:
-
The host is your AIDE cluster host name, not a cluster or service IP address.
-
The URL ends in
/mcp/toolsand includes thecollection_idof the collection that you want to work with. -
The scope is
https://<mcp-server-host>/mcp/tools/power_users, which is the Application ID URI plus/power_users. -
The client ID is the Application (client) ID of the AI Data Engine application in Entra ID.
Connect Claude Desktop
|
|
Generating connection details in NetApp Console doesn't connect or validate your AI client. Complete those tasks in the AI client. |
Claude Desktop connects to the AI Data Engine MCP server through mcp-remote, a small helper that runs on your computer.
Install Node.js on your computer. The mcp-remote helper runs with Node.js.
-
In Claude Desktop, open the configuration file
claude_desktop_config.json. By default, the file is in one of the following locations:-
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json -
Windows:
%APPDATA%\Claude\claude_desktop_config.json
-
-
Add the AI Data Engine MCP server under
mcpServers. Replace the placeholders with values from your administrator:{ "mcpServers": { "netapp-ai-data-engine": { "command": "npx", "args": [ "-y", "mcp-remote@<tested version>", "https://<mcp-server-host>/mcp/tools?collection_id=<collection-id>", "--static-oauth-client-info", "{\"client_id\": \"<application-client-id>\"}", "--static-oauth-client-metadata", "{\"scope\": \"https://<mcp-server-host>/mcp/tools/power_users offline_access\"}", "--disable-resource-parameter" ] } } }Keep the --disable-resource-parameterargument. Without it, Microsoft Entra ID rejects the sign-in request with errorAADSTS9010010. -
Save the file and restart Claude Desktop.
-
When the browser opens, sign in with your Microsoft Entra ID account and accept the consent prompt if it appears.
-
In Claude Desktop, open Connectors and confirm that the AI Data Engine server is listed with its tools.
Connect Claude Code
Claude Code connects to the AI Data Engine MCP server directly.
-
Add the AI Data Engine MCP server. Replace the placeholders with values from your administrator:
claude mcp add --transport http \ --client-id <application-client-id> \ --callback-port 8080 \ --scope user \ netapp-ai-data-engine "https://<mcp-server-host>/mcp/tools?collection_id=<collection-id>"Don't pass --client-secret. The client application is a public client. -
To request the AI Data Engine scopes, open the Claude Code configuration file and edit the
netapp-ai-data-engineentry. User-scope entries are in~/.claude.json. Project-scope entries are in.mcp.json.{ "mcpServers": { "netapp-ai-data-engine": { "type": "http", "url": "https://<mcp-server-host>/mcp/tools?collection_id=<collection-id>", "oauth": { "clientId": "<application-client-id>", "callbackPort": 8080, "scopes": "https://<mcp-server-host>/mcp/tools/power_users offline_access", "authServerMetadataUrl": "https://login.microsoftonline.com/<tenant-id>/v2.0/.well-known/openid-configuration" } } } } -
In Claude Code, run
/mcpand sign in with your Microsoft Entra ID account. Or, from a shell, runclaude mcp login netapp-ai-data-engine. -
Run
claude mcp listand confirm that the AI Data Engine server shows as connected.
Connect Cursor
Cursor connects to the AI Data Engine MCP server directly.
-
In Cursor, open the MCP configuration file
mcp.json. To use the server in all of your projects, open~/.cursor/mcp.json. To use it in the current project only, open.cursor/mcp.json. -
Add the AI Data Engine MCP server. Replace the placeholders with values from your administrator:
{ "mcpServers": { "netapp-ai-data-engine": { "url": "https://<mcp-server-host>/mcp/tools?collection_id=<collection-id>", "auth": { "CLIENT_ID": "<application-client-id>", "scopes": [ "https://<mcp-server-host>/mcp/tools/power_users", "offline_access" ] } } } }Don't paste a bearer token into this file. Cursor uses the client ID to sign you in. -
Save the file, and then reload Cursor.
-
In Cursor Settings > MCP, select Connect for the AI Data Engine server.
-
When the browser opens, sign in with your Microsoft Entra ID account and accept the consent prompt if it appears.
-
In Cursor Settings > MCP, confirm that the AI Data Engine server is enabled and that its tools are listed. If it isn't, check Output > MCP Logs.
Connect OpenCode
OpenCode connects to the AI Data Engine MCP server directly.
-
Add the AI Data Engine MCP server. Replace the placeholders with values from your administrator:
opencode mcp add netapp-ai-data-engine --global --url "https://<mcp-server-host>/mcp/tools?collection_id=<collection-id>" -
To add your client application, open
~/.config/opencode/opencode.json, or theopencode.jsonfile in your project, and edit thenetapp-ai-data-engineentry:{ "$schema": "https://opencode.ai/config.json", "mcp": { "servers": { "netapp-ai-data-engine": { "type": "remote", "url": "https://<mcp-server-host>/mcp/tools?collection_id=<collection-id>", "oauth": { "client_id": "<application-client-id>", "scope": "https://<mcp-server-host>/mcp/tools/power_users offline_access" } } } } }Don't set oauthtofalse, and don't add a client secret to this file. -
In OpenCode, run
/mcps, select the AI Data Engine server, and sign in with your Microsoft Entra ID account when the browser opens. -
Run
opencode mcp listand confirm that the AI Data Engine server shows as connected.A status of
needs authenticationmeans that OpenCode saved the configuration but you haven't completed sign-in.
What you can do
After you connect, your AI client can use five tools: get_collection, search, list_tags, create_tag, and tag_document. A connection is limited to the collection in the MCP server URL. To work with a different collection, use the connection details for that collection. Refer to MCP tools for AI Data Engine governed AI access for what each tool does.
The tools are available in a power-user session, which requires the AIDEPowerUsers app role and the power_users scope.
|
|
To search all scanned systems and volumes, use the connection details for the All files collection. |
Your AI client can't retrieve file contents, add, delete, or modify files, change data sources, or create collections.
Tags apply across AI Data Engine, not only to one collection. A misspelled tag name creates a new tag, and tag names are case-sensitive. For example, Finance and finance are different tags. You can't rename a tag after you create it. For limitations on tag names, refer to Known limitations.
Sample prompts
Replace the placeholders with values from your environment.
Search metadata
-
"List the data collections that I can search."
-
"In the <collection name> collection, find all PDF files."
-
"In the <collection name> collection, find files whose names start with
<prefix>." -
"In the <collection name> collection, list files owned by <owner>."
-
"How many <file type> files are in the <collection name> collection?"
-
"Show the path, size, and last-modified date of files named
<prefix>in the <collection name> collection."
|
|
Search filters on file name prefix, file type, and owner. If you ask for files by size, date, or folder, the AI client must page through many results, and the answer might be incomplete. |
Tag files
-
"List the tags in use and how many files have each tag."
-
"Create the tag <tag name> and apply it to <file name>."
-
"Apply the tag <tag name> to the files from my last search."
-
"Remove the tag <tag name> from <file name> in the <collection name> collection."
Troubleshoot connection problems
| Problem | Resolution |
|---|---|
The browser sign-in fails with error |
Ask your administrator to add the exact redirect URI that the error shows to the Authentication settings, under Mobile and desktop applications, of the AI Data Engine application in Entra ID. The port in your client configuration must match the registered URI. |
Sign-in fails with error |
Consent wasn't granted, or the client isn't authorized. Ask your administrator to grant consent, or to add the Application (client) ID as an authorized client application for the |
Sign-in fails with error |
The scope string doesn't match. Use the Application ID URI plus |
Claude Code or OpenCode shows |
Sign in. In Claude Code, run |
Claude Desktop sign-in fails with error |
Make sure that the |
The AI client receives |
Entra ID might have issued a v1 token, or the tenant ID or client ID doesn't match. Ask your administrator to confirm that |
The AI client receives |
Sign in again to get a new token. If the error continues, ask your administrator to confirm that the AI client requests the |
The AI client lists no tools, or tagging is refused. |
Ask your administrator to confirm that you hold the |
The AI client reports a TLS or connection error. |
Confirm that your device resolves the AIDE cluster host name and trusts the certificate that the host presents. If the certificate is self-signed, install it as a trusted certificate on your device. Refer to Make the host reachable from client machines. |