MCP 服务器

discovery

com.peopleanalyst/discovery
数据与分析 知识与文档 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Provides people-analytics research, evidence catalogs, authored guidance, data-story planning, and deterministic behavioral segmentation.

get_answer
Get a query-shaped answer
Returns one authored /answers page as structured content: question, markdown answer body (short answer, problem frame, evidence, grounded sources), and citations with libraryId or url. Known slugs (33): measure-employee-performance, survey-validity-check, people-analytics-program-maturity, people-analytics-vs-hr-reporting, engagement-survey-vs-listening-diagnostic, people-analytics-tools-compare, beyond-annual-engagement-survey, replace-gut-feel-talent-decisions, ….
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Answer slug from the query map (e.g. survey-validity-check).'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug', 'title', 'canonicalUrl', 'question', 'answer', 'citations', 'updatedAt'], 'properties': {'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'answer': {'type': 'string'}, 'question': {'type': 'string'}, 'citations': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'url': {'type': 'string'}, 'title': {'type': 'string'}, 'libraryId': {'type': 'string'}}, 'additionalProperties': False}}, 'updatedAt': {'type': 'string'}, 'canonicalUrl': {'type': 'string'}}, 'additionalProperties': False}
get_brandscripts
Per-persona StoryBrand arguments for each product
Per-persona StoryBrand arguments for each product. The persona × goal argument layer (SB7-shaped). Stable ?id is globally exact; ?product + ?persona + ?variant selects one exact scoped variant, while ?variant alone remains a compatible filter. Live is the default; ?status=draft|all opts into authoring records with capability readiness kept separate.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string', 'description': 'Select one stable BrandScript id exactly.'}, 'status': {'enum': ['live', 'draft', 'all'], 'type': 'string', 'description': 'live (default) | draft | all.'}, 'persona': {'type': 'string', 'description': 'Filter to one persona slug.'}, 'product': {'type': 'string', 'description': "Filter to one product's arguments."}, 'variant': {'type': 'string', 'description': 'Stable goal variant scoped to product + persona; use all three to select exactly.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'filter', 'count', 'brandscripts'], 'properties': {'count': {'type': 'number'}, 'filter': {'type': 'object', 'required': ['product', 'persona', 'variant', 'id', 'status'], 'properties': {'id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'persona': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'product': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'variant': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'contract': {'type': 'string'}, 'brandscripts': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'variant', 'variantExplicit', 'primary', 'product', 'persona', 'personaLabel', 'status', 'logline', 'character', 'problem', 'guide', 'plan', 'callToAction', 'success', 'failure', 'products', 'cards', 'navLabel', 'teaser', 'seo', 'order', 'proves', 'stories', 'problemTags'], 'properties': {'id': {'type': 'string'}, 'seo': {'type': 'object', 'required': ['metaTitle', 'metaDescription'], 'properties': {'metaTitle': {'type': 'string'}, 'metaDescription': {'type': 'string'}}, 'additionalProperties': False}, 'plan': {'type': 'array', 'items': {'type': 'string'}}, 'cards': {'type': 'array', 'items': {'type': 'string'}}, 'guide': {'type': 'object', 'required': ['empathy', 'authority'], 'properties': {'empathy': {'type': 'string'}, 'authority': {'type': 'string'}}, 'additionalProperties': False}, 'order': {'type': 'number'}, 'proves': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'navLabel', 'customerPitch'], 'properties': {'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'navLabel': {'type': 'string'}, 'customerPitch': {'type': 'string'}}, 'additionalProperties': False}}, 'status': {'enum': ['live', 'draft'], 'type': 'string'}, 'teaser': {'type': 'string'}, 'failure': {'type': 'string'}, 'journey': {'type': 'object', 'required': ['id', 'facet', 'intent', 'goal', 'goalProvenance', 'personaRef', 'problemRefs', 'problemRefStatus', 'editorialStatus', 'capabilityReadiness', 'action', 'sourceRefs'], 'properties': {'id': {'type': 'string'}, 'goal': {'type': 'string'}, 'facet': {'enum': ['public', 'job-assist', 'enterprise', 'research'], 'type': 'string'}, 'action': {'oneOf': [{'type': 'object', 'required': ['availability', 'label', 'href'], 'properties': {'href': {'type': 'string'}, 'label': {'type': 'string'}, 'availability': {'type': 'string', 'const': 'available'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['availability', 'label'], 'properties': {'label': {'type': 'string'}, 'availability': {'type': 'string', 'const': 'intended'}}, 'additionalProperties': False}]}, 'intent': {'type': 'string'}, 'personaRef': {'oneOf': [{'type': 'object', 'required': ['status', 'slug', 'libraryId', 'canonicalPersonaId', 'sourcePersonaLabel', 'sourcePersonaScope', 'roleIdentityEvidence', 'jobRefs', 'sourceContract', 'observedAt'], 'properties': {'slug': {'type': 'string'}, 'status': {'type': 'string', 'const': 'resolved'}, 'jobRefs': {'type': 'array', 'items': {'type': 'string'}}, 'libraryId': {'type': 'string'}, 'observedAt': {'type': 'string'}, 'sourceContract': {'type': 'string'}, 'canonicalPersonaId': {'type': 'string'}, 'personframeAddress': {'type': 'string'}, 'sourcePersonaLabel': {'type': 'string'}, 'sourcePersonaScope': {'type': 'string'}, 'roleIdentityEvidence': {'type': 'string', 'const': 'matched-public-persona-record'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'requestedRole', 'reason', 'reconciliation', 'sourceContract', 'observedAt'], 'properties': {'reason': {'type': 'string'}, 'status': {'type': 'string', 'const': 'unresolved'}, 'observedAt': {'type': 'string'}, 'requestedRole': {'type': 'string'}, 'reconciliation': {'type': 'string'}, 'sourceContract': {'type': 'string'}}, 'additionalProperties': False}]}, 'sourceRefs': {'type': 'array', 'items': {'type': 'string'}}, 'problemRefs': {'type': 'array', 'items': {'type': 'object', 'required': ['address', 'edition'], 'properties': {'slot': {'enum': ['villain', 'external', 'internal', 'philosophical'], 'type': 'string'}, 'slug': {'type': 'string'}, 'address': {'type': 'string'}, 'edition': {'type': 'string', 'const': 'v1'}}, 'additionalProperties': False}}, 'goalProvenance': {'type': 'object', 'required': ['source', 'personaLibraryGoalValidated'], 'properties': {'source': {'type': 'string', 'const': 'mike-approved-jobframe-intent'}, 'personaLibraryGoalValidated': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}, 'editorialStatus': {'enum': ['live', 'draft'], 'type': 'string'}, 'problemRefStatus': {'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'resolved'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'reason', 'reconciliation'], 'properties': {'reason': {'type': 'string'}, 'status': {'type': 'string', 'const': 'unresolved'}, 'reconciliation': {'type': 'string'}}, 'additionalProperties': False}]}, 'capabilityReadiness': {'enum': ['available', 'partial', 'in-development', 'planned', 'future', 'design-only'], 'type': 'string'}}, 'additionalProperties': False}, 'logline': {'type': 'string'}, 'persona': {'type': 'string'}, 'primary': {'type': 'boolean'}, 'problem': {'type': 'object', 'required': ['external', 'internal', 'philosophical'], 'properties': {'external': {'type': 'string'}, 'internal': {'type': 'string'}, 'philosophical': {'type': 'string'}}, 'additionalProperties': False}, 'product': {'type': 'string'}, 'stories': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'logline', 'occasion', 'problemTags'], 'properties': {'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'logline': {'type': 'string'}, 'occasion': {'type': 'string'}, 'problemTags': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'success': {'type': 'string'}, 'variant': {'type': 'string'}, 'navLabel': {'type': 'string'}, 'products': {'type': 'array', 'items': {'type': 'string'}}, 'character': {'type': 'string'}, 'problemTags': {'type': 'array', 'items': {'type': 'string'}}, 'callToAction': {'type': 'object', 'required': ['direct'], 'properties': {'direct': {'type': 'string'}, 'transitional': {'type': 'string'}}, 'additionalProperties': False}, 'personaLabel': {'type': 'string'}, 'variantExplicit': {'type': 'boolean'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
get_canonical_forms
The canonical form vocabulary — the structural primitive
The canonical form vocabulary — the structural primitive. 7 data shapes and the 33 canonical forms they resolve to. The form is why one engine reads compensation, attrition, funnels and survey data without a per-domain rewrite: the domain is in the metric tag, the structure is here. 'oftenMeans' is a labelled heuristic, never a conclusion.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'shape': {'enum': ['series', 'groups', 'distribution', 'pairs', 'funnel', 'composition', 'dist_over_time'], 'type': 'string', 'description': 'Filter to one shape.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'note', 'filter', 'shapes', 'count', 'forms'], 'properties': {'note': {'type': 'string'}, 'count': {'type': 'number'}, 'forms': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'shape', 'name', 'looksLike', 'oftenMeans', 'shapeName', 'shapeQuestion', 'sceneCount'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'shape': {'type': 'string'}, 'looksLike': {'type': 'string'}, 'shapeName': {'type': 'string'}, 'oftenMeans': {'type': 'string'}, 'sceneCount': {'type': 'number'}, 'shapeQuestion': {'type': 'string'}}, 'additionalProperties': False}}, 'filter': {'type': 'object', 'required': ['shape', 'shapeRecognized'], 'properties': {'shape': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'shapeRecognized': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'shapes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'question'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'question': {'type': 'string'}}, 'additionalProperties': False}}, 'contract': {'type': 'string'}}, 'additionalProperties': False}
get_claim_warrant
How many works discuss a claim — discourse volume, with the works named
How many works discuss a claim — discourse volume, with the works named. For a construct pair mined from the book corpus: how many distinct works discuss the link, and which ones, with each work's stated rationale. ⚠ This is DISCOURSE, not evidence — book frequency is confounded by publication incentives, fashion and citation cascades, so it is reported as 'discussed in N works' and never as corroboration, confidence, or a score. Single-work claims are returned, labelled as such; corroboration is not a gate. No query returns corpus-level stats including a counting discrepancy we state openly.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'to': {'type': 'string', 'description': 'Target construct, e.g. employee_turnover. Use with `from`.'}, 'from': {'type': 'string', 'description': 'Source construct, e.g. employee_engagement. Use with `to`.'}, 'focus': {'type': 'string', 'description': 'Discourse volume for one focus area.'}, 'construct': {'type': 'string', 'description': 'Every pair the corpus links this construct to, most-discussed first.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'caveat'], 'properties': {'count': {'type': 'number'}, 'found': {'type': 'boolean'}, 'label': {'type': 'string'}, 'pairs': {'type': 'array', 'items': {'type': 'object', 'required': ['from', 'to', 'relation', 'direction', 'focus', 'archetype', 'tier', 'discussedInWorks', 'works', 'label'], 'properties': {'to': {'type': 'string'}, 'from': {'type': 'string'}, 'tier': {'type': 'number'}, 'focus': {'type': 'string'}, 'label': {'type': 'string'}, 'works': {'type': 'array', 'items': {'type': 'object', 'required': ['libraryId', 'title', 'author', 'year', 'rationale', 'resolvedFromLibrary', 'citation'], 'properties': {'year': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'author': {'type': 'string'}, 'citation': {'type': 'string'}, 'libraryId': {'type': 'string'}, 'rationale': {'type': 'string'}, 'resolvedFromLibrary': {'type': 'boolean'}}, 'additionalProperties': False}}, 'relation': {'type': 'string'}, 'archetype': {'type': 'string'}, 'direction': {'type': 'string'}, 'discussedInWorks': {'type': 'number'}}, 'additionalProperties': False}}, 'query': {'type': 'object', 'properties': {'to': {'type': 'string'}, 'from': {'type': 'string'}, 'focus': {'type': 'string'}, 'construct': {'type': 'string'}}, 'additionalProperties': False}, 'stats': {'type': 'object', 'required': ['pairs', 'constructs', 'works', 'pairsOnOneWork', 'pairsOnTwoOrMoreWorks', 'storedTwoPlusTotal'], 'properties': {'pairs': {'type': 'number'}, 'works': {'type': 'number'}, 'constructs': {'type': 'number'}, 'pairsOnOneWork': {'type': 'number'}, 'storedTwoPlusTotal': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'pairsOnTwoOrMoreWorks': {'type': 'number'}}, 'additionalProperties': False}, 'caveat': {'type': 'string'}, 'warrant': {'anyOf': [{'type': 'object', 'required': ['from', 'to', 'relation', 'direction', 'focus', 'archetype', 'tier', 'discussedInWorks', 'works'], 'properties': {'to': {'type': 'string'}, 'from': {'type': 'string'}, 'tier': {'type': 'number'}, 'focus': {'type': 'string'}, 'works': {'type': 'array', 'items': {'type': 'object', 'required': ['libraryId', 'title', 'author', 'year', 'rationale', 'resolvedFromLibrary', 'citation'], 'properties': {'year': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'author': {'type': 'string'}, 'citation': {'type': 'string'}, 'libraryId': {'type': 'string'}, 'rationale': {'type': 'string'}, 'resolvedFromLibrary': {'type': 'boolean'}}, 'additionalProperties': False}}, 'relation': {'type': 'string'}, 'archetype': {'type': 'string'}, 'direction': {'type': 'string'}, 'discussedInWorks': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'contract': {'type': 'string'}, 'salience': {'anyOf': [{'type': 'object', 'required': ['focus', 'pairs', 'works', 'singleWorkPairs'], 'properties': {'focus': {'type': 'string'}, 'pairs': {'type': 'number'}, 'works': {'type': 'number'}, 'singleWorkPairs': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'statsNote': {'type': 'string'}, 'citationNote': {'type': 'string'}, 'focusSalience': {'type': 'array', 'items': {'type': 'object', 'required': ['focus', 'pairs', 'works', 'singleWorkPairs'], 'properties': {'focus': {'type': 'string'}, 'pairs': {'type': 'number'}, 'works': {'type': 'number'}, 'singleWorkPairs': {'type': 'number'}}, 'additionalProperties': False}}, 'citationCoverage': {'type': 'object', 'required': ['distinctWorks', 'resolvedInLibrary', 'withAuthor', 'withYear', 'fullyCitable'], 'properties': {'withYear': {'type': 'number'}, 'withAuthor': {'type': 'number'}, 'fullyCitable': {'type': 'number'}, 'distinctWorks': {'type': 'number'}, 'resolvedInLibrary': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}
get_insight_cards
A pitch rendered as player-ready InsightCards
A pitch rendered as player-ready InsightCards. Serves a named pitch as an ordered InsightCard[] (the cross-site insight-player contract). ?pitch selects the pitch; ?awareness optionally reshapes the sequence for the buyer's awareness state.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['pitch'], 'properties': {'pitch': {'type': 'string', 'description': 'The pitch slug to render.'}, 'awareness': {'type': 'string', 'description': 'Awareness state to reshape the sequence.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'source_app', 'audience_tags', 'topic_tags', 'freshness', 'card_type', 'headline', 'body', 'visual'], 'properties': {'id': {'type': 'string'}, 'body': {'type': 'string'}, 'reveal': {'type': 'object', 'required': ['summary'], 'properties': {'detail': {'type': 'string'}, 'summary': {'type': 'string'}}, 'additionalProperties': False}, 'visual': {'type': 'object', 'required': ['kind', 'spec'], 'properties': {'kind': {'enum': ['text', 'metric', 'trend', 'chart', 'comparison', 'callout'], 'type': 'string'}, 'spec': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}, 'headline': {'type': 'string'}, 'card_type': {'type': 'string'}, 'freshness': {'type': 'object', 'required': ['computedAt'], 'properties': {'computedAt': {'type': 'string'}, 'ttlSeconds': {'type': 'number'}}, 'additionalProperties': False}, 'source_app': {'type': 'string'}, 'topic_tags': {'type': 'array', 'items': {'type': 'string'}}, 'audience_tags': {'type': 'array', 'items': {'type': 'string'}}, 'signals_requested': {'type': 'array', 'items': {'type': 'object', 'required': ['signalId', 'prompt'], 'properties': {'prompt': {'type': 'string'}, 'signalId': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}, 'count': {'type': 'number'}, 'source': {'type': 'string'}, 'pitches': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'situation', 'audience', 'personas', 'situationTitle', 'navLabel', 'useCase', 'firstHeadline', 'href'], 'properties': {'href': {'type': 'string'}, 'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'useCase': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'audience': {'type': 'string'}, 'navLabel': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'personas': {'type': 'array', 'items': {'type': 'string'}}, 'situation': {'type': 'string'}, 'firstHeadline': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'situationTitle': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'contract': {'type': 'string'}}, 'additionalProperties': False}
get_library_ids
Library id export — stable ids for the works homed here
Library id export — stable ids for the works homed here. Batch export of library_id rows (id, title, author, year, property tags) for the works that home on peopleanalyst.com. Ids are content-addressed (SHA-256 of normalized title|authors|year) and stable across repos, so a consumer can join to this catalog without string matching. Scoped to works homed here — titles whose canonical home is another property are excluded, matching /library.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'tag': {'type': 'string', 'description': 'Filter by property tag, e.g. principia.'}, 'limit': {'type': 'string', 'description': 'Cap the number of rows returned.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['generated_at', 'issuer', 'id_format', 'spec', 'scope', 'inventory_total', 'excluded_foreign_home', 'count', 'records'], 'properties': {'spec': {'type': 'string'}, 'count': {'type': 'number'}, 'scope': {'type': 'string'}, 'issuer': {'type': 'string'}, 'records': {'type': 'array', 'items': {'type': 'object', 'required': ['library_id', 'title', 'author', 'year', 'property_tags'], 'properties': {'year': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'author': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'library_id': {'type': 'string'}, 'legacy_pa_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'property_tags': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'id_format': {'type': 'string'}, 'generated_at': {'type': 'string'}, 'inventory_total': {'type': 'number'}, 'excluded_foreign_home': {'type': 'number'}}, 'additionalProperties': False}
get_marketing_registry
The Pitboss marketing-asset registry (typed cards + personas)
The Pitboss marketing-asset registry (typed cards + personas). Cross-site marketing-asset cards built from the portfolio's brandscripts and proofs, plus the persona set. ?product filters to one product; ?status filters by lifecycle.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'status': {'type': 'string', 'description': 'Filter by lifecycle (e.g. live, draft).'}, 'product': {'type': 'string', 'description': 'Filter cards to one product.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['built_at', 'contract', 'filter', 'counts', 'cards', 'personas'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'product': {'type': 'string'}}, 'additionalProperties': {}}}, 'counts': {'type': 'object', 'required': ['cards', 'personas'], 'properties': {'cards': {'type': 'number'}, 'personas': {'type': 'number'}}, 'additionalProperties': False}, 'filter': {'type': 'object', 'required': ['product', 'status'], 'properties': {'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'product': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'built_at': {'type': 'string'}, 'contract': {'type': 'string'}, 'personas': {'type': 'array', 'items': {}}}, 'additionalProperties': False}
get_product_description
Machine-readable description of each PeopleAnalyst product
Machine-readable description of each PeopleAnalyst product. Versioned, CORS-open descriptions of every product in the portfolio — general positioning plus structured personas, goals, problems, journeys, and associated BrandScripts where the product has that canon. Assembled from source records. Pass ?product to filter; live nested journeys are the default and ?status=draft|all opts into authoring records.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'status': {'enum': ['live', 'draft', 'all'], 'type': 'string', 'description': 'Nested journey editorial status: live (default) | draft | all.'}, 'product': {'type': 'string', 'description': 'Filter to one product id (e.g. performix, anycomp, compensation-toolbox).'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'filter', 'products'], 'properties': {'count': {'type': 'number'}, 'filter': {'type': 'object', 'required': ['product', 'status'], 'properties': {'status': {'enum': ['live', 'draft', 'all'], 'type': 'string'}, 'product': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'contract': {'type': 'string'}, 'products': {'type': 'array', 'items': {'type': 'object', 'required': ['product', 'name', 'category', 'oneLiner', 'problemFrames', 'capabilities', 'beachheads', 'whenNotToUse', 'canonicalUrls', 'relatedProducts', 'personas', 'goals', 'problems', 'journeys', 'associatedScripts', 'status'], 'properties': {'name': {'type': 'string'}, 'goals': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'scriptId', 'persona', 'intent', 'goal', 'goalProvenance', 'editorialStatus', 'capabilityReadiness'], 'properties': {'id': {'type': 'string'}, 'goal': {'type': 'string'}, 'intent': {'type': 'string'}, 'persona': {'type': 'string'}, 'scriptId': {'type': 'string'}, 'goalProvenance': {'type': 'object', 'required': ['source', 'personaLibraryGoalValidated'], 'properties': {'source': {'type': 'string', 'const': 'mike-approved-jobframe-intent'}, 'personaLibraryGoalValidated': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}, 'editorialStatus': {'enum': ['live', 'draft'], 'type': 'string'}, 'capabilityReadiness': {'enum': ['available', 'partial', 'in-development', 'planned', 'future', 'design-only'], 'type': 'string'}}, 'additionalProperties': False}}, 'status': {'type': 'string'}, 'product': {'type': 'string'}, 'category': {'type': 'string'}, 'journeys': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'scriptId', 'persona', 'facet', 'intent', 'goal', 'goalProvenance', 'steps', 'editorialStatus', 'capabilityReadiness', 'action'], 'properties': {'id': {'type': 'string'}, 'goal': {'type': 'string'}, 'facet': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'string'}}, 'action': {'oneOf': [{'type': 'object', 'required': ['availability', 'label', 'href'], 'properties': {'href': {'type': 'string'}, 'label': {'type': 'string'}, 'availability': {'type': 'string', 'const': 'available'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['availability', 'label'], 'properties': {'label': {'type': 'string'}, 'availability': {'type': 'string', 'const': 'intended'}}, 'additionalProperties': False}]}, 'intent': {'type': 'string'}, 'persona': {'type': 'string'}, 'scriptId': {'type': 'string'}, 'goalProvenance': {'type': 'object', 'required': ['source', 'personaLibraryGoalValidated'], 'properties': {'source': {'type': 'string', 'const': 'mike-approved-jobframe-intent'}, 'personaLibraryGoalValidated': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}, 'editorialStatus': {'enum': ['live', 'draft'], 'type': 'string'}, 'capabilityReadiness': {'enum': ['available', 'partial', 'in-development', 'planned', 'future', 'design-only'], 'type': 'string'}}, 'additionalProperties': False}}, 'oneLiner': {'type': 'string'}, 'personas': {'type': 'array', 'items': {'type': 'object', 'required': ['persona', 'personaLabel', 'reference', 'scriptIds'], 'properties': {'persona': {'type': 'string'}, 'reference': {'oneOf': [{'type': 'object', 'required': ['status', 'slug', 'libraryId', 'canonicalPersonaId', 'sourcePersonaLabel', 'sourcePersonaScope', 'roleIdentityEvidence', 'jobRefs', 'sourceContract', 'observedAt'], 'properties': {'slug': {'type': 'string'}, 'status': {'type': 'string', 'const': 'resolved'}, 'jobRefs': {'type': 'array', 'items': {'type': 'string'}}, 'libraryId': {'type': 'string'}, 'observedAt': {'type': 'string'}, 'sourceContract': {'type': 'string'}, 'canonicalPersonaId': {'type': 'string'}, 'personframeAddress': {'type': 'string'}, 'sourcePersonaLabel': {'type': 'string'}, 'sourcePersonaScope': {'type': 'string'}, 'roleIdentityEvidence': {'type': 'string', 'const': 'matched-public-persona-record'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'requestedRole', 'reason', 'reconciliation', 'sourceContract', 'observedAt'], 'properties': {'reason': {'type': 'string'}, 'status': {'type': 'string', 'const': 'unresolved'}, 'observedAt': {'type': 'string'}, 'requestedRole': {'type': 'string'}, 'reconciliation': {'type': 'string'}, 'sourceContract': {'type': 'string'}}, 'additionalProperties': False}]}, 'scriptIds': {'type': 'array', 'items': {'type': 'string'}}, 'personaLabel': {'type': 'string'}}, 'additionalProperties': False}}, 'problems': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'scriptId', 'persona', 'external', 'internal', 'philosophical', 'refs', 'refStatus'], 'properties': {'id': {'type': 'string'}, 'refs': {'type': 'array', 'items': {'type': 'object', 'required': ['address', 'edition'], 'properties': {'slot': {'enum': ['villain', 'external', 'internal', 'philosophical'], 'type': 'string'}, 'slug': {'type': 'string'}, 'address': {'type': 'string'}, 'edition': {'type': 'string', 'const': 'v1'}}, 'additionalProperties': False}}, 'persona': {'type': 'string'}, 'external': {'type': 'string'}, 'internal': {'type': 'string'}, 'scriptId': {'type': 'string'}, 'refStatus': {'oneOf': [{'type': 'object', 'required': ['status'], 'properties': {'status': {'type': 'string', 'const': 'resolved'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['status', 'reason', 'reconciliation'], 'properties': {'reason': {'type': 'string'}, 'status': {'type': 'string', 'const': 'unresolved'}, 'reconciliation': {'type': 'string'}}, 'additionalProperties': False}]}, 'philosophical': {'type': 'string'}}, 'additionalProperties': False}}, 'beachheads': {'type': 'array', 'items': {'type': 'string'}}, 'capabilities': {'type': 'array', 'items': {'type': 'string'}}, 'whenNotToUse': {'type': 'array', 'items': {'type': 'string'}}, 'canonicalUrls': {'type': 'array', 'items': {'type': 'string'}}, 'problemFrames': {'type': 'array', 'items': {'type': 'string'}}, 'relatedProducts': {'type': 'array', 'items': {'type': 'string'}}, 'associatedScripts': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'persona', 'variant', 'primary', 'editorialStatus', 'journeyId'], 'properties': {'id': {'type': 'string'}, 'persona': {'type': 'string'}, 'primary': {'type': 'boolean'}, 'variant': {'type': 'string'}, 'journeyId': {'type': 'string'}, 'editorialStatus': {'enum': ['live', 'draft'], 'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}}, 'additionalProperties': False}
get_scene_templates
Falsifiable scene templates — one claim plus what would make it false
Falsifiable scene templates — one claim plus what would make it false. The cards a story is told with. Each declares truth conditions the data can falsify, so a claim survives on evidence rather than assertion. Persona relevance is derived from focus (a stated heuristic). Drafts excluded unless ?status=all.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string', 'description': 'Fetch a single scene template.'}, 'form': {'type': 'string', 'description': 'Canonical form the scene presents as, e.g. rising.'}, 'tier': {'enum': ['1', '2', '3'], 'type': 'string', 'description': '1 descriptive | 2 model-bound | 3 decision/value.'}, 'focus': {'type': 'string', 'description': 'Spine focus, e.g. regretted-loss, compensation, cross.'}, 'shape': {'type': 'string', 'description': 'Data shape, e.g. series, groups, funnel.'}, 'status': {'enum': ['published', 'all'], 'type': 'string', 'description': 'published (default) | all.'}, 'persona': {'type': 'string', 'description': 'Scenes relevant to one persona.'}, 'archetype': {'type': 'string', 'description': 'Archetype, e.g. trend, where, flow, driver.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'note', 'filter', 'count', 'scenes'], 'properties': {'note': {'type': 'string'}, 'count': {'type': 'number'}, 'filter': {'type': 'object', 'required': ['persona', 'focus', 'form', 'shape', 'tier', 'archetype', 'id', 'status'], 'properties': {'id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'form': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'tier': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'focus': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'shape': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'status': {'type': 'string'}, 'persona': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'archetype': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'scenes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'logline', 'focus', 'archetype', 'tier', 'shape', 'form', 'metricTags', 'scope', 'conditions', 'narrative', 'personas', 'author', 'status', 'model', 'instrumentation', 'corpusSalience'], 'properties': {'id': {'type': 'string'}, 'form': {'type': 'string'}, 'name': {'type': 'string'}, 'tier': {'anyOf': [{'type': 'number', 'const': 1}, {'type': 'number', 'const': 2}, {'type': 'number', 'const': 3}]}, 'focus': {'type': 'string'}, 'model': {'anyOf': [{'type': 'object', 'required': ['ref', 'provenance'], 'properties': {'ref': {'type': 'string'}, 'provenance': {'enum': ['research_prior', 'historical_regression', 'expert', 'pa-original'], 'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'scope': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'shape': {'type': 'string'}, 'author': {'anyOf': [{'enum': ['hand', 'factory', 'harvested'], 'type': 'string'}, {'type': 'null'}]}, 'status': {'enum': ['draft', 'validated', 'rejected', 'live'], 'type': 'string'}, 'logline': {'type': 'string'}, 'personas': {'type': 'array', 'items': {'type': 'string'}}, 'archetype': {'type': 'string'}, 'narrative': {'type': 'object', 'required': ['problem', 'why', 'act'], 'properties': {'act': {'type': 'string'}, 'why': {'type': 'string'}, 'problem': {'type': 'string'}}, 'additionalProperties': False}, 'conditions': {'type': 'array', 'items': {'type': 'object', 'required': ['kind', 'label'], 'properties': {'kind': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': {}}}, 'metricTags': {'type': 'array', 'items': {'type': 'string'}}, 'corpusSalience': {'anyOf': [{'type': 'object', 'required': ['available', 'focus', 'pairs', 'works', 'singleWorkPairs', 'means'], 'properties': {'focus': {'type': 'string'}, 'means': {'type': 'string'}, 'pairs': {'type': 'number'}, 'works': {'type': 'number'}, 'available': {'type': 'boolean', 'const': True}, 'singleWorkPairs': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['available', 'focus', 'reason'], 'properties': {'focus': {'type': 'string'}, 'reason': {'type': 'string'}, 'available': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}]}, 'instrumentation': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'contract': {'type': 'string'}}, 'additionalProperties': False}
get_situations
Demonstration scenarios (discovered → diagnosed → solved)
Demonstration scenarios (discovered → diagnosed → solved). The proof layer paired with brandscripts: concrete situations a product resolves. ?product filters; ?status opts into drafts.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'status': {'enum': ['live', 'draft', 'all'], 'type': 'string', 'description': 'live (default) | draft | all.'}, 'product': {'type': 'string', 'description': 'Filter to one product.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'filter', 'count', 'situations'], 'properties': {'count': {'type': 'number'}, 'filter': {'type': 'object', 'required': ['status', 'product'], 'properties': {'status': {'type': 'string'}, 'product': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'contract': {'type': 'string'}, 'situations': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'status', 'title', 'useCase', 'navLabel', 'personas', 'grammars', 'teaser', 'presentingProblem', 'bindingConstraint', 'profile', 'seo', 'northStar', 'researchGrounding', 'mockDataSpec', 'cards', 'products', 'recipes', 'order', 'group', 'pitches'], 'properties': {'seo': {'type': 'object', 'required': ['metaTitle', 'metaDescription'], 'properties': {'metaTitle': {'type': 'string'}, 'metaDescription': {'type': 'string'}}, 'additionalProperties': False}, 'slug': {'type': 'string'}, 'cards': {'type': 'array', 'items': {'type': 'string'}}, 'group': {'type': 'string'}, 'order': {'type': 'number'}, 'title': {'type': 'string'}, 'status': {'enum': ['live', 'draft'], 'type': 'string'}, 'teaser': {'type': 'string'}, 'pitches': {'type': 'array', 'items': {'type': 'object', 'required': ['grammar', 'slug'], 'properties': {'slug': {'type': 'string'}, 'grammar': {'type': 'string'}}, 'additionalProperties': False}}, 'profile': {'type': 'object', 'required': ['eyebrow', 'headline', 'forWho', 'finds', 'output'], 'properties': {'finds': {'type': 'string'}, 'forWho': {'type': 'string'}, 'output': {'type': 'string'}, 'eyebrow': {'type': 'string'}, 'headline': {'type': 'string'}}, 'additionalProperties': False}, 'recipes': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'status'], 'properties': {'name': {'type': 'string'}, 'status': {'enum': ['live', 'planned'], 'type': 'string'}}, 'additionalProperties': False}}, 'useCase': {'type': 'string'}, 'grammars': {'type': 'array', 'items': {'type': 'string'}}, 'navLabel': {'type': 'string'}, 'personas': {'type': 'array', 'items': {'type': 'string'}}, 'products': {'type': 'array', 'items': {'type': 'object', 'required': ['product', 'role'], 'properties': {'role': {'type': 'string'}, 'product': {'type': 'string'}}, 'additionalProperties': False}}, 'northStar': {'type': 'string'}, 'mockDataSpec': {'type': 'string'}, 'bindingConstraint': {'type': 'object', 'required': ['condition', 'oneLine'], 'properties': {'oneLine': {'type': 'string'}, 'condition': {'enum': ['capability', 'alignment', 'motivation', 'support'], 'type': 'string'}}, 'additionalProperties': False}, 'presentingProblem': {'type': 'string'}, 'researchGrounding': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}}, 'additionalProperties': False}
get_story_tracks
Pre-authored data-story tracks — the possibility space
Pre-authored data-story tracks — the possibility space. Complete data stories: the SB7 argument, the acts and beats that carry it, the branches it forks down, the decision it produces, and the data required to test it. Candidates only — nothing here asserts a story is true of any organisation; that is decided against data. ?persona / ?problem / ?metric / ?slug filter.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'slug': {'type': 'string', 'description': 'Fetch a single story track.'}, 'metric': {'type': 'string', 'description': 'Filter by metric tag, e.g. attrition.'}, 'persona': {'type': 'string', 'description': 'Candidate stories for one persona (registry prefixes and aliases are normalized).'}, 'problem': {'type': 'string', 'description': 'Filter by problem tag, e.g. regretted-attrition.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'note', 'filter', 'count', 'stories'], 'properties': {'note': {'type': 'string'}, 'count': {'type': 'number'}, 'filter': {'type': 'object', 'required': ['persona', 'personaResolved', 'problem', 'metric', 'slug'], 'properties': {'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'metric': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'persona': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'problem': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'personaResolved': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'stories': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'logline', 'occasion', 'hero', 'drivingQuestion', 'personas', 'problemTags', 'cast', 'brandscript', 'acts', 'branches', 'resolution', 'close', 'dataRequirements', 'altitudes', 'provenanceClass'], 'properties': {'acts': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'purpose', 'beats'], 'properties': {'beats': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'archetype', 'transition', 'subQuestion', 'role', 'acceptCards', 'acceptForms', 'handle'], 'properties': {'id': {'type': 'string'}, 'role': {'type': 'string'}, 'handle': {'type': 'string'}, 'archetype': {'type': 'string'}, 'transition': {'type': 'string'}, 'acceptCards': {'type': 'array', 'items': {'type': 'string'}}, 'acceptForms': {'type': 'array', 'items': {'type': 'string'}}, 'subQuestion': {'type': 'string'}}, 'additionalProperties': False}}, 'title': {'type': 'string'}, 'purpose': {'type': 'string'}}, 'additionalProperties': False}}, 'cast': {'type': 'object', 'required': ['metricTags', 'populations'], 'properties': {'metricTags': {'type': 'array', 'items': {'type': 'string'}}, 'populations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'hero': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'close': {'type': 'object', 'required': ['question', 'nextSteps'], 'properties': {'question': {'type': 'string'}, 'nextSteps': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'logline': {'type': 'string'}, 'branches': {'type': 'array', 'items': {'type': 'object', 'required': ['afterBeat', 'condition'], 'properties': {'elseGoTo': {'type': 'object', 'required': ['storySlug', 'note'], 'properties': {'note': {'type': 'string'}, 'storySlug': {'type': 'string'}}, 'additionalProperties': False}, 'afterBeat': {'type': 'string'}, 'condition': {'type': 'string'}, 'thenBeats': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'archetype', 'transition', 'subQuestion', 'opens', 'handle'], 'properties': {'id': {'type': 'string'}, 'opens': {'type': 'object', 'required': ['acceptCards', 'role'], 'properties': {'role': {'type': 'string'}, 'acceptCards': {'type': 'array', 'items': {'type': 'string'}}, 'acceptForms': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'handle': {'type': 'string'}, 'supports': {'type': 'array', 'items': {'type': 'object', 'required': ['acceptCards', 'role'], 'properties': {'role': {'type': 'string'}, 'acceptCards': {'type': 'array', 'items': {'type': 'string'}}, 'acceptForms': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'archetype': {'type': 'string'}, 'transition': {'type': 'string'}, 'subQuestion': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}, 'occasion': {'type': 'string'}, 'personas': {'type': 'array', 'items': {'type': 'string'}}, 'altitudes': {'anyOf': [{'type': 'object', 'properties': {'exec': {'type': 'string'}, 'analyst': {'type': 'string'}, 'manager': {'type': 'string'}, 'director': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'resolution': {'type': 'string'}, 'brandscript': {'type': 'object', 'required': ['character', 'problem', 'guide', 'plan', 'callToAction', 'failure', 'success'], 'properties': {'plan': {'type': 'array', 'items': {'type': 'string'}}, 'guide': {'type': 'object', 'required': ['empathy', 'authority'], 'properties': {'empathy': {'type': 'string'}, 'authority': {'type': 'string'}}, 'additionalProperties': False}, 'failure': {'type': 'string'}, 'problem': {'type': 'object', 'required': ['villain', 'external', 'internal', 'philosophical'], 'properties': {'villain': {'type': 'string'}, 'external': {'type': 'string'}, 'internal': {'type': 'string'}, 'philosophical': {'type': 'string'}}, 'additionalProperties': False}, 'success': {'type': 'object', 'required': ['outcome', 'transformation'], 'properties': {'outcome': {'type': 'string'}, 'transformation': {'type': 'string'}}, 'additionalProperties': False}, 'character': {'type': 'object', 'required': ['who', 'wants'], 'properties': {'who': {'type': 'string'}, 'wants': {'type': 'string'}}, 'additionalProperties': False}, 'callToAction': {'type': 'object', 'required': ['direct'], 'properties': {'direct': {'type': 'string'}, 'transitional': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'problemTags': {'type': 'array', 'items': {'type': 'string'}}, 'drivingQuestion': {'type': 'string'}, 'provenanceClass': {'enum': ['engagement-replay + framework', 'framework'], 'type': 'string'}, 'dataRequirements': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'contract': {'type': 'string'}}, 'additionalProperties': False}
get_tools
The PeopleAnalyst tool catalog (corpus-grounded acting tools)
The PeopleAnalyst tool catalog (corpus-grounded acting tools). Machine-readable catalog of every corpus-grounded acting tool — name, category, what it does, inputs/outputs, concrete use cases, the profile URL, and how to run it (auth-gated REST + MCP). Last production probe (2026-09-23) reported grounded: true. Discovery is open (find + cite the tools); execution is API-key gated. ?category filters by family; ?slug returns one tool.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'slug': {'type': 'string', 'description': 'Return a single tool by slug (e.g. positioning).'}, 'category': {'type': 'string', 'description': 'Filter by family (e.g. Marketing, Startup & strategy, Software engineering).'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'filter', 'count', 'grounding', 'reliability', 'tools'], 'properties': {'count': {'type': 'number'}, 'tools': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'category', 'description', 'approach', 'inputs', 'outputs', 'useCases', 'profileUrl', 'run', 'hasExample'], 'properties': {'run': {'type': 'object', 'required': ['rest', 'mcpTools', 'auth'], 'properties': {'auth': {'type': 'string', 'const': 'api-key'}, 'rest': {'type': 'string'}, 'mcpTools': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'inputs': {'type': 'string'}, 'outputs': {'type': 'string'}, 'approach': {'type': 'string'}, 'category': {'type': 'string'}, 'useCases': {'type': 'array', 'items': {'type': 'string'}}, 'hasExample': {'type': 'boolean'}, 'profileUrl': {'type': 'string'}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'filter': {'type': 'object', 'required': ['category', 'slug'], 'properties': {'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'category': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'contract': {'type': 'string'}, 'grounding': {'type': 'object', 'required': ['reports', 'production', 'note'], 'properties': {'note': {'type': 'string'}, 'reports': {'type': 'boolean', 'const': True}, 'production': {'type': 'object', 'required': ['grounded', 'constructs', 'books', 'unavailable_reason', 'probedAt', 'service'], 'properties': {'books': {'type': 'number'}, 'service': {'type': 'string'}, 'grounded': {'type': 'boolean'}, 'probedAt': {'type': 'string'}, 'constructs': {'type': 'number'}, 'unavailable_reason': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'reliability': {'type': 'object', 'required': ['kind', 'label', 'meaning', 'raise', 'note'], 'properties': {'kind': {'type': 'string', 'const': 'one_model_pass'}, 'note': {'type': 'string'}, 'label': {'type': 'string'}, 'raise': {'type': 'string'}, 'meaning': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
list_answers
List all authored answer pages
Returns the full index of authored /answers pages — one entry per slug, with the question and canonical URL. Use this to discover available slugs before calling get_answer.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'count', 'answers'], 'properties': {'count': {'type': 'number'}, 'answers': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'question', 'canonicalUrl', 'updatedAt'], 'properties': {'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'question': {'type': 'string'}, 'updatedAt': {'type': 'string'}, 'canonicalUrl': {'type': 'string'}}, 'additionalProperties': False}}, 'contract': {'type': 'string'}}, 'additionalProperties': False}
list_peopleanalyst_feeds
List PeopleAnalyst feeds
List PeopleAnalyst's free machine-readable feeds and their MCP/REST availability. OpenAPI is also published at https://peopleanalyst.com/openapi.json.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['feeds'], 'properties': {'feeds': {'type': 'array', 'items': {'type': 'object', 'required': ['path', 'summary', 'params'], 'properties': {'path': {'type': 'string'}, 'tool': {'type': 'string'}, 'params': {'type': 'array', 'items': {'type': 'string'}}, 'summary': {'type': 'string'}, 'restOnly': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}}}, 'additionalProperties': False}
plan_next_data_ask
What data to ask for next, and what it would rule out
What data to ask for next, and what it would rule out. The acquisition planner. Given which data-stories are still candidates, returns the single most efficient next question, the full ranked list, and the minimum set of asks that makes every live story testable — split into what can be sent today versus what needs legal review. Ranked by information-per-friction: how evenly an answer splits the live hypothesis set (computed by entropy from the discrimination matrix, never hand-asserted) divided by a cost in which GOVERNANCE outweighs effort. Absent priors all live stories weigh equally, so results reflect structure, not likelihood. GET accepts ?live=, ?have=, ?lack= as comma lists.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['body'], 'properties': {'body': {'type': 'object', 'description': 'JSON request body accepted by the underlying endpoint.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['contract', 'caveat', 'valueOfInformation', 'live', 'nextAsk', 'ranked', 'plan'], 'properties': {'live': {'type': 'array', 'items': {'type': 'string'}}, 'plan': {'type': 'object', 'required': ['asks', 'totalFriction', 'sendToday', 'needsLegalOrCollection', 'collectableGaps'], 'properties': {'asks': {'type': 'array', 'items': {'type': 'object', 'required': ['variable', 'label', 'ask', 'governance', 'effort'], 'properties': {'ask': {'type': 'string'}, 'label': {'type': 'string'}, 'effort': {'enum': ['trivial', 'low', 'moderate', 'high'], 'type': 'string'}, 'variable': {'type': 'string'}, 'governance': {'enum': ['open', 'internal', 'restricted', 'collect'], 'type': 'string'}}, 'additionalProperties': False}}, 'sendToday': {'type': 'array', 'items': {'type': 'string'}}, 'totalFriction': {'type': 'number'}, 'collectableGaps': {'type': 'array', 'items': {'type': 'object', 'required': ['variable', 'blocks', 'title', 'population', 'turnaround', 'unlocks', 'caveat', 'fieldableInstrument', 'deliveryPaths', 'researchInstruments', 'shape', 'indicativePrice', 'diyPrice'], 'properties': {'shape': {'type': 'object', 'required': ['respondents', 'waves'], 'properties': {'waves': {'type': 'number'}, 'respondents': {'type': 'number'}, 'analysisOnly': {'type': 'boolean'}}, 'additionalProperties': False}, 'title': {'type': 'string'}, 'blocks': {'type': 'array', 'items': {'type': 'string'}}, 'caveat': {'type': 'string'}, 'unlocks': {'type': 'string'}, 'diyPrice': {'type': 'object', 'required': ['path', 'totalUsd', 'basis', 'recommendEnterprise', 'status'], 'properties': {'path': {'enum': ['diy', 'managed'], 'type': 'string'}, 'basis': {'type': 'string'}, 'status': {'enum': ['provisional', 'posted'], 'type': 'string'}, 'totalUsd': {'type': 'number'}, 'recommendEnterprise': {'type': 'boolean'}}, 'additionalProperties': False}, 'variable': {'type': 'string'}, 'population': {'type': 'string'}, 'turnaround': {'type': 'string'}, 'deliveryPaths': {'type': 'array', 'items': {'enum': ['kit', 'managed'], 'type': 'string'}}, 'indicativePrice': {'type': 'object', 'required': ['path', 'totalUsd', 'basis', 'recommendEnterprise', 'status'], 'properties': {'path': {'enum': ['diy', 'managed'], 'type': 'string'}, 'basis': {'type': 'string'}, 'status': {'enum': ['provisional', 'posted'], 'type': 'string'}, 'totalUsd': {'type': 'number'}, 'recommendEnterprise': {'type': 'boolean'}}, 'additionalProperties': False}, 'fieldableInstrument': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'researchInstruments': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}, 'needsLegalOrCollection': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'caveat': {'type': 'string'}, 'ranked': {'type': 'array', 'items': {'type': 'object', 'required': ['variable', 'ask', 'governance', 'availabilitySplitBits', 'cost', 'splitPerFriction', 'eliminatedIfAbsent'], 'properties': {'ask': {'type': 'string'}, 'cost': {'type': 'number'}, 'variable': {'type': 'string'}, 'governance': {'enum': ['open', 'internal', 'restricted', 'collect'], 'type': 'string'}, 'splitPerFriction': {'type': 'number'}, 'eliminatedIfAbsent': {'type': 'array', 'items': {'type': 'string'}}, 'availabilitySplitBits': {'type': 'number'}}, 'additionalProperties': False}}, 'nextAsk': {'anyOf': [{'type': 'object', 'required': ['variable', 'label', 'ask', 'governance', 'effort', 'availabilitySplitBits', 'cost', 'rationale', 'eliminatedIfAbsent'], 'properties': {'ask': {'type': 'string'}, 'cost': {'type': 'number'}, 'label': {'type': 'string'}, 'effort': {'enum': ['trivial', 'low', 'moderate', 'high'], 'type': 'string'}, 'variable': {'type': 'string'}, 'rationale': {'type': 'string'}, 'governance': {'enum': ['open', 'internal', 'restricted', 'collect'], 'type': 'string'}, 'eliminatedIfAbsent': {'type': 'array', 'items': {'type': 'string'}}, 'availabilitySplitBits': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'contract': {'type': 'string'}, 'valueOfInformation': {'type': 'object', 'required': ['computedHere', 'note', 'owner'], 'properties': {'note': {'type': 'string'}, 'owner': {'type': 'string'}, 'computedHere': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}}, 'additionalProperties': False}
run_segmentation
Behavioral segmentation, role discovery, and exemplar matching
Behavioral segmentation, role discovery, and exemplar matching. Deterministic segmentation over caller-supplied numeric vectors: cluster subjects, discover roles from behaviour + relationship edges, detect emergent roles, or match against exemplars. Structured non-biometric signals only — no audio, video, or affect inference. The caller supplies all data; nothing is retained. Capped at 5,000 rows per request.
只读
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['body'], 'properties': {'body': {'type': 'object', 'description': 'JSON request body accepted by the underlying endpoint.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'k': {'type': 'number'}, 'roles': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'segment_id', 'signature', 'size'], 'properties': {'role': {'type': 'string'}, 'size': {'type': 'number'}, 'signature': {'type': 'string'}, 'segment_id': {'type': 'string'}}, 'additionalProperties': False}}, 'matches': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'klass', 'distance', 'confidence'], 'properties': {'id': {'type': 'string'}, 'klass': {'type': 'string'}, 'distance': {'type': 'number'}, 'confidence': {'type': 'number'}}, 'additionalProperties': False}}, 'boundary': {'type': 'object', 'required': ['mechanism', 'reads_conversational_content', 'patent'], 'properties': {'patent': {'type': 'string'}, 'mechanism': {'type': 'string', 'const': 'behavioral-feature clustering'}, 'reads_conversational_content': {'type': 'boolean', 'const': False}}, 'additionalProperties': False}, 'segments': {'type': 'array', 'items': {'type': 'object', 'required': ['segment_id', 'size', 'centroid', 'distinguishing', 'members'], 'properties': {'size': {'type': 'number'}, 'members': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'distance'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'distance': {'type': 'number'}}, 'additionalProperties': False}}, 'centroid': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'number'}}, 'segment_id': {'type': 'string'}, 'distinguishing': {'type': 'array', 'items': {'type': 'object', 'required': ['dimension', 'z'], 'properties': {'z': {'type': 'number'}, 'dimension': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}, 'provenance': {'type': 'object', 'required': ['engine', 'method', 'patent_lineage', 'generated_at'], 'properties': {'engine': {'type': 'string', 'const': 'segmentation'}, 'method': {'type': 'string', 'const': 'kmeans+silhouette'}, 'generated_at': {'type': 'string'}, 'patent_lineage': {'type': 'string'}}, 'additionalProperties': False}, 'silhouette': {'type': 'number'}, 'assignments': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'role', 'segment_id'], 'properties': {'id': {'type': 'string'}, 'role': {'type': 'string'}, 'label': {'type': 'string'}, 'segment_id': {'type': 'string'}}, 'additionalProperties': False}}, 'segmentation': {'type': 'object', 'required': ['segments', 'dimensions_used', 'dimensions_ignored', 'k', 'silhouette', 'provenance'], 'properties': {'k': {'type': 'number'}, 'segments': {'type': 'array', 'items': {'type': 'object', 'required': ['segment_id', 'size', 'centroid', 'distinguishing', 'members'], 'properties': {'size': {'type': 'number'}, 'members': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'distance'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'distance': {'type': 'number'}}, 'additionalProperties': False}}, 'centroid': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'number'}}, 'segment_id': {'type': 'string'}, 'distinguishing': {'type': 'array', 'items': {'type': 'object', 'required': ['dimension', 'z'], 'properties': {'z': {'type': 'number'}, 'dimension': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}, 'provenance': {'type': 'object', 'required': ['engine', 'method', 'patent_lineage', 'generated_at'], 'properties': {'engine': {'type': 'string', 'const': 'segmentation'}, 'method': {'type': 'string', 'const': 'kmeans+silhouette'}, 'generated_at': {'type': 'string'}, 'patent_lineage': {'type': 'string'}}, 'additionalProperties': False}, 'silhouette': {'type': 'number'}, 'dimensions_used': {'type': 'array', 'items': {'type': 'string'}}, 'dimensions_ignored': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'features_used': {'type': 'array', 'items': {'type': 'string'}}, 'dimensions_used': {'type': 'array', 'items': {'type': 'string'}}, 'features_ignored': {'type': 'array', 'items': {'type': 'string'}}, 'dimensions_ignored': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
已更改
get_brandscripts
2026年9月29日 03:02
已更改
get_product_description
2026年9月29日 03:02
已移除
get_membership_offer
2026年9月27日 02:53
已更改
get_tools
2026年9月25日 03:03
已添加
get_tools
2026年9月17日 12:36
已添加
get_situations
2026年9月17日 12:36
已添加
get_insight_cards
2026年9月17日 12:36
已添加
plan_next_data_ask
2026年9月17日 12:36
已添加
run_segmentation
2026年9月17日 12:36
已添加
get_library_ids
2026年9月17日 12:36
已添加
get_claim_warrant
2026年9月17日 12:36
已添加
get_canonical_forms
2026年9月17日 12:36
已添加
get_scene_templates
2026年9月17日 12:36
已添加
get_story_tracks
2026年9月17日 12:36
已添加
get_brandscripts
2026年9月17日 12:36
已添加
get_marketing_registry
2026年9月17日 12:36
已添加
get_product_description
2026年9月17日 12:36
已添加
get_answer
2026年9月17日 12:36
已添加
list_answers
2026年9月17日 12:36
已添加
get_membership_offer
2026年9月17日 12:36
已添加
list_peopleanalyst_feeds
2026年9月17日 12:36