accueil / serveurs / Données & BDD / com.peopleanalyst/discovery
com.peopleanalyst/discovery
serveur MCP (Model Context Protocol) · peopleanalyst-discovery 1.5.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que com.peopleanalyst/discovery est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.peopleanalyst/discovery » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 16 outils
- get_answer≈ 378 tokens
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, ….
Paramètres, retour & exemple (1)
Paramètresslug· string · requis
Answer slug from the query map (e.g. survey-validity-check).
Exemple d'appel{"name": "get_answer", "arguments": {"slug": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"slug": "texte", "title": "texte", "answer": "texte", "question": "texte", "citations": [], "updatedAt": "texte", "canonicalUrl": "texte"}} - get_brandscripts≈ 1938 tokens
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.
Paramètres, retour & exemple (5)
Paramètresid· string · optionnel
Select one stable BrandScript id exactly.status· string · optionnel · live | draft | all
live (default) | draft | all.persona· string · optionnel
Filter to one persona slug.product· string · optionnel
Filter to one product's arguments.variant· string · optionnel
Stable goal variant scoped to product + persona; use all three to select exactly.
Exemple d'appel{"name": "get_brandscripts", "arguments": {"id": "texte", "status": "live", "persona": "texte", "product": "texte", "variant": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "filter": {}, "contract": "texte", "brandscripts": []}} - get_canonical_forms≈ 516 tokens
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.
Paramètres, retour & exemple (1)
Paramètresshape· string · optionnel · series | groups | distribution | pairs | funnel | composition | dist_over_time
Filter to one shape.
Exemple d'appel{"name": "get_canonical_forms", "arguments": {"shape": "series"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"note": "texte", "count": 1, "forms": [], "filter": {}, "shapes": [], "contract": "texte"}} - get_claim_warrant≈ 1304 tokens
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.
Paramètres, retour & exemple (4)
Paramètresto· string · optionnel
Target construct, e.g. employee_turnover. Use with `from`.from· string · optionnel
Source construct, e.g. employee_engagement. Use with `to`.focus· string · optionnel
Discourse volume for one focus area.construct· string · optionnel
Every pair the corpus links this construct to, most-discussed first.
Exemple d'appel{"name": "get_claim_warrant", "arguments": {"to": "texte", "from": "texte", "focus": "texte", "construct": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "found": true, "label": "texte", "pairs": [], "query": {}, "stats": {}, "caveat": "texte", "warrant": "texte", "contract": "texte", "salience": "texte", "statsNote": "texte", "citationNote": "texte"}} - get_insight_cards≈ 756 tokens
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.
Paramètres, retour & exemple (2)
Paramètrespitch· string · requis
The pitch slug to render.awareness· string · optionnel
Awareness state to reshape the sequence.
Exemple d'appel{"name": "get_insight_cards", "arguments": {"pitch": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"cards": [], "count": 1, "source": "texte", "pitches": [], "contract": "texte"}} - get_library_ids≈ 487 tokens
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.
Paramètres, retour & exemple (2)
Paramètrestag· string · optionnel
Filter by property tag, e.g. principia.limit· string · optionnel
Cap the number of rows returned.
Exemple d'appel{"name": "get_library_ids", "arguments": {"tag": "texte", "limit": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"spec": "texte", "count": 1, "scope": "texte", "issuer": "texte", "records": [], "id_format": "texte", "generated_at": "texte", "inventory_total": 1, "excluded_foreign_home": 1}} - get_marketing_registry≈ 415 tokens
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.
Paramètres, retour & exemple (2)
Paramètresstatus· string · optionnel
Filter by lifecycle (e.g. live, draft).product· string · optionnel
Filter cards to one product.
Exemple d'appel{"name": "get_marketing_registry", "arguments": {"status": "texte", "product": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"cards": [], "counts": {}, "filter": {}, "built_at": "texte", "contract": "texte", "personas": []}} - get_product_description≈ 1936 tokens
Bicycle.LLC product descriptions through the stable PeopleAnalyst feed. 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. Bicycle.LLC owns the company feed; this stable PA route and MCP tool proxy its validated v1 responses. Pass ?product to filter; live nested journeys are the default and ?status=draft|all opts into authoring records.
Paramètres, retour & exemple (2)
Paramètresstatus· string · optionnel · live | draft | all
Nested journey editorial status: live (default) | draft | all.product· string · optionnel
Filter to one product id (e.g. performix, anycomp, compensation-toolbox).
Exemple d'appel{"name": "get_product_description", "arguments": {"status": "live", "product": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "filter": {}, "contract": "texte", "products": []}} - get_scene_templates≈ 1166 tokens
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.
Paramètres, retour & exemple (8)
Paramètresid· string · optionnel
Fetch a single scene template.form· string · optionnel
Canonical form the scene presents as, e.g. rising.tier· string · optionnel · 1 | 2 | 3
1 descriptive | 2 model-bound | 3 decision/value.focus· string · optionnel
Spine focus, e.g. regretted-loss, compensation, cross.shape· string · optionnel
Data shape, e.g. series, groups, funnel.status· string · optionnel · published | all
published (default) | all.persona· string · optionnel
Scenes relevant to one persona.archetype· string · optionnel
Archetype, e.g. trend, where, flow, driver.
Exemple d'appel{"name": "get_scene_templates", "arguments": {"id": "texte", "form": "texte", "tier": "1", "focus": "texte", "shape": "texte", "status": "published"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"note": "texte", "count": 1, "filter": {}, "scenes": [], "contract": "texte"}} - get_situations≈ 875 tokens
Demonstration scenarios (discovered → diagnosed → solved). The proof layer paired with brandscripts: concrete situations a product resolves. ?product filters; ?status opts into drafts.
Paramètres, retour & exemple (2)
Paramètresstatus· string · optionnel · live | draft | all
live (default) | draft | all.product· string · optionnel
Filter to one product.
Exemple d'appel{"name": "get_situations", "arguments": {"status": "live", "product": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "filter": {}, "contract": "texte", "situations": []}} - get_story_tracks≈ 1655 tokens
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.
Paramètres, retour & exemple (4)
Paramètresslug· string · optionnel
Fetch a single story track.metric· string · optionnel
Filter by metric tag, e.g. attrition.persona· string · optionnel
Candidate stories for one persona (registry prefixes and aliases are normalized).problem· string · optionnel
Filter by problem tag, e.g. regretted-attrition.
Exemple d'appel{"name": "get_story_tracks", "arguments": {"slug": "texte", "metric": "texte", "persona": "texte", "problem": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"note": "texte", "count": 1, "filter": {}, "stories": [], "contract": "texte"}} - get_tools≈ 810 tokens
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.
Paramètres, retour & exemple (2)
Paramètresslug· string · optionnel
Return a single tool by slug (e.g. positioning).category· string · optionnel
Filter by family (e.g. Marketing, Startup & strategy, Software engineering).
Exemple d'appel{"name": "get_tools", "arguments": {"slug": "texte", "category": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "tools": [], "filter": {}, "contract": "texte", "grounding": {}, "reliability": {}}} - list_answers≈ 258 tokens
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.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_answers", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "answers": [], "contract": "texte"}} - list_peopleanalyst_feeds≈ 234 tokens
List PeopleAnalyst's free machine-readable feeds and their MCP/REST availability. OpenAPI is also published at https://peopleanalyst.com/openapi.json.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_peopleanalyst_feeds", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"feeds": []}} - plan_next_data_ask≈ 1423 tokens
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.
Paramètres, retour & exemple (1)
Paramètresbody· object · requis
JSON request body accepted by the underlying endpoint.
Exemple d'appel{"name": "plan_next_data_ask", "arguments": {"body": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"live": [], "plan": {}, "caveat": "texte", "ranked": [], "nextAsk": "texte", "contract": "texte", "valueOfInformation": {}}} - run_segmentation≈ 1292 tokens
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.
Paramètres, retour & exemple (1)
Paramètresbody· object · requis
JSON request body accepted by the underlying endpoint.
Exemple d'appel{"name": "run_segmentation", "arguments": {"body": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"k": 1, "roles": [], "matches": [], "boundary": {}, "segments": [], "provenance": {}, "silhouette": 1, "assignments": [], "segmentation": {}, "features_used": [], "dimensions_used": [], "features_ignored": []}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».