Skip to main content

Traackr API MCP Server

An MCP server for the Traackr API v1, built with FastMCP directly from the API's OpenAPI spec. Point any MCP client (Claude Code, Claude Desktop, Codex, …) at it and it runs on your machine with your own API key.

It is published to PyPI as traackr-api-mcp, so installing is a single uvx command — no clone, no build, no repository access.

Tools

Tool names, summaries, and descriptions are derived entirely from the OpenAPI spec (each operation's operationId / summary / description) — nothing is hardcoded, so new endpoints appear automatically as the spec evolves.

The table below reflects the spec at the time of writing — treat the live spec as the source of truth, since the server generates its tools from it at startup.

Tool Method / Path Description
listCampaigns GET /v1/campaigns List campaigns
getCampaign GET /v1/campaigns/{campaignId} Get a campaign
listCampaignCreators GET /v1/campaigns/{campaignId}/creators List creators on a campaign
listCampaignPosts GET /v1/campaigns/{campaignId}/posts List posts on a campaign
getCampaignSpend GET /v1/campaigns/{campaignId}/spend Get campaign spend totals
listCampaignCreatorsSpend GET /v1/campaigns/{campaignId}/creators/spend List per-creator spend on a campaign
getCreatorSpend GET /v1/campaigns/{campaignId}/creators/{creatorId}/spend Get a creator's spend on a campaign
listCampaignCreatorDeliverables GET /v1/campaigns/{campaignId}/creators/{creatorId}/deliverables List a creator's deliverable line items on a campaign
listCampaignCreatorProducts GET /v1/campaigns/{campaignId}/creators/{creatorId}/products List products sent to a creator
getCreator GET /v1/creators/{creatorId} Get a creator
getCreatorSegments GET /v1/creators/{creatorId}/segments Get a creator's segments

Prerequisites

  • uv (provides uvx). Install with:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  • A Traackr API key (provisioned by Traackr; sent as the X-Api-Key header).

uvx fetches and runs the published package in one step — there is nothing else to install.

Quick start

Pick your client. In every case, replace your-api-key-here with your key.

Claude Code

claude mcp add traackr \
  --env TRAACKR_API_KEY=your-api-key-here \
  -- uvx traackr-api-mcp

Claude Desktop

Edit the config file (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json) and add:

{
  "mcpServers": {
    "traackr": {
      "command": "uvx",
      "args": ["traackr-api-mcp"],
      "env": { "TRAACKR_API_KEY": "your-api-key-here" }
    }
  }
}

Restart Claude Desktop afterward.

Codex

Add to ~/.codex/config.toml:

[mcp_servers.traackr]
command = "uvx"
args = ["traackr-api-mcp"]
env = { TRAACKR_API_KEY = "your-api-key-here" }

Any other MCP client

Use the same command and args:

command: uvx
args:    traackr-api-mcp
env:     TRAACKR_API_KEY=your-api-key-here

Versioning

uvx traackr-api-mcp runs the latest published release. To pin a specific version, append @<version>:

claude mcp add traackr \
  --env TRAACKR_API_KEY=your-api-key-here \
  -- uvx traackr-api-mcp@1.2.0

uvx caches builds, so if a new version has been published and you want it immediately, force a refresh:

uvx --refresh traackr-api-mcp

A full client restart after refreshing ensures the MCP server process is relaunched against the new build.

Configuration

All configuration is via environment variables (set them in your client's env block):

Variable Required Default Purpose
TRAACKR_API_KEY yes API key, sent as the X-Api-Key header
TRAACKR_API_BASE_URL no first servers entry in the spec Override the API base URL (e.g. a pilot host)
TRAACKR_OPENAPI_URL no https://api.traackr.ai/api/openapi/v1 Load the OpenAPI spec from this URL (e.g. a staging spec)

Staying in sync with the API

By default the server fetches the live OpenAPI spec from https://api.traackr.ai/api/openapi/v1 at startup and builds its tools from it — so new endpoints, fields, and description changes show up automatically with no package update. The package also ships a bundled copy (src/traackr_mcp/traackrapi.json) that is used only as an offline fallback if the live URL can't be reached.

If Traackr provides you with an alternate spec URL, point the server at it with TRAACKR_OPENAPI_URL.

Authentication

The Traackr API authenticates with an X-Api-Key header. OAuth is planned for a future release; when it lands, the static header on the httpx client in src/traackr_mcp/server.py can be swapped for an auth flow without changing the tool surface.

Troubleshooting

  • ERROR: TRAACKR_API_KEY is not set — the server exits at startup rather than running and failing every call. Add the key to your client's env block (see Quick start) and restart the client.
  • 403 {"message":"Forbidden"} (AWS ForbiddenException) — the request is fine, but the gateway is rejecting the key. Check the key is activated for the target environment. Reproduce outside MCP with:
    curl -i -H "X-Api-Key: $TRAACKR_API_KEY" "https://api.traackr.ai/api/v1/campaigns?limit=3"
    
  • Output validation error — handled: the server runs with output-schema validation disabled, since the API returns null for optional fields the OpenAPI 3.0.1 spec marks non-nullable.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

traackr_api_mcp-0.2.0.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

traackr_api_mcp-0.2.0-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

Details for the file traackr_api_mcp-0.2.0.tar.gz.

File metadata

  • Download URL: traackr_api_mcp-0.2.0.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for traackr_api_mcp-0.2.0.tar.gz
Algorithm Hash digest
SHA256 bb92359a202ee1e67274debe7cf3f69c8ea591f53bcd0185f80a39d455fa94ea
MD5 e54d722f6d62a4b76f14a6ccaa7e6df0
BLAKE2b-256 c6f71b71fc976ccfcf8975c09edb636cc54bb2c8c8606ca3b413a141018b6ab0

See more details on using hashes here.

File details

Details for the file traackr_api_mcp-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: traackr_api_mcp-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for traackr_api_mcp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4bdabc25d3b52fabeb4425654664daead2aa613af7afc3fc295f99a42d2f0fbc
MD5 c8a28c7c6241c65614a19c32961e7758
BLAKE2b-256 d986b48e9a158ac1823c0f6c58948316c6c800f3ca468c2c6aa31e3512e7bb01

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page