Docsv1 · 100+ MCP tools · 26 skills

Connect Claude to INITE Studio

Skills run on your machine. Reasoning runs on your Anthropic tokens. Our MCP server handles raw data fetching, deterministic math, and persistence. Four steps from zero to your first audit.

Overview

Three layers, one audit

The product splits cleanly into skills (markdown recipes Claude follows), MCP tools (raw data + math, hosted by us), and the dashboard (your audit history, billing, and BYOK keys). You choose how deeply you want to touch each layer.

Quick start
Four steps · two minutes
  1. 01
    Generate API key

    Settings → API keys → Generate. The plaintext is shown once.

    Go
  2. 02
    Install skills

    curl -fsSL https://inite.studio/install.sh | sh — drops 15 markdown skills into ~/.claude/skills.

  3. 03
    Connect Claude

    Paste the personalised MCP config block into your Claude client and restart it.

  4. 04
    Run an audit

    In Claude: “audit this idea: …”. The full report lands in your dashboard.

    Go

Prefer guided setup with live progress detection? The onboarding wizard auto-detects when your key is generated, when Claude first hits the MCP, and when your first audit lands.

Step 1

Install the skills

A one-liner installer drops 15 markdown skills into your Claude config directory.

bash
curl -fsSL https://inite.studio/install.sh | sh

Default target: ~/.claude/skills/. Pass --target=project to install into the current repo's .claude/skills/ instead — useful if a project has bespoke prompts.

All skills are plain markdown — read them, edit them, fork them. There is nothing magical. Audit-grade transparency on every step Claude follows.

Step 2

Generate an API key

The MCP server uses bearer-token auth — one key per Claude client (laptop, workstation, CI). Keys are SHA-256 hashed at rest; the plaintext is shown once, then never retrievable.

  1. Open Settings → API keys.
  2. Click Generate, give it a label (e.g. laptop).
  3. Copy the plaintext — it's shown once.
  4. If you lose it, revoke and generate a new one.
Step 3

Add the MCP server to Claude

Three flavours: Claude Desktop, Claude Code (CLI), and the Anthropic SDK. Pick the one matching where you run Claude. Replace YOUR_API_KEY with the key from step 2.

Edit your Claude Desktop config — macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json. Then quit and reopen Claude Desktop.
json
{
  "mcpServers": {
    "ideaudit": {
      "type": "http",
      "url": "https://api.inite.studio/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

Restart Claude Desktop after editing the config. CLI registration takes effect immediately. SDK uses the key per-request.

Step 4

Run your first audit

The audit-idea master skill orchestrates 9 sub-skills + dealbreakers synthesis. Claude calls our MCP tools as needed; we never touch your reasoning.

In any Claude chat:

audit this idea: an AI note-taking app for lawyers

Claude detects the audit-idea skill, walks the pipeline (extract → market → competition → P/S → team → traction → business model → GTM → finance → mission → dealbreakers), and persists the final report. It lands in Audits automatically with a Star/Green/Yellow/Orange/Red zone verdict.

How scoring works

Methodology v2

Stage-aware, confidence-weighted scoring. Replaces the legacy GO/REFINE/KILL three-bucket verdict with a four-bucket decision and a per-lens confidence vector.

Each lens (audit-team, audit-market, audit-competition, …) emits two outputs that feed the v2 verdict:

  • Pass/fail — boolean, the lens's own rubric.
  • Confidence (0..1) — how strongly the lens trusts its conclusion given the evidence it gathered. Low confidence on a fail is a softer signal than high confidence on a fail.

compute_dealbreakers_v2 aggregates these into a four-bucket decision:

GO

All critical lenses pass with high confidence.

CONDITIONAL_GO

Pass with caveats — fixable gaps in 1-2 lenses.

REFINE

Material weaknesses; iterate before raising.

KILL

High-confidence dealbreaker(s) — pivot or drop.

Stage matters. The same lens output is weighted differently for an idea-stage founder vs a Series A applicant — a missing CFO is fatal at Series A and ignorable at idea stage. Stage is captured via setAuditStageSector on save.

Cross-lens consensus. When two lenses make contradictory claims (audit-market: “CAGR 30%” vs audit-competition: “saturated, no growth left”), we surface a consensus warning and downgrade the overall confidence. Read the warnings card on the audit detail page or call GET /api/methodology/consensus/:auditId headlessly.

Cohort percentile. If your audit has a sector tag and at least one other audit shares it, we surface where this idea sits in the cohort distribution. GET /api/methodology/cohort/:auditId.

Calibration. The platform tracks outcomes you record and reports whether the score actually predicts funding events. Mean-funded vs mean-killed score, threshold accuracy, and a suggested GO threshold are exposed via GET /api/methodology/calibration. Aim for ≥30 outcomes before treating the discrimination number as load-bearing.

Which skills emit confidence

Lenses report a 0..1 confidence number alongside their pass/fail. The aggregator weights each lens by its confidence before deciding the overall verdict — a high-conviction fail outweighs a low-conviction pass elsewhere. Skills that currently emit confidence:

SkillConfidence drivers
audit-teamFounder LinkedIn match strength × number of corroborating mentions
audit-marketTAM source agreement (multi-source-tam) × CAGR confidence interval
audit-competitionNumber of distinct competitors found × evidence freshness
audit-financeComparable count × recency of comparable funding rounds
audit-tractionMetric verifiability (URLs / tweets / news) × stage match
audit-problem-solution-fitPain-point repetition across sources × intent-strength
audit-business-modelComparable monetization patterns × stage fit
audit-gtm-scaleChannel-test evidence × CAC/LTV plausibility
Optional

Bring your own keys (BYOK)

Plug your own provider keys to skip pooled metering, unlock subscription discounts, and keep all data flowing through accounts you already pay for.

Web search

Dispatcher priority: Perplexity → Tavily → Exa → Brave → pooled Perplexity. BYOK calls don't count against your raw_data_call quota.

Web scrape

fetch_url uses BYOK Firecrawl → Apify → native fetch. Premium scrape gives clean Markdown + anti-bot bypass.

DataForSEO

Composite credential (login:password). All dataforseo_* tools route through your account, no pooled metering.

Investor enrichment

Apollo, People Data Labs — accepted into storage encrypted, dispatcher not yet wired. Coming soon.

Integrations

Webhooks

Receive POSTs when audits finalize, outcomes are recorded, or new entities are discovered. Standard HMAC-SHA256 signature verification.

Headers we send

  • Content-Type: application/json
  • X-Ideaudit-Event — one of audit.finalized, audit.outcome.recorded, entity.created.
  • X-Ideaudit-Signature: sha256=<hex> — see below.
  • X-Ideaudit-Endpoint: <uuid> — your endpoint id, for routing on multi-endpoint receivers.

Verifying signatures (Node)

The signature is HMAC-SHA256(secret, raw_request_body) as a hex string, prefixed with sha256=. Verify against the raw bytes of the body — never the re-serialized JSON.

ts
import { createHmac, timingSafeEqual } from 'node:crypto';

export function verify(secret: string, signatureHeader: string, rawBody: string): boolean {
  const expected = 'sha256=' + createHmac('sha256', secret).update(rawBody).digest('hex');
  const a = Buffer.from(signatureHeader);
  const b = Buffer.from(expected);
  if (a.length !== b.length) return false;
  return timingSafeEqual(a, b);
}

Verifying signatures (Python)

python
import hmac, hashlib

def verify(secret: str, signature_header: str, raw_body: bytes) -> bool:
    expected = "sha256=" + hmac.new(
        secret.encode(), raw_body, hashlib.sha256
    ).hexdigest()
    return hmac.compare_digest(expected, signature_header)

Test events

The dashboard's “Test” button uses your most recent finalized audit's id (or zero-UUID if you have none) and adds isTest: true to the payload. Branch on it in your receiver to skip side-effects.

Auto-disable

After 5 consecutive non-2xx responses we flip active = false and surface the endpoint with an Auto-disabled badge. Click Re-enable on Settings → Webhooks once you've fixed the receiver. Recent delivery history (status + response body) is shown in an expandable panel per endpoint.

Headless

POST /api/audit/run

Run an audit without Claude Desktop. Streams the same Server-Sent Events the dashboard consumes — perfect for CI checks, batch evaluations, or embedding inside another product.

Authenticate as a dashboard user with a Bearer JWT from inite-auth (auth.inite.ai). This endpoint is not on the MCP API-key surface — it sits behind the same auth as the rest of the dashboard. The body bundles the user prompt, the Anthropic API key Claude should spend, and the user's own INITE Studio MCP key so the orchestrator can persist results.

bash
curl -N https://api.inite.studio/api/audit/run \
  -H "Authorization: Bearer $INITE_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "audit this idea: an AI note-taking app for lawyers",
    "anthropicKey": "sk-ant-...",
    "ideauditKey": "ideaudit_...",
    "model": "claude-sonnet-5"
  }'

Stream events

  • event: text — Claude's incremental tokens.
  • event: tool — when an MCP tool fires ({ toolName, input }).
  • event: done — terminal event; payload includes the auditId if the orchestrator called save_audit. Look up the full report at GET /api/audits/<id>.
  • event: error — anything thrown server-side. Includes a requestId outside production.
Reference

MCP tool catalogue

42 tools across 8 groups. Skills call them automatically; you can also invoke directly for custom flows. Probe the live registry at GET /mcp/tools with a bearer token.

Audit persistence
Save audits, lens outputs, finalised reports.
6 tools
save_auditsave_lens_outputfinalize_auditlist_auditsget_auditdelete_audit
Idea collections
Persist scored portfolios from rate-idea-collection.
3 tools
save_idea_collectionlist_idea_collectionsget_idea_collection
Investor lists
Upload + fetch investor CSVs for matching.
3 tools
upload_investor_listlist_investor_listsfetch_investor_list
Raw data — DataForSEO
Google SERP, Trends, Keyword Overview, app stores, Amazon. BYOK respected.
7 tools
dataforseo_serpdataforseo_trendsdataforseo_keyword_overviewdataforseo_search_intentdataforseo_app_storedataforseo_play_storedataforseo_amazon
Web search & scrape
BYOK-aware: Perplexity, Tavily, Exa, Brave for search; Firecrawl, Apify for scrape.
3 tools
web_searchfetch_urlextract_pitch_deck
Query builders (free)
Pre-baked SERP query templates for funding / hiring / news / site.
5 tools
list_funding_querieslist_hiring_querieslist_news_querieslist_site_queriesbatch_site_serp
Pure math
Deterministic compute — no API calls. 12 signal functions + composites.
12 tools
compute_search_velocitycompute_barriercompute_monetizationcompute_social_paincompute_x_signalcompute_budget_proofcompute_hiring_demandcompute_funding_momentumcompute_urgency_compositecompute_build_complexitycompute_lrs_compositecompute_collection_scores
Convenience & metering
Canned orchestration + observability.
3 tools
enrich_ideaget_usagecheck_quota
Mental model

What runs where

Your machine: Claude Desktop / Code / SDK. The 26 skills + your reasoning + your tokens. None of that hits us.

Our MCP server: zero LLM API keys. Hono + Drizzle + Postgres. Every endpoint is either raw data fetcher (DataForSEO, Perplexity, etc), pure math (12 deterministic compute_* functions), or persistence (audits, collections, investor lists).

Pooled / BYOK: each raw data tool tries your stored key first, falls back to our pooled credentials. Pooled calls cost us money and burn quota; BYOK calls are free and unlimited for you.

No telemetry on your prompts: we only see the parameters of MCP calls (e.g. a SERP keyword, a site URL). Your conversation with Claude is invisible to us by design.

Help

Troubleshooting

Claude says “no MCP server named ideaudit”+
Restart Claude Desktop fully (cmd+Q, not just close). On Linux check the daemon is restarted. Verify the config path matches the OS-specific location and that it is valid JSON.
MCP requests return 401 missing_bearer+
The Authorization header was stripped. Double-check the Bearer prefix and that your key starts with ideaudit_. Revoke + regenerate if unsure.
raw_data_quota_exceeded+
Your monthly raw-data cap was hit. Upgrade in Billing or add a BYOK key in Data sources — BYOK calls don't count against quota.
Audit didn't land in the dashboard+
Skills only persist on finalize_audit. If Claude errored mid-pipeline, the partial run won't appear. Re-run with “finish the audit and save it”.
Report a problem