jampp_mcp_server
springwq/jampp_mcp_serverUpdated 20 days ago00

Remote#OAuth 2.0#GraphQL#campaign performanceLicense: NoneLanguage: Python

Jampp MCP Server

This MCP server provides access to the Jampp Reporting API through the Model Context Protocol, allowing LLMs to fetch campaign performance data.

Features

  • OAuth 2.0 authentication with automatic token refresh
  • GraphQL-based API integration
  • Campaign spend reporting
  • Daily spend tracking
  • Comprehensive performance metrics
  • Asynchronous report generation and retrieval
  • Available metrics and dimensions listing

Prerequisites

  • Python 3.10 or higher
  • Jampp API credentials (Client ID and Client Secret)

Installation

  1. Clone this repository:

    git clone https://github.com/yourusername/mcp-jampp.git
    cd mcp-jampp
    
  2. Install dependencies:

    uv add "mcp[cli]" httpx python-dotenv
    

    Or with pip:

    pip install "mcp[cli]" httpx python-dotenv
    
  3. Set up your environment variables: Create a .env file in the project root with your Jampp API credentials:

    JAMPP_CLIENT_ID=your_client_id
    JAMPP_CLIENT_SECRET=your_client_secret
    

Usage

Running the Server Directly

python jampp_mcp_server.py

Using with MCP Inspector

For development and testing:

mcp dev jampp_mcp_server.py

Integration with Claude Desktop

  1. Install Claude Desktop from claude.ai/download

  2. Configure Claude Desktop to use this server:

    • Open or create ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
    • Add the following configuration:
    {
      "mcpServers": {
        "jampp": {
          "command": "python",
          "args": ["path/to/jampp_mcp_server.py"],
          "env": {
            "JAMPP_CLIENT_ID": "your_client_id",
            "JAMPP_CLIENT_SECRET": "your_client_secret"
          }
        }
      }
    }
    
  3. Restart Claude Desktop

Available Tools

1. get_campaign_spend

Fetches campaign spend data for a specific date range.

Parameters:

  • from_date: Start date in YYYY-MM-DD format
  • to_date: End date in YYYY-MM-DD format
  • campaign_id (optional): ID of the specific campaign to query

2. get_campaign_daily_spend

Fetches daily spend data for a specific campaign.

Parameters:

  • from_date: Start date in YYYY-MM-DD format
  • to_date: End date in YYYY-MM-DD format
  • campaign_id: ID of the campaign to query
  • timezone (optional): Timezone for the report (default: UTC)

3. get_campaign_performance

Fetches comprehensive performance metrics for campaigns.

Parameters:

  • from_date: Start date in YYYY-MM-DD format
  • to_date: End date in YYYY-MM-DD format
  • campaign_id (optional): ID of a specific campaign to query
  • timezone (optional): Timezone for the report (default: UTC)

4. create_async_report

Creates an asynchronous report for larger data sets.

Parameters:

  • from_date: Start date in YYYY-MM-DD format
  • to_date: End date in YYYY-MM-DD format
  • dimensions: List of dimensions to include (e.g. ["campaignId", "campaign"])
  • metrics: List of metrics to include (e.g. ["impressions", "clicks", "spend"])

5. get_async_report_status

Checks the status of an asynchronous report.

Parameters:

  • report_id: ID of the async report to check

6. get_async_report_results

Gets the results of a completed asynchronous report.

Parameters:

  • report_id: ID of the async report to retrieve

7. get_available_metrics_and_dimensions

Gets a list of all available metrics and dimensions for reporting.

Example Queries for Claude

Here are some example queries you can ask Claude when using this MCP server:

  1. "Show me the campaign spend for the last 30 days"
  2. "What was the daily spend for campaign ID 12345 last week?"
  3. "Get me the performance metrics for all campaigns in January 2023"
  4. "Create an async report with campaign and country dimensions and impressions, clicks, and spend metrics for Q1"
  5. "What metrics and dimensions are available for Jampp reporting?"

License

MIT

Installation

Claude
Claude
Cursor
Cursor
Windsurf
Windsurf
Cline
Cline
Witsy
Witsy
Spin AI
Spin AI
Use the following variables when running the server locally:

MCPLink

Seamless access to top MCP servers powering the future of AI integration.

© 2025 MCPLink. All rights reserved.
discordgithubdiscord