Skip to main content
Glama
mParticle MCP Server

mParticle MCP Server

by nmattox

mParticle MCP Server

A Model Context Protocol (MCP) server that provides integration with mParticle's Data Planning API. This server allows Claude Desktop and other MCP-compatible clients to interact with your mParticle data plans, retrieve schemas, and manage data governance workflows.

šŸš€ Features

  • Data Plan Management: Retrieve all data plans or specific data plans by plan ID from your mParticle workspace

  • Authentication: Secure authentication with mParticle's API using client credentials stored as environment variables

  • Automatic Token Management: Handles bearer token refresh and expiration automatically

  • MCP Standard: Built using FastMCP framework for integration with Claude Desktop or other MCP clients.

Related MCP server: Alma Atlas

šŸ“‹ Available Tools

get_all_data_plans

Retrieves all data plans for a specified workspace, including metadata like creation dates, descriptions, and plan status.

Parameters:

  • workspace_id (string): The mParticle workspace ID (required)

get_data_plan_by_id

Retrieves detailed information about a specific data plan, including version information and data plan elements.

Parameters:

  • workspace_id (string): The mParticle workspace ID (required)

  • data_plan_id (string): The data plan ID to retrieve (required)

get_api_status

Checks the configuration status of the mParticle API client and credentials.

šŸ› ļø Installation

Prerequisites

  • Python 3.12+: Ensure you have Python 3.12 or higher installed

  • Claude Desktop: Download and install from the official website

  • mParticle API Credentials: You'll need an API key and secret from your mParticle account

1. Clone and Setup the Project

git clone <repository-url>
cd mparticle_mcp_server

# Install dependencies using uv (recommended)
uv sync

# Or install using pip
pip install -e .

2. Environment Configuration

Create a .env file in the project root or set environment variables:

export MPARTICLE_API_KEY="your_mparticle_api_key"
export MPARTICLE_API_SECRET="your_mparticle_api_secret"

Getting mParticle API Credentials:

  1. Log into your mParticle dashboard

  2. Navigate to Settings > Setup > API Keys

  3. Create a new API key with Data Planning permissions

  4. Copy the Key ID (API Key) and Secret

3. Test the Server

Run the server directly to test the configuration:

python mp_data_plan.py

If configured correctly, you should see:

āœ… mParticle API client configured and ready
šŸš€ Starting MCP server...

šŸ”§ Claude Desktop Integration

To use this MCP server with Claude Desktop, you need to add it to your Claude Desktop configuration.

Configuration File Location

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

Configuration Setup

  1. Locate or create the configuration file at the path above for your operating system.

  2. Add the MCP server configuration:

{
  "mcpServers": {
    "mparticle": {
      "command": "uv",
      "args": [
        "run", 
        "python", 
        "/Users/nmattox/Documents/Apps & Scripts/gen_ai/mparticle_mcp_server/mp_data_plan.py"
      ],
      "env": {
        "MPARTICLE_API_KEY": "your_mparticle_api_key",
        "MPARTICLE_API_SECRET": "your_mparticle_api_secret"
      }
    }
  }
}

Important Notes:

  • Replace the path in args with the absolute path to your mp_data_plan.py file

  • Replace the environment variables with your actual mParticle API credentials

  • If you don't use uv, you can replace "command": "uv" with "command": "python" and adjust the args accordingly:

{
  "mcpServers": {
    "mparticle": {
      "command": "python",
      "args": [
        "/Users/nmattox/Documents/Apps & Scripts/gen_ai/mparticle_mcp_server/mp_data_plan.py"
      ],
      "env": {
        "MPARTICLE_API_KEY": "your_mparticle_api_key", 
        "MPARTICLE_API_SECRET": "your_mparticle_api_secret"
      }
    }
  }
}
  1. Restart Claude Desktop after saving the configuration file.

  2. Verify the installation:

    • Open Claude Desktop

    • Look for the šŸ”Œ plug icon next to the message input

    • Click it to see available MCP tools - you should see the mParticle tools listed

šŸ’” Usage Examples

Once integrated with Claude Desktop, you can use natural language to interact with your mParticle data:

Example Queries:

"Show me all data plans in workspace 12345 - provide summaries for each plan"

  • Claude will use the get_all_data_plans tool automatically to pull all data plans then create a summary

"Get details for data plan 'mobile-app-schema' in workspace 12345 - share a summary of all data elements and suggest possible mParticle use cases given the plan"

  • Claude will use the get_data_plan_by_id tool to pull the specific data plan, create a plan summary, then suggest possible use cases.

"Check if mParticle API is configured properly"

  • Claude will use the get_api_status tool

"Given my use case XYZ and data plan xyz-789 for workspace 12345 - what are suggested improvements I can make to the data plan?"

  • Claude will retrieve the data plan and suggest plan improvements given the use case

šŸ—ļø Project Structure

mparticle_mcp_server/
ā”œā”€ā”€ mp_data_plan.py       # Main MCP server with FastMCP tools
ā”œā”€ā”€ mparticle_api.py      # mParticle API client and authentication
ā”œā”€ā”€ main.py               # Simple test entry point
ā”œā”€ā”€ pyproject.toml        # Project dependencies and metadata
ā”œā”€ā”€ uv.lock              # Locked dependencies
└── README.md            # This file

Available Tools

3 tools
get_all_data_plansA
Get all data plans for a workspace.

This tool retrieves all data plans from mParticle's Data Planning API.
Data plans define the expected structure and validation rules for your events.

Args:
    workspace_id: The mParticle workspace ID (required)
    
Returns:
    JSON string containing all data plans and their metadata
    
Raises:
    Exception: If API credentials are missing or API request fails

Inputs: workspace_id (required). Returns: result

get_api_statusA
Check the status of mParticle API configuration.

Returns:
    Status message indicating if API credentials are configured

Inputs: no named parameters. Returns: result

get_data_plan_by_idA
Get a specific data plan by ID.

This tool retrieves detailed information about a specific data plan from mParticle's Data Planning API.
Data plans define the expected structure and validation rules for your events.

Args:
    workspace_id: The mParticle workspace ID (required)
    data_plan_id: The data plan ID to retrieve (required)
    
Returns:
    JSON string containing the data plan details and metadata
    
Raises:
    Exception: If API credentials are missing or API request fails

Inputs: data_plan_id (required), workspace_id (required). Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: retrieving all data plans, retrieving a single data plan by ID, and checking API status. There is no overlap or ambiguity between them.

    Naming Consistency5/5

    All tool names follow a consistent get_* verb pattern, with clear resource targets (data plans, data plan by id, api status). The naming is predictable and uniform.

    Tool Count4/5

    Three tools is a reasonable count for a narrowly scoped read-only data plan server, though it feels slightly thin when considering the broader mParticle API surface. Each tool is useful and non-redundant.

    Completeness2/5

    The server only supports reading data plans and checking API status, with no create, update, or delete operations. This is a significant gap for managing data plans and leaves the surface incomplete.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to query live schema, lineage, and query-context across data warehouses, dbt projects, orchestration systems, and BI tools via MCP tools.
      Apache 2.0
    • A
      license
      B
      quality
      B
      maintenance
      Enables interacting with Planhat customer data via natural language, supporting CRUD operations on companies, contacts, opportunities, notes, conversations, users, assets, issues, tickets, tasks, licenses, and invoices.
      60
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables natural-language-driven exploration, querying, and full configuration management of Salesforce Data Cloud / Data 360 via MCP.
      Apache 2.0