ideaudit
The scoring behind an audit allowed to say no. Twenty deterministic tools, offline, no account.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (5)
- HIGH
- MEDIUMin compute_build_complexity
- LOWin compute_lrs_composite
- LOWin compute_multi_source_tam
- LOWin compute_urgency_composite
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"ideaudit-tools": {
"command": "npx",
"args": [
"@inite/ideaudit-tools"
]
}
}
}Ausführbare Pakete
1.0.0stdioRemote-Endpunkte
https://api.inite.studio/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (21)
🟢get_started
What this server is, what it will do for you right now without an account, and what an account adds. Call this first if you have no API key — it answers in one round trip instead of sending you to a website.
Eingabe-Schema
{
"type": "object",
"properties": {},
"required": []
}🟢compute_barrier(directCompetitorCount, adjacentCompetitorCount, serpNoise)
Compute barrier_score (0-24) + label (PRISTINE/OPEN/COMPETITIVE/CROWDED) from competitor counts + SERP noise fraction.
Eingabe-Schema
{
"type": "object",
"properties": {
"directCompetitorCount": {
"type": "integer",
"minimum": 0
},
"adjacentCompetitorCount": {
"type": "integer",
"minimum": 0,
"default": 0
},
"serpNoise": {
"type": "number",
"minimum": 0,
"maximum": 1,
"default": 0
}
},
"required": [
"directCompetitorCount"
]
}🟢compute_budget_proof(pricingHitsCount, reviewSiteHitsCount, purchaseIntentMentions, hasNamedPricing)
Compute budget_proof_score (0-10) + label (STRONG/CONFIRMED/WEAK/ABSENT) + purchase_intent_pct from pricing hits + review-site hits + intent mentions.
Eingabe-Schema
{
"type": "object",
"properties": {
"pricingHitsCount": {
"type": "integer",
"minimum": 0
},
"reviewSiteHitsCount": {
"type": "integer",
"minimum": 0
},
"purchaseIntentMentions": {
"type": "integer",
"minimum": 0
},
"hasNamedPricing": {
"type": "boolean"
}
},
"required": [
"pricingHitsCount"
]
}🟢compute_build_complexity(externalApisCount, stackComplexityTags, integrationsCount)
Compute build_complexity_penalty (0-10, higher = worse) + per-factor breakdown. Hard tags: ml/realtime/blockchain/hardware/compliance/custom-ai/regulated/on-device-ai/iot.
Eingabe-Schema
{
"type": "object",
"properties": {
"externalApisCount": {
"type": "integer",
"minimum": 0
},
"stackComplexityTags": {
"type": "array",
"items": {
"type": "string"
}
},
"integrationsCount": {
"type": "integer",
"minimum": 0
}
},
"required": [
"externalApisCount"
]
}🟢compute_collection_scores(analysisId, enrichedData)
Compute 12 deterministic collection scores (0-100) + badges + death reason for an enriched idea. Pure math. No external calls.
Eingabe-Schema
{
"type": "object",
"properties": {
"analysisId": {
"type": "string"
},
"enrichedData": {
"type": "object",
"description": "EnrichedData with canonical_idea signals."
}
},
"required": [
"analysisId",
"enrichedData"
]
}🟢compute_crossed_matrix(stage, sector, lensScores, stageProbabilities, unresolvedContradictions, ...)
Crossed-product audit explorer. Same input as compute_dealbreakers_v2 — returns substrate verdict (no-observer baseline) + crossed verdict (when observer supplied) + a 5-row matrix of {solo, cofounded_technical, cofounded_business, domain_expert, serial} archetype verdicts. Never persists; meant for the dashboard "view as [archetype]" dropdown and for previewing a verdict before committing to it.
Eingabe-Schema
{
"type": "object",
"properties": {
"stage": {
"type": "string",
"enum": [
"idea",
"mvp",
"seed",
"series_a_plus"
]
},
"sector": {
"type": "string"
},
"lensScores": {
"type": "array",
"items": {
"type": "object",
"required": [
"lens",
"score",
"confidence"
],
"properties": {
"lens": {
"type": "string",
"enum": [
"team",
"problem_solution",
"traction",
"competition",
"gtm",
"finance"
]
},
"score": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"redFlag": {
"type": "boolean"
}
}
}
},
"stageProbabilities": {
"type": "object",
"properties": {
"idea": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"mvp": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"seed": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"series_a_plus": {
"type": "number",
"minimum": 0,
"maximum": 1
}
}
},
"unresolvedContradictions": {
"type": "integer",
"minimum": 0,
"default": 0
},
"hasMajorContradiction": {
"type": "boolean",
"default": false
},
"observer": {
"type": "object",
"description": "Founder profile that crosses with the substrate idea to produce an observer-relative verdict. When omitted, only the substrate verdict is returned.",
"required": [
"founder_type"
],
"properties": {
"founder_type": {
"type": "string",
"enum": [
"solo",
"cofounded_technical",
"cofounded_business",
"domain_expert",
"serial"
]
},
"runway_months": {
"type": "integer",
"minimum": 0,
"maximum": 60
},
"capital_usd_band": {
"type": "string",
"enum": [
"under_50k",
"50k_500k",
"500k_5m",
"over_5m"
]
},
"risk_tolerance": {
"type": "string",
"enum": [
"conservative",
"moderate",
"aggressive"
]
},
"expertise_sectors": {
"type": "array",
"maxItems": 8,
"items": {
"type": "string",
"minLength": 2,
"maxLength": 80
}
},
"time_horizon_years": {
"type": "integer",
"minimum": 1,
"maximum": 15
},
"exit_goal": {
"type": "string",
"enum": [
"lifestyle",
"acquisition",
"ipo",
"unicorn"
]
}
}
}
},
"required": [
"stage",
"lensScores"
]
}🟢compute_dealbreakers_v2(stage, sector, lensScores, stageProbabilities, unresolvedContradictions, ...)
Methodology v2 dealbreakers — stage-aware weights + confidence-weighted lens scoring + risk-asymmetric verdict (GO requires score≥80 AND zero red flags AND avg confidence≥0.6). Optional `observer` triggers the crossed-product pipeline: substrate verdict (no-observer baseline) PLUS crossed verdict (observer-perturbed weights, risk-tolerance shifted thresholds) PLUS 5-row archetype matrix. The KILL gate (≥2 blockers / score<50) is observer-invariant — fatal stays fatal.
Eingabe-Schema
{
"type": "object",
"properties": {
"stage": {
"type": "string",
"enum": [
"idea",
"mvp",
"seed",
"series_a_plus"
]
},
"sector": {
"type": "string"
},
"lensScores": {
"type": "array",
"items": {
"type": "object",
"required": [
"lens",
"score",
"confidence"
],
"properties": {
"lens": {
"type": "string",
"enum": [
"team",
"problem_solution",
"traction",
"competition",
"gtm",
"finance"
]
},
"score": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"redFlag": {
"type": "boolean"
}
}
}
},
"stageProbabilities": {
"type": "object",
"properties": {
"idea": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"mvp": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"seed": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"series_a_plus": {
"type": "number",
"minimum": 0,
"maximum": 1
}
}
},
"unresolvedContradictions": {
"type": "integer",
"minimum": 0,
"default": 0
},
"hasMajorContradiction": {
"type": "boolean",
"default": false
},
"observer": {
"type": "object",
"description": "Founder profile that crosses with the substrate idea to produce an observer-relative verdict. When omitted, only the substrate verdict is returned.",
"required": [
"founder_type"
],
"properties": {
"founder_type": {
"type": "string",
"enum": [
"solo",
"cofounded_technical",
"cofounded_business",
"domain_expert",
"serial"
]
},
"runway_months": {
"type": "integer",
"minimum": 0,
"maximum": 60
},
"capital_usd_band": {
"type": "string",
"enum": [
"under_50k",
"50k_500k",
"500k_5m",
"over_5m"
]
},
"risk_tolerance": {
"type": "string",
"enum": [
"conservative",
"moderate",
"aggressive"
]
},
"expertise_sectors": {
"type": "array",
"maxItems": 8,
"items": {
"type": "string",
"minLength": 2,
"maxLength": 80
}
},
"time_horizon_years": {
"type": "integer",
"minimum": 1,
"maximum": 15
},
"exit_goal": {
"type": "string",
"enum": [
"lifestyle",
"acquisition",
"ipo",
"unicorn"
]
}
}
}
},
"required": [
"stage",
"lensScores"
]
}🟢compute_funding_momentum(hitsByTier, recent30dHits)
Compute funding_momentum_score (0-10) + badge (HOT/WARM/COOL/COLD) from tier-weighted funding-article hit counts.
Eingabe-Schema
{
"type": "object",
"properties": {
"hitsByTier": {
"type": "object",
"properties": {
"tier_1": {
"type": "integer",
"minimum": 0
},
"presswire": {
"type": "integer",
"minimum": 0
},
"regional": {
"type": "integer",
"minimum": 0
},
"vertical": {
"type": "integer",
"minimum": 0
}
}
},
"recent30dHits": {
"type": "integer",
"minimum": 0
}
},
"required": [
"hitsByTier"
]
}🟢compute_hiring_demand(sites)
Compute hiring_demand_score (0-10) from priority-weighted ATS site hit counts (use registries/hiring-sources for priorities).
Eingabe-Schema
{
"type": "object",
"properties": {
"sites": {
"type": "array",
"items": {
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"hits": {
"type": "integer",
"minimum": 0
},
"priority": {
"type": "integer",
"enum": [
1,
2,
3
]
}
},
"required": [
"domain",
"hits",
"priority"
]
}
}
},
"required": [
"sites"
]
}🟢compute_lrs_composite_v2(searchVelocityScore, socialPainScore, barrierScore, monetizationScore, xSignalScore, ...)
LRS composite v2 — 6 components (SV, Pain, Barrier, Monet, X-Signal, Budget-Proof). Default Python weights 0.18/0.22/0.18/0.14/0.18/0.10 sum=1.0. Returns BOTH weighted score and equal-weight baseline (per OECD Handbook + Greco 2018 — equal-weight is defensible default when no outcome calibration exists). buildComplexityPenalty 0-10 subtracted from score. sectorProfile (ai_native/creator/crypto) opt-in reshuffles SV→0.16, X→0.20. Labels: THE_ROAR (≥80) / PROMISING (≥60) / EXPERIMENTAL (≥40) / WEAK_SIGNAL (<40).
Eingabe-Schema
{
"type": "object",
"properties": {
"searchVelocityScore": {
"type": "number",
"minimum": 0,
"maximum": 25
},
"socialPainScore": {
"type": "number",
"minimum": 0,
"maximum": 30
},
"barrierScore": {
"type": "number",
"minimum": 0,
"maximum": 24
},
"monetizationScore": {
"type": "number",
"minimum": 0,
"maximum": 21
},
"xSignalScore": {
"type": "number",
"minimum": 0,
"maximum": 20
},
"budgetProofScore": {
"type": "number",
"minimum": 0,
"maximum": 10
},
"buildComplexityPenalty": {
"type": "number",
"minimum": 0,
"maximum": 10
},
"sectorProfile": {
"type": "string",
"enum": [
"default",
"ai_native",
"creator",
"crypto"
],
"description": "Opt-in sector weight override. Default uses Python canonical weights."
}
},
"required": [
"searchVelocityScore",
"socialPainScore",
"barrierScore",
"monetizationScore",
"xSignalScore",
"budgetProofScore"
]
}🟢compute_lrs_composite(searchVelocityScore, socialPainScore, barrierScore, monetizationScore)
Compose lrs_final_100 (0-100) + label (WEAK/EMERGING/GOOD/STRONG/ELITE) + leaderboard_eligible flag + sub-percent breakdown. Weights: sv 0.25, sp 0.30, barrier 0.25, monetization 0.20.
Eingabe-Schema
{
"type": "object",
"properties": {
"searchVelocityScore": {
"type": "number",
"minimum": 0,
"maximum": 25
},
"socialPainScore": {
"type": "number",
"minimum": 0,
"maximum": 30
},
"barrierScore": {
"type": "number",
"minimum": 0,
"maximum": 24
},
"monetizationScore": {
"type": "number",
"minimum": 0,
"maximum": 21
}
},
"required": [
"searchVelocityScore",
"socialPainScore",
"barrierScore",
"monetizationScore"
]
}🟢compute_monetization(pricingAnchorsCount, modelTags, dealCycle)
Compute monetization_score (0-21) + label + has_pricing_anchors from pricing anchors + model tags + deal cycle hint.
Eingabe-Schema
{
"type": "object",
"properties": {
"pricingAnchorsCount": {
"type": "integer",
"minimum": 0
},
"modelTags": {
"type": "array",
"items": {
"type": "string"
},
"description": "e.g. [\"subscription\",\"usage\",\"marketplace\"]"
},
"dealCycle": {
"type": "string",
"description": "instant/days/weeks/months/quarters"
}
},
"required": [
"pricingAnchorsCount"
]
}🟢compute_multi_source_tam(inputs)
Multi-source TAM consensus. Pass 2-3 sources of market-size text. Optional `estimateYear` per source — when supplied, the result includes yearRange and a hasStaleData flag (true if the span exceeds 5 years). Outliers are dropped by modified Z-score over the median absolute deviation when n≥4. Returns the extracted dollar amounts + consensus median + an agreement score 0..1, where 1 means every source lands within 20% of the median.
Eingabe-Schema
{
"type": "object",
"properties": {
"inputs": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"text"
],
"properties": {
"source": {
"type": "string"
},
"text": {
"type": "string"
},
"estimateYear": {
"type": "integer",
"minimum": 1990,
"maximum": 2100,
"description": "Optional: year the estimate was published."
}
}
}
}
},
"required": [
"inputs"
]
}🟢compute_ppc_spend_signal(avgCpcUsd, totalMonthlySpendUsd, competitorBidders, competition)
Wave 5 N.4 — compute ppc_spend_score (0-10) + label (STRONG/CONFIRMED/WEAK/ABSENT) + market_saturation from PPC traffic projection (avgCpcUsd, totalMonthlySpendUsd, optional competitorBidders + competition). Feed numbers from dataforseo_ad_traffic.
Eingabe-Schema
{
"type": "object",
"properties": {
"avgCpcUsd": {
"type": "number",
"minimum": 0
},
"totalMonthlySpendUsd": {
"type": "number",
"minimum": 0
},
"competitorBidders": {
"type": "integer",
"minimum": 0
},
"competition": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"avgCpcUsd",
"totalMonthlySpendUsd"
]
}🟢compute_search_velocity_v2(trendsTimelineValues, externalVolumeNorm, intentNorm, geoSpreadNorm, daysSinceLastSignal)
Search velocity (0-25) v2 — canonical 0.40*volume + 0.30*trend + 0.20*intent + 0.10*geo. CRITICAL: externalVolumeNorm MUST come from external sources (Amazon BSR / app store installs / job-board postings) — NOT the Trends timeline (would double-count, since Trends is itself normalized 0-100 within window). trendNorm is derived internally from trendsTimelineValues. Trends peak<50 zeroes the trend component (Yotpo SEO floor). Optional daysSinceLastSignal applies exponential freshness decay (search half-life 90d).
Eingabe-Schema
{
"type": "object",
"properties": {
"trendsTimelineValues": {
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"description": "Monthly Trends values 0-100. Used ONLY to derive trendNorm — never as raw volume."
},
"externalVolumeNorm": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Normalized 0-1 demand volume from EXTERNAL sources (Amazon, app stores, jobs). Caller normalizes before passing."
},
"intentNorm": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "0-1 commercial/transactional intent ratio."
},
"geoSpreadNorm": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "0-1 geographic spread (regions with interest > threshold)."
},
"daysSinceLastSignal": {
"type": "number",
"minimum": 0,
"description": "Optional: days since most recent confirming signal. Triggers exponential freshness decay (half-life 90d)."
}
},
"required": [
"trendsTimelineValues",
"externalVolumeNorm",
"intentNorm",
"geoSpreadNorm"
]
}🟢compute_search_velocity(timelineValues, risingQueriesCount, geoRegionCount)
Compute search_velocity_score (0-25) from Trends timeline values + rising queries count + geo region count.
Eingabe-Schema
{
"type": "object",
"properties": {
"timelineValues": {
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"description": "Monthly Trends values 0-100 (e.g. last 10-12 months)."
},
"risingQueriesCount": {
"type": "integer",
"minimum": 0
},
"geoRegionCount": {
"type": "integer",
"minimum": 0
}
},
"required": [
"timelineValues"
]
}🟢compute_social_pain(painMentions, intentMentions, urgencyMentions, categoryCounts)
Compute social_pain_score (0-30) + total mentions + dominant perspective (business/consumer/trend/mixed).
Eingabe-Schema
{
"type": "object",
"properties": {
"painMentions": {
"type": "integer",
"minimum": 0
},
"intentMentions": {
"type": "integer",
"minimum": 0,
"default": 0
},
"urgencyMentions": {
"type": "integer",
"minimum": 0,
"default": 0
},
"categoryCounts": {
"type": "object",
"properties": {
"business": {
"type": "integer",
"minimum": 0
},
"consumer": {
"type": "integer",
"minimum": 0
},
"trend": {
"type": "integer",
"minimum": 0
}
}
}
},
"required": [
"painMentions"
]
}🟢compute_urgency_composite(newsSignalScore, painSignalScore, hiringSignalScore)
Compose composite_urgency_score (0-10) + badge (LOW/MEDIUM/HIGH/VERY_HIGH/EXTREME) from 3 sub-scores: news, pain, hiring.
Eingabe-Schema
{
"type": "object",
"properties": {
"newsSignalScore": {
"type": "number",
"minimum": 0,
"maximum": 10
},
"painSignalScore": {
"type": "number",
"minimum": 0,
"maximum": 10
},
"hiringSignalScore": {
"type": "number",
"minimum": 0,
"maximum": 10
}
},
"required": [
"newsSignalScore",
"painSignalScore",
"hiringSignalScore"
]
}🟢compute_x_signal(mentionsCount, recent7dCount, sentimentPositive, sentimentNegative, founderMentions)
Compute x_signal_score (0-20) + recency share + positivity rate from X/Twitter mention counts.
Eingabe-Schema
{
"type": "object",
"properties": {
"mentionsCount": {
"type": "integer",
"minimum": 0
},
"recent7dCount": {
"type": "integer",
"minimum": 0
},
"sentimentPositive": {
"type": "integer",
"minimum": 0
},
"sentimentNegative": {
"type": "integer",
"minimum": 0
},
"founderMentions": {
"type": "integer",
"minimum": 0
}
},
"required": [
"mentionsCount"
]
}🟢derive_kill_criteria(unitEcon, dealbreakers, icpDriftCount)
Derive a falsifiable, data-driven list of kill criteria from upstream signals — the outputs of validate_unit_economics and compute_dealbreakers_v2, plus an ICP drift count. Returns one row per rule with {rule, threshold, status, evidence?}, where status is tripped_now / monitor / cleared. Replaces prose kill criteria, which are tautologies that can never fire.
Eingabe-Schema
{
"type": "object",
"properties": {
"unitEcon": {
"type": "object",
"description": "The result of validate_unit_economics."
},
"dealbreakers": {
"type": "object",
"description": "The result of compute_dealbreakers_v2."
},
"icpDriftCount": {
"type": "integer",
"minimum": 0
}
},
"required": []
}🟢validate_unit_economics(customers, arpu, annualRevenue, monthlyChurn, cac, ...)
Sanity-check a unit-economics row before publishing it in a business-model slide. Catches the math-drift class of failures (customers × ARPU ≠ revenue), enforces the LTV/CAC ≥ 1.5 floor, the cohort-positivity check, and CAC payback bounds. Returns {ok, errors[{rule, severity, detail}], derived{ratios}}. Skills MUST regenerate the row when ok=false (block-severity errors); warn-severity errors should be surfaced in the final report but do not gate publication. No LLM calls.
Eingabe-Schema
{
"type": "object",
"properties": {
"customers": {
"type": "number"
},
"arpu": {
"type": "number"
},
"annualRevenue": {
"type": "number"
},
"monthlyChurn": {
"type": "number"
},
"cac": {
"type": "number"
},
"ltv": {
"type": "number"
},
"grossMargin": {
"type": "number"
}
},
"required": [
"customers",
"arpu",
"annualRevenue"
]
}Community
Nachweis