Data Intelligence MCP Server
The IBM Data Intelligence MCP Server provides a modular and scalable implementation of the Model Context Protocol (MCP), purpose-built to integrate with IBM Data Intelligence services. It enables secure and extensible interaction between MCP clients and IBM’s data intelligence capabilities.
For the list of tools supported in this version and sample prompts, refer to TOOLS.md
flowchart LR
    github["data-intelligence-mcp Github"] -- publish --> registry
    registry["PyPi registry"] -- pip install ibm-watsonx-data-intelligence-mcp-server--> server
    subgraph MCP Host
        client["MCP Client"] <-- MCP/STDIO --> server("Data Intelligence MCP Server")
    end
    server -- HTTPS --> runtime("IBM Data Intelligence")
    subgraph id["Services"]
        runtime
    end
    client <-- MCP/HTTP --> server2("Data Intelligence MCP Server") -- HTTPS --> runtime
  Resources:
- Integrating Claude with Watsonx Data Intelligence A step-by-step guide showing how Claude Desktop connects to the Data Intelligence MCP Server.
 - Watsonx Orchestrate + Data Intelligence Demonstrates how Watsonx Orchestrate integrates with the MCP Server for automation.
 
Table of Contents
- Quick Install - PyPI 
    
- Prerequisites
 - Installation
 
 - Quick Install - uvx 
    
- Prerequisites
 - Installation
 
 - Server 
    
- HTTP Mode
 - HTTPS Mode
 
 - Client Configuration 
    
- Claude Desktop 
      
- stdio (Recommended for local setup)
 - http/https (Remote setup)
 
 - VS Code Copilot 
      
- stdio (Recommended for local setup)
 - http/https (Remote setup)
 
 - Watsonx Orchestrate
 
 - Claude Desktop 
      
 - Configuration 
    
- Client Settings
 - SSL/TLS Configuration
 
 - Running Server in Development Mode 
    
- Prerequisites
 - Running the Server
 - MCP Inspector Tool
 
 
Quick Install - PyPI
Prerequisites
- Python 3.11 or higher
 - Data Intelligence SaaS or CPD 5.2.1
 
Installation
Standard Installation
Use pip/pip3 for standard installation:
pip install ibm-watsonx-data-intelligence-mcp-server
  Quick Install and run - uv
Prerequisites
- uv installation guide
 - Data Intelligence SaaS or CPD 5.2.1
 
Install and Running
stdio mode
uvx ibm-watsonx-data-intelligence-mcp-server --transport stdio
  http mode
uvx ibm-watsonx-data-intelligence-mcp-server
  Server
If you have installed the ibm-watsonx-data-intelligence-mcp-server locally on your host machine and want to connect from a client such as Claude, Copilot, or LMStudio, you can use the stdio mode as described in the examples under the Client Configuration section.
The server can also be configured and run in http/https mode.
Refer to Client Settings section on applicable environment variables for http mode. Update as required before starting the server below. Default DI_ENV_MODE is SaaS
HTTP Mode
ibm-watsonx-data-intelligence-mcp-server --transport http --host 0.0.0.0 --port 3000
  HTTPS Mode
Refer to SERVER_HTTPS.md for detailed HTTPS server configuration and setup.
stdio Mode
When configuring the server through Claude, Copilot, or an MCP client in stdio mode, the server does not need to be started separately. The client will invoke the server directly using standard input/output.
Client Configuration
Claude Desktop
stdio (Recommended for local mcp server setup)
Prereq: uv installation guide
Add the MCP server to your Claude Desktop configuration:
{
  "mcpServers": {
    "wxdi-mcp-server": {
      "command": "uvx",
      "args": ["ibm-watsonx-data-intelligence-mcp-server", "--transport", "stdio"],
      "env": {
         "DI_SERVICE_URL": "https://api.dataplatform.cloud.ibm.com",
         "DI_APIKEY": "<data intelligence api key>",
         "DI_ENV_MODE": "SaaS",
         "LOG_FILE_PATH": "/tmp/di-mcp-server-logs"
      }
    }
  }
}
  http/https (Remote setup)
If the MCP server is running on a local/remote server in http/https mode.
For Cloud SaaS:
{
  "mcpServers": {
    "wxdi-mcp-server": {
      "url": "<url_to_mcp_server>",
      "type": "http",
      "headers": {
        "x-api-key": "your api key from cloud SaaS"
      }
    }
  }
}
  For CPD:
{
  "mcpServers": {
    "wxdi-mcp-server": {
      "url": "<url_to_mcp_server>",
      "type": "http",
      "headers": {
        "x-api-key": "your api key from cpd env",
        "username": "<user name from cpd env>"
      }
    }
  }
}
  VS Code Copilot
stdio (Recommended for local mcp server setup)
Prereq: uv installation guide
Add the MCP server to your VS Code Copilot MCP configuration:
{
  "servers": {
    "wxdi-mcp-server": {
      "command": "uvx",
      "args": ["ibm-watsonx-data-intelligence-mcp-server", "--transport", "stdio"],
      "env": {
         "DI_SERVICE_URL": "https://api.dataplatform.cloud.ibm.com",
         "DI_APIKEY": "<data intelligence api key>",
         "DI_ENV_MODE": "SaaS",
         "LOG_FILE_PATH": "/tmp/di-mcp-server-logs"
      }
    }
  }
}
  http/https (Remote setup)
If the MCP server is running on a local/remote server in http/https mode.
For Cloud SaaS:
{
  "servers": {
    "wxdi-mcp-server": {
      "url": "<url_to_mcp_server>",
      "type": "http",
      "headers": {
        "x-api-key": "your api key from cloud SaaS"
      }
    }
  }
}
  For CPD:
{
  "servers": {
    "wxdi-mcp-server": {
      "url": "<url_to_mcp_server>",
      "type": "http",
      "headers": {
        "x-api-key": "your api key for cpd env",
        "username": "<user name from cpd env>"
      }
    }
  }
}
  Watsonx Orchestrate
Watsonx Orchestrate + Data Intelligence blog post demonstrates how Watsonx Orchestrate integrates with the MCP Server for automation.
Configuration
The MCP server can be configured using environment variables or a .env file. Copy .env.example to .env and modify the values as needed.
Client Settings
Below client settings are common whether http or stdio mode
| Environment Variable | Default | Description | 
|---|---|---|
DI_SERVICE_URL | 
      None | 
      Base URL for Watsonx Data Intelligence instance. Example: api.dataplatform.cloud.ibm.com for SaaS and cluster url for CPD | 
DI_ENV_MODE | 
      SaaS | 
      Environment mode (SaaS or CPD) | 
     
REQUEST_TIMEOUT_S | 
      60 | 
      HTTP request timeout in seconds | 
LOG_FILE_PATH | 
      None | 
      Logs will be written here if provided. Mandatory for stdio mode | 
     
Below client settings are only applicable for stdio mode
| Environment Variable | Default | Description | 
|---|---|---|
DI_APIKEY | 
      None | 
      API key for authentication | 
DI_USERNAME | 
      None | 
      Username (required when using API key for CPD) | 
DI_AUTH_TOKEN | 
      None | 
      Bearer token for alternative to API key | 
For http/https mode client can send below headers| Headers | Default | Description ||---------------------|---------|-------------|| x-api-key | None | API key related to SaaS/CPD || username | None | username for CPD env If API key is provided || authorization | None | Bearer token alternative to apikey |
e.g:
{
  "servers": {
    "wxdi-mcp-server": {
      "url": "<url_to_mcp_server>",
      "type": "http",
      "headers": {
        "x-api-key": "your api key from cloud SaaS/cpd"
      }
    }
  }
}
  {
  "servers": {
    "wxdi-mcp-server": {
      "url": "<url_to_mcp_server>",
      "type": "http",
      "headers": {
        "authorization": "Bearer token"
      }
    }
  }
}
  SSL/TLS Configuration
If running in CPD environment, you might need to configure SSL certificate for client connection. Please look into SSL_CERTIFICATE_GUIDE.md for more details.
Running Server in Development Mode
For development and testing purposes, you can run the server locally using the Makefile commands.
Prerequisites
- Clone the repository
 - Install uv
 - Configure your environment variables in 
.envfile (copy from.env.example) 
Running the Server
Navigate to the project directory:
cd /path/to/data-intelligence-mcp-server
  Run in stdio mode
make run-stdio
  Run in HTTP mode
make run
  Run in HTTPS mode
make run-https
  MCP Inspector Tool
The MCP Inspector is a useful tool for testing and debugging your MCP server during development.
Prerequisites:
- Ensure npm is installed on your machine
 
Usage:
npx @modelcontextprotocol/inspector
  This will launch an interactive inspector interface to test your MCP server tools and capabilities.
