Skip to main content
Matillion’s Model Context Protocol (MCP) server offers a secure, standardized way for Large Language Models (LLMs) to interact with your resources. By configuring the MCP server, you can enable AI assistants to help with tasks such as monitoring pipeline executions, analyzing credit consumption, and triggering pipeline runs. You can configure popular AI assistant clients to use the Matillion MCP server (@matillion/mcp-server). The server is distributed as an NPM package and launched using npx, which works with clients that can start local processes.

Use cases


Prerequisites

Before setting up the Matillion MCP server, ensure you meet the following prerequisites:
  • Node.js is installed on your system. We recommend at least v24.
  • npm is installed on your system. Version 11 (minimum recommended) should come with Node.js v24 and above.
doesn’t use Node.js as part of its core SaaS platform, so there’s no Node.js version associated with the service. Node.js is only relevant for the Matillion MCP server. Matillion doesn’t manage the Node.js version; you define it based on your deployment environment.
  • The npx command must be available in your system’s global PATH.
  • You have your Matillion region, client ID, and client secret.
  • At least one installed AI client, such as Claude Desktop or the Gemini CLI.

Obtaining Matillion credentials

To find your Matillion region, and to create your Matillion API credentials (client ID and client secret):
  1. Log in to .
  2. In the left navigation, click your Profile & Account icon.
    Your Matillion region is shown below your account name. The value of the MATILLION_REGION environment variable will be eu if your Matillion region starts with EU, us if it starts with US, or au if it starts with AU.
  3. Then, select API credentials from the menu.
  4. If you don’t have credentials, click Set an API Credential to create a Client ID and Client Secret. Read Authenticate to the Maia API to learn how to create API credentials.
  5. Give your credential set a descriptive Name. We recommend that you use a name that suits the application or purpose the credentials will be used for.
  6. Click Save to create the Client ID and Secret.
  7. Copy the secret immediately. You are not able to view the secret again after this point. If you do not copy it, or otherwise lose it, you will need to delete these credentials and generate a new set. The Secret window will close automatically after this point.

Environment variables


Claude Desktop

Claude Desktop uses a global configuration file to launch MCP servers. Find your Claude Desktop configuration file. If it doesn’t exist, create it at the following location:
  • For macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • For Windows: %APPDATA%\Claude\claude_desktop_config.json
To use the MCP server with Claude Desktop:
  1. Choose which authentication method to use, then replace the placeholders in the corresponding JSON configuration below with your credentials.
  2. Copy your chosen JSON configuration, including the opening and closing , into the Claude Desktop configuration file. If the file already has content, merge the mcpServers object into the existing content.
  3. Quit the Claude Desktop app by right-clicking the Claude icon and then clicking Quit. Closing the window will not quit the app completely.
  4. Restart Claude Desktop. The Matillion MCP server will now be available.

JSON configurations

To authenticate using OAuth credentials:
To authenticate using a bearer token:

Claude Code

There are two ways to configure the MCP server for use with Claude Code. Choose one of the following methods:
  • Replace the placeholders in one of the JSON configurations in the Claude Desktop section with your credentials, then copy the mcpServers block into the ~/.claude.json file.
  • Replace the placeholders in the following command with your credentials, then run the command.

Claude Code with Visual Studio Code

To use the MCP server with Claude Code and Visual Studio Code:
  1. Open your project workspace in Visual Studio Code.
  2. Create or open the .vscode/mcp.json file.
  3. Replace the placeholders in the JSON configuration below with your credentials.
  4. Copy the JSON configuration, including the opening and closing , into the .vscode/mcp.json file. If the file already has content, merge the servers object into the existing content.
  5. Restart Visual Studio Code. The Matillion MCP server will now be available.
For more information, read the Visual Studio Code Configure the mcp.json file guide.

Gemini CLI

The Gemini CLI uses a global settings.json file in your user profile. Find your Gemini CLI configuration file. If it doesn’t exist, create it at the following location:
  • For macOS or Linux: ~/.gemini/settings.json
  • For Windows: $HOME/.gemini/settings.json (where $HOME is your user profile directory, e.g. C:\Users\YourName)
To use the MCP server with Gemini:
  1. Replace the placeholders in the JSON configuration below with your credentials.
  2. Copy the JSON configuration, including the opening and closing , into the Gemini CLI configuration file. If the file already has content, merge the mcpServers object into the existing content.
  3. If the Gemini CLI is currently running in your terminal, use the /quit command to quit the CLI.
  4. Restart the Gemini CLI. The Matillion MCP server will now be available.

JSON configuration


Other MCP-compatible clients

For any other MCP-compatible client, use:
  • Command: npx
  • Args: ["@matillion/mcp-server"]
  • Environment: Set the required authentication variables

Unsupported clients

The Matillion MCP server cannot currently be configured for the following clients:
  • ChatGPT (Desktop and Web)
  • Claude.ai (Web)
  • Browser-based AI clients

Available tools

The server provides access to the following Matillion API tools. Read tools are always available, while Write tools require READ_ONLY_TOOLS to be set to false.

Debug logging

Debug logging is enabled by default with the pattern matillion:*. This provides detailed logs for:
  • OAuth token acquisition and refresh
  • HTTP requests and responses
  • API call details
  • Configuration loading
  • Tool invocations
To disable debug logging, set DEBUG="" or remove the environment variable.