Get the FREE Ultimate OpenClaw Setup Guide →

domo

MCP server from DomoApps/domo-mcp-server

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio domoapps-domo-mcp-server python -m domo_mcp \
  --env DOMO_HOST="<instance-name.domo.com>" \
  --env PYTHONPATH="${workspaceFolder}" \
  --env DOMO_DEVELOPER_TOKEN="<your_domo_developer_token>"

How to use

This MCP server provides programmatic access to your Domo environment through a set of MCP tools. It lets you run SQL-like queries against Domo DataSets, search for DataSets by name to obtain their IDs, and retrieve both metadata and schema for DataSets. In addition, the server exposes management capabilities such as listing and creating roles and listing role authorities, enabling you to manage access control within your Domo instance. You can interact with these tools using the MCP protocol, enabling automated querying, metadata discovery, and schema introspection within your workflows or LLM-assisted prompts.

To use the server, start it with your Domo developer token and host, then send requests through the MCP inspector or your client implementing the MCP protocol. Tools like query_dataset(dataset_id, query), get_dataset_metadata(dataset_id), and get_dataset_schema(dataset_id) will return structured results that you can feed into downstream processes or prompts. For natural language workflows, you can craft prompts such as: “Show me the schema for dataset X” or “List datasets matching ‘orders’ and their IDs,” and the server will translate those into Domo API actions and return the results.

How to install

Prerequisites:

  • Python 3.11+ or Docker (optional for containerized usage)
  • Access to a Domo instance with a developer token and dataset permissions
  • VS Code (recommended) or a suitable editor

Local Python setup:

  1. Clone the repository
  2. Navigate to the repository directory
  3. Install dependencies:
    pip install -r requirements.txt
    
  4. Configure environment variables (example in VS Code settings):
    {
      "name": "Domo MCP Server",
      "type": "stdio",
      "command": "python",
      "args": ["-m", "domo_mcp"],
      "env": {
        "PYTHONPATH": "${workspaceFolder}",
        "DOMO_DEVELOPER_TOKEN": "<your_domo_developer_token>",
        "DOMO_HOST": "<instance-name.domo.com>"
      }
    }
    

Local Docker setup:

  1. Clone the repository
  2. Navigate to the repository directory
  3. Build the Docker image:
    docker build -t domo-mcp-server .
    
  4. Configure VS Code settings to run the container (example):
    {
      "domo-mcp": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "-e",
          "DOMO_DEVELOPER_TOKEN",
          "-e",
          "DOMO_HOST",
          "domo-mcp-server"
        ],
        "env": {
          "DOMO_DEVELOPER_TOKEN": "<domo_developer_token>",
          "DOMO_HOST": "<instance-name.domo.com>"
        }
      }
    }
    

Running the server:

  • Local Python: start with
    python -m domo_mcp
    
  • Test inspector (if using MCP Inspector):
    npx @modelcontextprotocol/inspector python3 domo_mcp.py
    

Additional notes

Tips and common issues:

  • Ensure your Domo host is correct and does not include an https:// prefix.
  • Your DOMO_DEVELOPER_TOKEN must be valid and have appropriate permissions for the DataSets and roles you intend to manage.
  • Keep your environment variables secure; avoid committing tokens to version control.
  • If running in Docker, map the environment variables at runtime and verify network access to your Domo instance.
  • If you encounter connection issues, verify that the host, token, and dataset permissions align with the required operations, and try the provided test script if available.

Related MCP Servers

Sponsor this space

Reach thousands of developers