|
| 1 | +# NetApp Workload Factory GenAI MCP server |
| 2 | + |
| 3 | +The NetApp BlueXP Workload Factory for GenAI Model Context Protocol (MCP) server enables MCP-based AI agents to interact with Workload Factory for GenAI knowledge bases. |
| 4 | + |
| 5 | +## Requirements |
| 6 | + |
| 7 | +- [Node.js](https://nodejs.org/) 23 or later (stable version). |
| 8 | +- You need a tenancy account in NetApp BlueXP. |
| 9 | +- You need a service account created in your BlueXP tenancy account. |
| 10 | + - You can create a service account from the **Identity & access management** area in the BlueXP console. |
| 11 | +- You need to note the following from the service account: |
| 12 | + - Account ID |
| 13 | + - Client ID (available in the **Service account credentials** area in the BlueXP console) |
| 14 | + - Client Secret (available in the **Service account credentials** area in the BlueXP console) |
| 15 | +- You need a knowledge base created with BlueXP Workload Factory for GenAI that is configured for active authentication and published: |
| 16 | + - The knowledge base name must be 53 characters or less in length. |
| 17 | + - You need to note the description of the BlueXP Workload Factory for GenAI knowledge base. This description will be used by the MCP client to access the GenAI knowledge base with the MCP server. |
| 18 | + - [Activate external authentication for a knowledge base](https://docs.netapp.com/us-en/workload-genai/knowledge-base/activate-authentication.html) |
| 19 | + - [Publish a knowledge base](https://docs.netapp.com/us-en/workload-genai/knowledge-base/publish-knowledgebase.html) |
| 20 | + |
| 21 | +- You need the ID of the published knowledge base. You can find the knowledge base ID on the **Knowledge bases > Manage knowledge base** page in BlueXP Workload Factory for GenAI, or you can work with the person that created the knowledge base. |
| 22 | + |
| 23 | +## Configure the MCP server |
| 24 | +Update the following variables in the MCP server `config/config.env` file with values from your environment: |
| 25 | +``` |
| 26 | +ACCOUNT_ID=<service_account_ID> |
| 27 | +CLIENT_ID=<service_account_client_ID> |
| 28 | +CLIENT_SECRET=<service_account_client_secret> |
| 29 | +``` |
| 30 | + |
| 31 | +## Install the server |
| 32 | +To install the MCP server, run the following command: |
| 33 | + |
| 34 | +```bash |
| 35 | +npm install |
| 36 | +``` |
| 37 | + |
| 38 | +## Build the server |
| 39 | +To build the MCP server, run the following command: |
| 40 | + |
| 41 | +```bash |
| 42 | +npm run build |
| 43 | +``` |
| 44 | + |
| 45 | +## Configure an MCP client to connect to the server |
| 46 | +As an example, you can configure Claude Desktop to connect to the GenAI MCP server. |
| 47 | + |
| 48 | +1. Open the `claude-desktop-config.json` file and add the following, replacing content in brackets <> with the path to the GenAI MCP server package: |
| 49 | + ```json |
| 50 | + { |
| 51 | + "mcpServers": { |
| 52 | + "workload-factory-gen-ai": { |
| 53 | + "command": "node.exe", |
| 54 | + "args": [ |
| 55 | + "--env-file=<path_to_the_mcp_server_package>/config/config.env", |
| 56 | + "<path_to_the_mcp_server_package>/build/index.js" |
| 57 | + ] |
| 58 | + } |
| 59 | + } |
| 60 | + } |
| 61 | + ``` |
| 62 | +2. Provide the client with the following command string to invoke the MCP server: |
| 63 | + ``` |
| 64 | + node --env-file=<path_to_mcp_server_package>/config/config.env <path_to_mcp_server_package>/build/index.js |
| 65 | + ``` |
| 66 | + |
| 67 | +3. Completely exit Claude Desktop using the `File` menu. |
| 68 | +4. Start Claude Desktop to make the new configuration active. |
| 69 | + |
| 70 | + |
| 71 | +## Learn More |
| 72 | + |
| 73 | +Learn more about [BlueXP Workload Factory for GenAI](https://docs.netapp.com/us-en/workload-genai/index.html). |
0 commit comments