GoodData MCP Server

We are launching an experimental Model Context Protocol (MCP) server that exposes GoodData features to external MCP clients. For now, you can connect from your own MCP Client (for example, a custom chatbot) and interact with GoodData using natural language.

AI is becoming part of everyday work, but connecting it safely to company data can be a challenge. Teams want their chatbots, IDE assistants, and custom agents to work with real data, while keeping access secure and consistent.

The GoodData MCP Server is our new step in that direction. It lets AI clients connect directly to governed analytics in GoodData, so they always reason with trusted metrics instead of raw or ad-hoc queries.

At the moment, this feature is available only through MCP clients (such as Cursor, ChatGPT with MCP support, or MCP Inspector).

How It Works

  • The MCP server runs as a forwarding layer to GoodData backend APIs.
  • It supports MCP protocol with proper error handling, multi-workspace isolation, and authentication.
  • You connect with your own MCP client using an API Token.
  • Once connected, you can use natural language to trigger GoodData tools (list metrics, create alerts, etc.).

Available Tools

  • List all metrics in a workspace
  • Get workspace name, description, organization information
  • See active alerts and scheduled exports
  • Create new alerts (comparison, range, or relative)
  • Update thresholds, operators, or convert alert type
  • List available delivery channels (email, Slack, webhooks)

Example of Use

  1. You ask the assistant: “Alert me if Total Revenue drops below 90K.”

  2. The assistant analyzes your request and sets parameters:

    metric = Total Revenue operator = LESS_THAN threshold = 90000 schedule = every morning at 8am delivery = your default method

  3. You get confirmation: “Alert created: will check daily and notify you when Total Revenue < 90K.”

Connect

Endpoint

Use this endpoint to connect:

http(s)://<your-gooddata-host>/api/v1/actions/workspaces/{workspaceId}/ai/mcp

Replace {workspaceId} with the actual workspace ID you want to work in.

Authentication

Pass your GoodData API token as a Bearer token:

Authorization: Bearer <your-token>

Example Configurations

Cursor IDE (~/.cursor/mcp.json)

{
  "mcpServers": {
    "gooddata-mcp-server": {
      "type": "streamable-http",
      "url": "https://your-gooddata-host/api/v1/actions/workspaces/{workspaceId}/ai/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

MCP Inspector CLI

mcp-inspector https://your-gooddata-host/api/v1/actions/workspaces/{workspaceId}/ai/mcp \
  --header "Authorization: Bearer <your-token>"