Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Outlit Mcp

ASecurity

Use when querying Outlit customer data via MCP tools (outlit_*). Triggers on customer analytics, revenue metrics, activity timelines, cohort analysis, churn risk assessment, SQL queries against analytics data, or any Outlit data exploration task.

14 stars
0 votes
0 copies
1 views
Added 9/7/2026
datagobashsqlapisecurity

Works with

claude codeclaude desktopcursorcliapimcp

Security Analysis

A100/100

Scanned 9/7/2026

Install to Claude Code

$npx -y skills add modbender/skill-library-mcp --skill outlit-mcp --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Outlit Mcp?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Outlit Mcp
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/modbender-outlit-mcp/badge)](https://www.skillsdirectory.com/skills/modbender-outlit-mcp)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: outlit-mcp
description: Use when querying Outlit customer data via MCP tools (outlit_*). Triggers on customer analytics, revenue metrics, activity timelines, cohort analysis, churn risk assessment, SQL queries against analytics data, or any Outlit data exploration task.
---

# Outlit MCP Server

Query customer intelligence data through 6 MCP tools covering customer and user profiles, revenue metrics, activity timelines, and raw SQL analytics access.

## Quick Start

| What you need | Tool |
|---------------|------|
| Browse/filter customers | `outlit_list_customers` |
| Browse/filter users | `outlit_list_users` |
| Single customer deep dive | `outlit_get_customer` |
| Customer activity history | `outlit_get_timeline` |
| Custom analytics / aggregations | `outlit_query` (SQL) |
| Discover tables & columns | `outlit_schema` |

**Before writing SQL:** Always call `outlit_schema` first to discover available tables and columns.

### Common Patterns

**Find at-risk customers:**
```json
{
  "tool": "outlit_list_customers",
  "billingStatus": "PAYING",
  "noActivityInLast": "30d",
  "orderBy": "mrr_cents",
  "orderDirection": "desc"
}
```

**Revenue breakdown (SQL):**
```json
{
  "tool": "outlit_query",
  "sql": "SELECT billing_status, count(*) as customers, sum(mrr_cents)/100 as mrr_dollars FROM customer_dimensions GROUP BY 1 ORDER BY 3 DESC"
}
```

---

## MCP Setup

### Get an API Key

Go to **Settings > MCP Integration** in the Outlit dashboard ([app.outlit.ai](https://app.outlit.ai)).

### Auto-Detection Setup

Detect the current environment and run the appropriate setup command:

1. **Check for Claude Code** — If running inside Claude Code (check if `claude` CLI is available), run:
   ```bash
   claude mcp add outlit https://mcp.outlit.ai/mcp -- --header "Authorization: Bearer API_KEY"
   ```

2. **Check for Cursor** — If `.cursor/mcp.json` exists in the project or home directory, add to that file:
   ```json
   {
     "mcpServers": {
       "outlit": {
         "url": "https://mcp.outlit.ai/mcp",
         "headers": { "Authorization": "Bearer API_KEY" }
       }
     }
   }
   ```

3. **Check for Claude Desktop** — If `claude_desktop_config.json` exists at `~/Library/Application Support/Claude/` (macOS) or `%APPDATA%/Claude/` (Windows), add to that file:
   ```json
   {
     "mcpServers": {
       "outlit": {
         "url": "https://mcp.outlit.ai/mcp",
         "headers": { "Authorization": "Bearer API_KEY" }
       }
     }
   }
   ```

Ask the user for their API key if not provided. Replace `API_KEY` with the actual key.

### Verify Connection

Call `outlit_schema` to confirm the connection is working.

---

## Tool Reference

### outlit_list_customers

Filter and paginate customers.

| Key Params | Values |
|------------|--------|
| `billingStatus` | NONE, TRIALING, PAYING, CHURNED |
| `hasActivityInLast` / `noActivityInLast` | 7d, 14d, 30d, 90d (mutually exclusive) |
| `mrrAbove` / `mrrBelow` | cents (10000 = $100) |
| `search` | name or domain |
| `orderBy` | last_activity_at, first_seen_at, name, mrr_cents |
| `limit` | 1-1000 (default: 20) |
| `cursor` | pagination token |

### outlit_list_users

Filter and paginate users.

| Key Params | Values |
|------------|--------|
| `journeyStage` | DISCOVERED, SIGNED_UP, ACTIVATED, ENGAGED, INACTIVE |
| `customerId` | filter by customer |
| `hasActivityInLast` / `noActivityInLast` | Nd, Nh, or Nm (e.g., 7d, 24h) — mutually exclusive |
| `search` | email or name |
| `orderBy` | last_activity_at, first_seen_at, email |
| `limit` | 1-1000 (default: 20) |
| `cursor` | pagination token |

### outlit_get_customer

Single customer deep dive. Accepts customer ID, domain, or name.

| Key Params | Values |
|------------|--------|
| `customer` | customer ID, domain, or name (required) |
| `include` | `users`, `revenue`, `recentTimeline`, `behaviorMetrics` |
| `timeframe` | 7d, 14d, 30d, 90d (default: 30d) |

Only request the `include` sections you need — omitting unused ones is faster.

### outlit_get_timeline

Activity timeline for a customer.

| Key Params | Values |
|------------|--------|
| `customer` | customer ID or domain (required) |
| `channels` | SDK, EMAIL, SLACK, CALL, CRM, BILLING, SUPPORT, INTERNAL |
| `eventTypes` | filter by specific event types |
| `timeframe` | 7d, 14d, 30d, 90d, all (default: 30d) |
| `startDate` / `endDate` | ISO 8601 (mutually exclusive with timeframe) |
| `limit` | 1-1000 (default: 50) |
| `cursor` | pagination token |

### outlit_query

Raw SQL against ClickHouse analytics tables. **SELECT only.** See [SQL Reference](references/sql-reference.md) for ClickHouse syntax and security model.

| Key Params | Values |
|------------|--------|
| `sql` | SQL SELECT query (required) |
| `limit` | 1-10000 (default: 1000) |

Available tables: `events`, `customer_dimensions`, `user_dimensions`, `mrr_snapshots`.

### outlit_schema

Discover tables and columns. Call with no params for all tables, or `table: "events"` for a specific table. Always call this before writing SQL.

---

## Data Model

**Billing status:** NONE → TRIALING → PAYING → CHURNED

**Journey stages:** DISCOVERED → SIGNED_UP → ACTIVATED → ENGAGED → INACTIVE

**Data formats:**
- Monetary values in cents (divide by 100 for dollars)
- Timestamps in ISO 8601
- IDs with string prefixes (`cust_`, `contact_`, `evt_`)

**Pagination:** All list endpoints use cursor-based pagination. Check `pagination.hasMore` before requesting more pages. Pass `pagination.nextCursor` as `cursor` for the next page.

---

## Best Practices

1. **Call `outlit_schema` before writing SQL** — discover columns, don't guess
2. **Use customer tools for single lookups** — don't use SQL for individual customer queries
3. **Filter at the source** — use tool params and WHERE clauses, not post-fetch filtering
4. **Only request needed includes** — omit unused `include` options for faster responses
5. **Always add time filters to event SQL** — `WHERE occurred_at >= now() - INTERVAL N DAY`
6. **Convert cents to dollars** — divide monetary values by 100 for display
7. **Use LIMIT in SQL** — cap result sets to avoid large data transfers

## Known Limitations

1. **SQL is read-only** — no INSERT, UPDATE, DELETE
2. **Organization isolation** — cannot query other organizations' data
3. **Timeline requires a customer** — cannot query timeline across all customers
4. **MRR filtering is post-fetch** — may be slower on large datasets in list_customers
5. **Event queries need time filters** — queries without date ranges scan all data
6. **ClickHouse syntax** — uses different functions than MySQL/PostgreSQL (see [SQL Reference](references/sql-reference.md))

---

## Tool Gotchas

| Tool | Gotcha |
|------|--------|
| `outlit_list_customers` | `hasActivityInLast` and `noActivityInLast` are mutually exclusive |
| `outlit_list_customers` | `search` checks name and domain only |
| `outlit_get_customer` | `behaviorMetrics` depends on timeframe — extend it if empty |
| `outlit_get_timeline` | `timeframe` and `startDate`/`endDate` are mutually exclusive |
| `outlit_query` | Use ClickHouse date syntax: `now() - INTERVAL 30 DAY`, not `DATE_SUB()` |
| `outlit_query` | `properties` column is JSON — use `JSONExtractString(properties, 'key')` |

---

## References

| Reference | When to Read |
|-----------|--------------|
| [SQL Reference](references/sql-reference.md) | ClickHouse syntax, security model, query patterns |
| [Workflows](references/workflows.md) | Multi-step analysis: churn risk, revenue dashboards, account health |

Attribution

modbendermodbender
View sourceMore from modbender →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Rank Tracker

This skill helps you track, analyze, and report on keyword ranking positions over time. It monitors both traditional SERP rankings and AI/GEO visibility to provide comprehensive search performance insights.

1821 votes

Youtube Competitor Analyzer

Find and analyze YouTube competitor channels using YouTube Data API v3. Discover competitors through keyword search, category matching, content similarity, and related channel discovery. Compare metrics, content strategies, and market positioning. Use when users want to (1) Find competitors for their YouTube channel, (2) Analyze competitor performance metrics, (3) Compare their channel against competitors, (4) Identify content gaps and opportunities, (5) Benchmark against similar creators, (6...

31 votes

Twitter Algorithm Optimizer

Analyze and optimize tweets for maximum reach using Twitter's open-source algorithm insights. Rewrite and edit user tweets to improve engagement and visibility based on how the recommendation system ranks content.

742580 votes

Weather Fetcher

Instructions for fetching current weather temperature data for Karachi, Pakistan from wttr.in API

662880 votes

Weather

Get current weather and forecasts (no API key required).

484900 votes
View all in data →