npm package: @sealmetrics/mcp-server
Description: SealMetrics analytics MCP server for Claude Code and Claude Desktop
Author: SealMetrics
Latest version: 1.1.0

# @sealmetrics/mcp-server

MCP server for querying [SealMetrics](https://sealmetrics.com) analytics from Claude Code, Claude Desktop, or any MCP-compatible client.

## Setup

### 1. Get an API key

Go to **Settings > API Tokens** in your SealMetrics dashboard and generate a new API key.

### 2. Configure your MCP client

Add to your project's `.mcp.json` or `~/.claude/settings.json`:

```json
{
  "mcpServers": {
    "sealmetrics": {
      "command": "npx",
      "args": ["-y", "@sealmetrics/mcp-server"],
      "env": {
        "SEALMETRICS_API_KEY": "sm_xxxx...",
        "SEALMETRICS_SITE_ID": "my-site"
      }
    }
  }
}
```

### Environment variables

| Variable | Required | Description |
|----------|----------|-------------|
| `SEALMETRICS_API_KEY` | Yes | Your API key (starts with `sm_`) |
| `SEALMETRICS_SITE_ID` | No | Default site ID (skips needing to pass `site_id` to every tool) |
| `SEALMETRICS_BASE_URL` | No | API base URL (default: `https://my.sealmetrics.com/api/v1`) |

## Available tools

### list_sites

List all sites accessible with your API key.

### get_overview

Dashboard KPIs: pageviews, entrances, bounce rate, conversions, revenue. Includes time series data and optional period comparison.

**Parameters:** `site_id`, `period`, `compare`

### get_traffic_sources

Traffic broken down by source (utm_source): google, facebook, direct, etc.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`

### get_traffic_mediums

Traffic broken down by medium (utm_medium): organic, cpc, email, referral, etc.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`

### get_campaigns

Campaign performance (utm_campaign) with entrances, conversions, and revenue.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`, `utm_source`, `utm_medium`

### get_pages

Metrics per page URL path: pageviews, entrances, conversions.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`, `path_filter`

### get_landing_pages

Landing page performance: entrances, bounce rate, conversions.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`, `path_filter`

### get_conversions

Conversions by type (purchase, signup) with count, revenue, and average order value.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`, `utm_source`, `utm_medium`, `country`

### get_microconversions

Microconversions (add_to_cart, newsletter_signup, etc.) by type with counts.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`, `conversion_type`

### get_countries

Traffic by country with entrances, conversions, and revenue.

**Parameters:** `site_id`, `period`, `compare`, `limit`, `sort_by`, `sort_order`

### get_devices

Device type (desktop/mobile/tablet), browser, and OS breakdown in a single call.

**Parameters:** `site_id`, `period`, `compare`

### get_funnel

Funnel analysis with step-by-step conversion rates and dropoff.

**Parameters:** `site_id`, `period`, `country`

## Common parameters

| Parameter | Values | Default | Description |
|-----------|--------|---------|-------------|
| `site_id` | string | `$SEALMETRICS_SITE_ID` | Site to query |
| `period` | `today`, `yesterday`, `7d`, `30d`, `90d`, `this_month`, `last_month`, `this_year`, etc. | `30d` | Time period |
| `compare` | `previous`, `yoy` | none | Comparison mode |
| `limit` | 1-100 | 20 | Max rows returned |
| `page` | number | 1 | Page number for paginated results |
| `sort_by` | varies per tool | varies | Sort field |
| `sort_order` | `asc`, `desc` | `desc` | Sort direction |

## Example usage

Once configured, you can ask Claude:

- "Show me an overview of my site for the last 7 days"
- "What are the top traffic sources this month?"
- "Compare this month's conversions with last month"
- "Which landing pages have the highest bounce rate?"
- "Show me revenue by country for Q1"

## Development

```bash
npm install
npm run build      # Compile TypeScript
npm test           # Run tests
npm run dev        # Run with tsx (dev mode)
```

## License

MIT