Entre com seu email cadastrado no Núcleo.
O servidor MCP do Núcleo expõe ferramentas operacionais via Model Context Protocol — acessíveis em Claude.ai, Claude Code, Cursor e outros clientes MCP. Use o filtro abaixo para explorar por domínio.
Use Claude, ChatGPT ou Cursor para conversar com os dados do Núcleo em linguagem natural, respeitando as suas permissões. Em alfa.
get_my_application_statusRetorna status das próprias applications (todas), com phase do ciclo, fields editáveis ainda em arquivo, e (durante evaluating) count de evaluations submitted.
get_my_assigned_cardsReturns all board cards assigned to you (in_progress, review, backlog). Shows title, status, tribe, role, due date.
get_my_attendance_historyReturns your personal attendance history — which meetings you attended or missed.
get_my_attendance_hoursReturns your attendance hours breakdown for the current cycle.
get_my_board_statusReturns board cards grouped by status.
get_my_certificatesReturns your certifications, badges, and trails.
get_my_committee_assignmentsLista applications atribuídas ao caller como membro do comitê de seleção. Mostra i_have_submitted + my_evaluation_rows count.
get_my_contextReturns a compact personal operating context for the authenticated user (profile, current cycle, gamification streak + cycle points, next-7-day events, recent certificates, and unread notification count). Self-scope only. Read-only. LGPD-clean — omits raw PII (email/phone/address) by default. Stable envelope {ok,data,summary,warnings,next_actions,audit}.
get_my_credly_statusReturns your Credly badge status: badges, verification date, CPMAI certification.
get_my_evaluation_feedbackRetorna o feedback qualitativo (narrative) da sua candidatura. Scores numéricos são retornados apenas para candidaturas aprovadas/convertidas; candidatos não selecionados veem só o status. Notas e scores por avaliador nunca são expostos (reservados ao canal formal Art. 18). Disponível após phase reveal (evaluations_closed em diante) ou status final.
get_my_gamification_statsReturns your streak + cycle progress: current_streak_count (consecutive cycles with >=1 point — alive if you scored in current cycle OR previous cycle), points_this_cycle (sum of points earned in the current cycle), active_cycles_count (total distinct cycles you scored in), longest_streak_count (your record). Use to populate /profile streak badge or to ask 'how am I doing this cycle?'.
get_my_notificationsReturns your unread notifications.
get_my_onboardingReturns your onboarding progress — step list with status (pending/in_progress/completed) and next action.
get_my_pending_evaluationsReturns YOUR queue of pending evaluations as committee member: applications in current cycle you haven't submitted yet. Includes progress (X of Y submitted) and per-application has_my_evaluation_in_progress flag for incomplete drafts. Use to plan your evaluation work session.
get_my_pii_access_logDetalhe restritoInternal admin operation — full details available to authorized members on request.
get_my_points_statementYour per-transaction points statement (auditable extrato). Member-scoped via auth.uid() — always the caller's own ledger, no member_id param. Each entry: points, category, rule pillar + display name, reason, granted_by actor (who credited it; null = system flow), champion attribution (awarder + justification + criteria) when applicable, and a reversal flag. Paginated + filterable. Use to answer 'why did I earn N points?' / 'who gave me this champion?'.
get_my_profileReturns your member profile: name, role, tribe, XP, badges, certifications.
get_my_selection_resultReturns your own selection application status. Your per-criterion breakdown (scores by pillar), position vs the cutoff band, and rank are returned ONLY for approved/converted applications after the cycle result is announced; non-selected candidates see status only. Evaluator identities and notes are never returned. Works for any member who applied through the selection pipeline.
get_my_tribe_attendanceReturns attendance grid for your tribe members.
get_my_tribe_membersReturns the list of active members in your tribe with their roles.
get_my_tribe_request_contextReturns YOUR tribe-journey state: eligible (can you request now) + ineligible_reason (no_member | inactive | has_tribe | pending_term | ineligible), your current pending request (if any, with invitation_id + expires_at), your current tribe (current_tribe_id + current_tribe_initiative_id when engaged), and the list of joinable tribes with capacity. Call this before request_tribe_assignment, cancel_tribe_request, or leave_tribe to know which action applies.
get_my_xp_and_rankingReturns your XP breakdown by category and your position in the leaderboard.
set_my_gamification_visibilityToggle your visibility on the gamification leaderboard. Set opt_out=true to hide your name + points from the public ranking (your data is preserved, only display is suppressed). LGPD-compliant member self-management. Idempotent — no-op if value unchanged. ADR-0050 (#101).
agenda_blocksSemantic Agenda Viva de Protagonismo tool (#1548 — o dominio nao tinha superficie MCP nenhuma). Set `action`: 'list' (le a pauta: com event_id devolve os blocos daquele evento via get_meeting_preparation; sem event_id devolve a janela corrente via get_geral_agenda_viva, ultima realizada + proximas), 'reserve' (#2158 — event_id + format_slug + title + duration_min: RESERVA um bloco na pauta. A reserva e SEMPRE em nome do chamador; para inscrever outra pessoa, nomeie-a em guest_name (+ external_guest se for de fora). Autoridade e reserve_agenda_block, capacidade PROPRIA, NAO manage_event), 'confirm' (block_id para um bloco OU event_id para todos os reservados do evento — CONCEDE XP ao protagonista, calculado pelo format_slug e pela faixa de duracao), 'no_show' (block_id + reason — marca nao realizado e ESTORNA o XP com pontos negativos no ledger). Authority: 'reserve' pede reserve_agenda_block; 'confirm'/'no_show' pedem manage_event (as RPCs gateiam). Confirmar e um VEREDITO HUMANO sobre quem de fato apresentou: as tres acoes de escrita devolvem preview e so executam com confirm=true (ADR-0018 W1). Stable envelope.
capture_visitor_leadCapture a public visitor lead (name, email, optional phone/chapter/role/message). LGPD: lgpd_consent must be true. Idempotent on same email + status=new. Public anon-callable from external forms (CRM integrations, landing pages).
change_requestGovernance change requests (absorbs submit_change_request + list_change_requests[→get_change_requests] + review_change_request + approve_change_request). Set `action`: 'submit' (title + description + cr_type [+ manual_section_ids, gc_references, impact_level, impact_description, justification]); 'list' ([status, cr_type]); 'review' (cr_id + review_action) — lifecycle review by manage_platform / curate_content / sponsor / chapter_liaison; review_action is 'approve' | 'reject' | 'request_changes' | 'withdraw' | 'resubmit'. 'implement' is intentionally NOT offered: the approved→implemented transition (publishing a Manual version) is done ONLY via the 2-of-N flow document_version_write action='propose_manual'/'confirm_manual' (ADR-0044, #1397). 'approve' (cr_id + vote) — record your sponsor-quorum signoff; vote is 'approved' | 'rejected' | 'abstained' (only sponsor×sponsor approvals count toward quorum, #1397). cr_type is 'editorial' | 'operational' | 'structural' | 'emergency'. impact_level 'critical' maps priority→'high' (migration 20260805000459). Authority enforced per-RPC (all fail-closed for anon). Stable envelope.
compute_pert_cutoffAdmin trigger: recomputes the PERT cutoff for a selection cycle and persists target/band/cohort_n columns on every application. Two dimensions can be recomputed independently: objective (default; writes pert_target_score/pert_band_*/pert_cohort_n/pert_cutoff_method/pert_calc_at) and leader_extra (score_column='leader_extra_pert_score'; writes leader_extra_pert_target/band_*/cohort_n/cutoff_method/calc_at). Cohort = applicants approved + engaged as active volunteer in prior cycles, filtered by role. Method: dynamic (n>=10) | historical_fallback | disabled. Auth: manage_member. Logs to admin_audit_log. Note: the weekly cron recompute-pert-cutoffs-weekly already calls BOTH dimensions per active cycle — use this MCP tool only for on-demand admin recompute (e.g., before committee final decision).
document_commentComment on a governance document version (absorbs add_document_comment[→create_document_comment] + resolve_document_comment + list_document_comments). Set `action`: 'add' (version_id + clause_anchor + body + visibility [+ parent_id]), 'resolve' (comment_id [+ resolution_note]), 'list' (version_id [+ include_resolved, include_prior_versions]). Authority: participate_in_governance_review (add) / author-or-review (resolve). NOTE: visibility is 'curator_only' | 'submitter_only' | 'change_notes' (the raw tool's 'public'/'signers_only'/'private' were rejected by the RPC on every call — fixed here). Stable envelope.
document_getRead governance documents (absorbs get_governance_docs + get_document_detail + get_governance_document_body + list_document_versions + get_version_diff + get_governance_change_log + get_manual_section). Set `mode`: 'list' ([doc_type]), 'detail' (document_id → doc + current version + active chain + signoffs + comment counts), 'body' (document_id → sanitized HTML + server-rendered Markdown + section_anchors of the current LOCKED version — informational, NOT legal advice), 'versions' (document_id), 'diff' (version_a + version_b [+ include_content]), 'changelog' ([since, limit, include_payload]), 'manual' ([section, lang]). Authority is enforced by each RPC: the visibility_class ceiling (public/active_members/legal_scoped) gates detail/body/diff; legal_scoped needs manage_member or a current signature. Read-only. Stable envelope.
drive_access_adminDrive membership-grant administration (#1376 / ADR-0124; absorbs admin_list_membership_drive_grants + get_membership_drive_grant_health + approve/bulk_approve_drive_revocations + list_drive_revocation_pending + get_drive_discovery_health). Set `action`: 'list_grants' (status?/initiative_id?), 'grant_health', 'approve_revocation' (audit_id), 'bulk_approve_revocation' (member_id), 'revocation_pending', 'discovery_health'. GP/DPO cockpit — requires manage_platform or manage_member; each RPC re-enforces. NOTE: provision_initiative_drive + reconcile_initiative_drive_access stay raw (service-account orchestrations; the auto-grant cron uses the ADR-0028 bypass, not this path). Stable envelope.
drive_linksDrive folder/file linking (absorbs link/unlink/get_initiative_drive_links + link/unlink/get_board_drive_links + register_card_drive_file + list_card_drive_files + list_drive_discoveries). Set `action`: 'link_initiative', 'unlink_initiative' (link_id), 'list_initiative' (initiative_id), 'link_board', 'unlink_board' (link_id), 'list_board' (board_id), 'register_file' (board_item_id+drive_file_id+drive_file_url+filename), 'list_files' (board_item_id), 'discoveries' (initiative_id?). Authority is enforced by each RPC (link=manage_member OR write/board_admin; reads carry #785). NOTE: text upload + subfolder creation stay in the raw upload_text_to_drive_folder / create_drive_subfolder tools (service-account operations). Stable envelope.
engagement_writeInitiative engagement lifecycle (absorbs manage_initiative_engagement + invite/respond/request/review/withdraw). Set `action`: 'add' | 'remove' | 'update_role' (initiative_id + person_id + kind [+ role]; DESTRUCTIVE add/remove→confirm), 'invite' (initiative_id + member_ids[] + kind_scope + message≥50), 'respond_invitation' (invitation_id + response accept|decline [+ note]; SELF), 'request_join' (initiative_id + message≥50), 'review_request' (invitation_id + decision approve|decline [+ note]), 'withdraw' (initiative_id + reason≥10; DESTRUCTIVE→confirm; SELF). Authority is enforced by the RPCs (admin-of-initiative OR owner for admin verbs; caller-scoped for self verbs); the semantic layer ADDS the #785 confidential-visibility fail-fast on the target initiative. dual-write (members.tribe_id↔initiative_id) is handled server-side (#1270). Stable envelope.
fork_idea_to_channelRegistra intenção de fork de idea para canal + auto-scaffold downstream artifact se idea status IN (approved, published). Channels: 'blog'/'blog_post' → cria blog_posts draft; 'newsletter'/'email' → cria campaign_templates draft (category=newsletter); 'linkedin'/'instagram'/'twitter'/'youtube'/'tiktok'/'facebook'/'medium'/'dev_to'/'social' → registra brief em idea.metadata.briefs[channel] (V1 Opção B; V2 may migrate to comms_briefs table). Idempotent: blog/newsletter return existing row; social briefs overwrite latest payload_hint per channel. Multi-channel supported.
get_active_engagementsReturns active engagements for a person: kind, role, initiative, dates, authority status. Own engagements always visible. Others require manage_member.
get_adoption_metricsReturns MCP adoption metrics. Admin/GP only.
get_annual_kpisReturns annual KPIs — targets vs actuals across all areas. Admin/Sponsor only.
get_chapter_kpisReturns KPIs for a chapter. Liaisons and admins can query any chapter.
get_chapter_needsReturns chapter needs/requests submitted by chapter board members. Shows needs for your chapter (or all for admin).
get_current_cycleReturns metadata of the current operational cycle: cycle_code, label, start/end dates, sort_order. Foundational utility — many other tools (XP, dashboards) implicitly depend on the current cycle. Use this to know what 'current' means before calling cycle-scoped tools.
get_current_releaseReturns the current platform release: version, title, date, type.
get_cycle_evolutionReturns evolution metrics across cycles: member growth, XP totals, retention deltas, attendance averages. Useful for cycle-over-cycle comparison and historical platform health.
get_cycle_reportReturns a full cycle report — members, tribes, attendance, deliverables, KPIs. Admin/GP only.
get_decision_logReturns the list of Architectural Decision Records (ADRs). Optionally filter by keyword. ADRs document key architectural choices for the platform.
get_document_detailComposite read: governance_document + current_version summary + active approval_chain (with signed_gates and pending_gates_for_me) + draft_versions list + comments_total/unresolved. Single round-trip for review UX. Use to pull everything about a document.
get_exclusion_declarationReturns one of the caller's PI-exclusion declarations with its full Anexo I asset list (sha256, OTS status per asset: unstamped → pending → confirmed; eficácia probatória plena = ALL confirmed, doc7 Cl.4.1). Declarant-only read. #569/ADR-0101.
get_ghost_visitorsReturns ghost visitors: authenticated users with no linked member record. Includes fuzzy member name match. Admin/GP only.
get_hub_announcementsReturns active announcements from the Hub.
get_idea_pipelineLista publication_ideas com summary by_stage. Members veem apenas próprias; comitê vê todas. Filtros: tribe_id, stage, series_id (todos opcionais).
get_initiative_drive_linksLista pastas Drive vinculadas (ativas) a uma iniciativa. Retorna agrupado por link_purpose (workspace primeiro). Útil para 'Drive da tribo' button na UI ou listing de atas/archive separadamente.
get_notifications_analyticsReturns notifications send rates and breakdown for window (default 28d): overall counts, by_delivery_mode (transactional_immediate / digest_weekly / suppress) with send_rate + avg_send_latency_minutes, by_type (top 20) with per-type send_rate, daily timeseries (last 30d). Use to triage 'are notifications being sent?' or which types lag. NOTE: open/click/bounce data lives in campaign_recipients (use get_comms_metrics_by_channel for campaign-level rates). Authority: view_internal_analytics.
get_operational_alertsReturns operational alerts — inactivity, overdue cards, taxonomy drift. Admin/GP only.
get_operational_statusReturns a compact operational-health summary for the chapter (admin): active alerts by severity (incl. recurrence stockout from #415), the recurring-series resupply list, event-attendance health, and cron/sync health signals. Summary-first, read-only. PII-clean — aggregate counts + short messages only; member-specific alert details are redacted. Requires manage_platform; the stockout list and attendance health additionally need manage_event / analytics permissions and are omitted (with a warning) if the caller lacks them. Stable envelope {ok,data,summary,warnings,next_actions,audit}.
get_personReturns the V4 person profile: name, headshot (photo_url), LinkedIn (linkedin_url), location, Credly URL + badges, consent status. Sensitive PII (email, phone, address, birth date, pmi_id) only visible for own record or with view_pii permission. For a ready-to-use comms/divulgação card (parsed credentials + roles + clearance) prefer get_member_comms_card.
get_pert_cutoff_summaryReturns the PERT cutoff state for a selection cycle: target_score + band_lower/upper + cohort_n (approved active members in prior cycles) + method (dynamic | historical_fallback | disabled) + distribution (below_band / within_band / above_band / not_yet_scored). Two dimensions are tracked separately: objective (default; score_column='objective_score_avg' or 'final_score' or 'research_score') and leader_extra (score_column='leader_extra_pert_score' — reads leader_extra_pert_target/band_*/calc_at/cohort_n). Use to assess whether candidates land within the calibration band of approved members per dimension. Admin/curator (manage_member).
get_pii_access_log_adminDetalhe restritoInternal admin operation — full details available to authorized members on request.
get_pilots_summaryReturns AI pilot projects summary: status, metrics, hypothesis, progress.
get_public_impact_dataReturns public impact data: chapters, members, publications, partners, timeline, recognitions.
get_recurrence_stockoutLists recurring event series running out of future occurrences (recently active, last date within the horizon, no events beyond it). Returns estimated cadence, last date, next expected date, and suggested next dates to resupply. Requires manage_event.
get_research_pipelineReturns all research cards in progress or review across all tribes, with authors and status. Admin/GP only.
get_role_transitionsReturns cycle-over-cycle analytics on member role transitions (offboards, promotions, demotions). Admin/Sponsor only.
get_tribe_credly_statusDashboard agregado de status Credly da tribo: members_total, members_with_credly_linked, credly_link_rate, trail_completed_count + rate, cpmai_certified_count, pmi_senior_count. Use para snapshot rápido sem precisar listar membros. Authority: admin OR tribe_leader/researcher (própria tribo).
get_tribe_deliverablesReturns deliverables for a tribe: status, deadlines, cycle tracking.
get_tribe_housekeepingReturns initiative-scoped KPI rollup. Sections: initiative metadata, current_cycle (best-effort), kpis_contributed[] (annual KPIs the initiative serves via tribe_kpi_contributions, with attainment_pct + status_color), cards_linked_to_kpis[] (board cards whose tags overlap any contributed KPI key — heuristic v1, with matched_kpi_keys[] per card), cycle_deliverables[] (tribe_deliverables for current cycle), rollup (counters: kpis_total/red/yellow + deliverables_total/done). Closes #84 GAP 7. Authenticated. ADR-0049. Use case: 'Mostra contribuições da Tribo Y aos KPIs anuais'.
get_tribe_members_with_credlyLista membros ativos de uma tribo enriquecidos com status Credly: id, name, photo_url, role, designations, chapter, person_id (V4), credly_url, credly_verified_at, badges_summary {trail_count, trail_completed, cert_pmi_senior, cpmai_certified, total_badges}. Use para acompanhamento de trilha de cursos pelo TL. Authority: admin (qualquer tribo) OR tribe_leader/researcher (própria tribo).
get_tribe_stats_rankedReturns tribe stats: member count, attendance rate, impact hours, cards by status, and per-member attendance ranking.
get_tribes_comparisonBREAKING SHAPE CHANGE post-p192: response is now a V4 envelope { initiatives: [...], kinds_present: [...], generated_at } — NOT a V3 row array. Returns cross-initiative comparison (research_tribes by default; supports all kinds via `kind` param): attendance rate, cards done/total, impact hours (strict-scoped to initiative events post-p194 GAP-192.C), events, last meeting, member count, members_inactive_30d (strict-scoped to initiative events post-p194 GAP-194.A), XP (cohort-scoped: total XP earned by initiative members across all chapter activities, see GAP-194.B). Pass kind = 'research_tribe' | 'workgroup' | 'committee' | 'study_group' | 'congress' to filter, or kind = 'all' for cross-kind. Omit for research_tribe (preserves V3 behavior). Admin/GP only (manage_platform OR view_chapter_dashboards).
get_vep_divergence_reportReturns VEP↔Núcleo divergence in 5 lifecycle buckets: (A) selection_divergent — VEP terminal (Withdrawn/Declined/OfferNotExtended) but Núcleo still in funnel; (B) onboarding_divergent — Núcleo approved/converted but VEP still Submitted/OfferExtended (recruiter PMI didn't propagate); (C) active_members_divergent — Núcleo member offboarded (is_active=false) but VEP still Submitted/Active; (D) rejection_divergent — Núcleo rejected but VEP offer still open; (E) offer_retracted_active_divergent (#1445) — Núcleo approved/converted + VEP offer retracted (OfferNotExtended/Withdrawn/Declined) but member still is_active=true → offboard on the platform. Each row inclui application_id (+ member_id for bucket E), applicant_name, email, pmi_id, cycle_code, nucleo_status, vep_status_raw, vep_last_seen_at, vep_reconciled_at, suggested_action. Summary {selection_count, onboarding_count, active_members_count, rejection_count, offer_retracted_active_count, total_divergent, generated_at}. Authority: view_internal_analytics (COI recusal on open cycles). Use when triaging 'qual o estado da reconciliação VEP?' ou pre-cycle hygiene check. Reconciliação manual via web em /admin/vep-reconciliation (mark_vep_reconciled; offboard for bucket E).
get_volunteer_funnelReturns selection funnel (selection_applications): by_cycle/by_status/certifications/geography.
get_volunteer_funnel_statsARM-1 funnel breakdown: lead status counts + selection_application status counts (for cycle) + lead by_source (UTM-aware) + by_chapter. Pass cycle_id OR omit to use current open cycle. Admin only.
idea_pipelinePublication/content idea funnel (absorbs get_idea_pipeline/propose_publication_idea/advance_idea_stage/fork_idea_to_channel/link_idea_to_series + get_research_pipeline). Set `action`: 'list' (tribe_id?/stage?/series_id?), 'propose' (title [+source_type & source_id paired]), 'advance' (idea_id+new_stage), 'fork' (idea_id+channel), 'link_series' (idea_id+series_id), 'research'. Any active member may propose; advance to approved/published and research are gated by the RPC/committee. Stable envelope.
initiative_directoryList/browse initiatives (absorbs list_initiatives + list_open_initiatives). Set `mode`: 'all' (optional kind/status filters) or 'open' (initiatives you can request to join). Confidential initiatives are excluded inline by the RPCs (rls_can_see_initiative, #785). Stable envelope.
initiative_reportPer-initiative reporting (absorbs get_tribe_dashboard/stats_ranked/housekeeping/deliverables/credly + tribes_comparison + pilots_summary). Set `report`: 'dashboard' | 'stats' | 'housekeeping' | 'deliverables' | 'credly' | 'members_credly' (each needs tribe_id OR initiative_id — #785-gated) · 'comparison' (cross-initiative; requires manage_platform OR view_chapter_dashboards) · 'pilots' (org-wide AI pilots). Stable envelope.
initiative_rosterWho is engaged where (absorbs list_initiative_engagements(_by_kind), get_my_tribe_members, list_invitations_*). Set `scope`: 'initiative' (initiative_id [+ status_filter]) — #785-gated; 'by_kind' (engagement_kind and/or initiative_kind [+ status_filter, limit]); 'my_tribe' (tribe_id optional → your tribe); 'invitations_for_my_initiatives' ([initiative_id] [+ status_filter]); 'invitations_received' ([status_filter]); 'invitations_sent' ([initiative_id] [+ status_filter]). Confidential initiatives are excluded (#785 / RLS). Stable envelope.
ip_exclusionPI-exclusion declarations — doc7 'Declaração de Exclusão de PI e Autoria Independente' (absorbs list_my_exclusion_declarations + get_exclusion_declaration + create_exclusion_declaration + register_exclusion_asset + revoke_exclusion_declaration + export_anexo_i). Set `action`: 'list' (your declarations), 'get' (declaration_id), 'create' ([title] → returns declaration_id), 'add_asset' (declaration_id + title + sha256 [+ nature, author_label, work_created_on, source_ref, reinforcement] — DIGEST-ONLY, the file never leaves the Núcleo), 'revoke' (declaration_id — TERMINAL→confirm), 'export' (declaration_id → filled Anexo I). Declarant self-service (a view_pii admin gets an org-fenced read, logged). Stable envelope.
leave_tribeLeave YOUR current research tribe (self-service, to fix a wrong-tribe choice). Resolves your active tribe's initiative from get_my_tribe_request_context, then withdraws you (delegates to withdraw_from_initiative) — the bridge trigger clears members.tribe_id and re-opens the tribe picker so you can request a different tribe. Reason MUST be at least 10 characters (audit trail). BLOCKED if you are the tribe's only active volunteer (e.g. a leader) — that requires GP mediation, not self-service. Returns a preview unless confirm=true (ADR-0018 W1). Irreversible after confirm.
list_ai_processing_logARM Onda 3 (ADR-0074): admin observability over ai_processing_log (LGPD Art. 37 audit). Filter by application_id, purpose (triage|briefing|qualitative|enrichment|other), status (running|completed|failed), limit 1-200. Returns rows with hashes truncated (12 chars). Auth: view_internal_analytics.
list_ai_suggestionsReturns AI-generated evaluation suggestions for an application (from selection_evaluation_ai_suggestions). Closes the producer→consumer loop: analyze_application generates, submit_evaluation accepts via ai_suggestion_id. Filter by evaluation_type ('objective'|'interview'|'leader_extra') and/or only_pending=true (excludes already-consumed or superseded). Each suggestion includes suggested_scores + suggested_criterion_notes + suggested_weighted_subtotal + suggested_overall_summary + model_provider/name + is_pending flag. Auth: committee membership of the cycle OR manage_member. Logs PII access.
list_change_requestsList change requests with optional status/type filters. Status: 'draft' | 'under_review' | 'approved' | 'rejected' | 'withdrawn'.
list_cyclesReturns all cycles (current + past + future) with metadata: cycle_code, label, start/end, is_current, color. Use to navigate historical data or schedule cycle-scoped operations.
list_document_commentsList comments on a document version. Returns threaded structure with clause_anchor + body + author + resolution state. By default excludes resolved comments.
list_drive_discoveriesLista discoveries automáticas de arquivos Drive em pastas linkadas com link_purpose='minutes'. Filtros: initiative_id (opcional), status_filter (all|unmatched|unpromoted|promoted). Cada row tem matched_event_id (se filename date heuristic acertou) + match_confidence (high|medium|low|none) + promoted_to_minutes_url (auto-fill em event vazio). Paginação 1-200. Authority: view_internal_analytics. ADR-0065 (Phase 4).
list_drive_revocation_pendingLista permissões Google Drive de ex-membros (offboarded) detectadas pelo scan semanal, aguardando revisão/revogação. Mostra arquivo, e-mail/role da permissão, status e erro do Google (quando falha). Authority: manage_member (GP). Default status=pending_revoke; passe status='all' para todos.
list_initiative_engagementsList engagements (active + lifecycle history) of an initiative with granted_by / source / motivation context. Complements get_initiative_members by exposing audit detail. Authority: admin (manage_member or view_pii on initiative) OR active member of the initiative. Motivation field gated to admin only. Use status_filter to scope: 'active' (default), 'all', 'revoked' (encerrados — as linhas vêm com status='offboarded'), 'onboarding' (linhas com status='pending'). Os dois últimos ficaram inertes até #1809.
list_initiative_engagements_by_kindOrg-wide audit RPC. Lists engagements across ALL initiatives filtered by engagement_kind (e.g. 'study_group_owner') and/or initiative_kind (e.g. 'workgroup'). Use cases: 'who are all study_group_owners across the org?', 'list every member of every workgroup', 'show all volunteers'. At least one filter required (avoids unbounded scan). Authority: view_internal_analytics (PMI-Latam admin / coordenadores nacionais / sponsors with audit clearance). LGPD: PII access logged per distinct target member. status_filter: active|all|revoked|onboarding. Default limit 100 (max 500); response.truncated=true if total reached limit.
list_initiativesLists all initiatives in the platform, optionally filtered by kind and status. Returns id, title, kind, status, description, member_count.
list_membership_drive_grantsLista o ledger de grants de Drive de membros (#1376): quem recebeu acesso 'writer' a qual pasta de iniciativa, com status (granted/failed/already_present) e erro do Google. Authority: manage_platform (GP).
list_my_exclusion_declarationsLists the caller's PI-exclusion declarations (doc7 — Declaração de Exclusão de PI e Autoria Independente) with per-declaration asset counts. Statuses: draft/active (accepting assets) | revoked (terminal). #569/ADR-0101.
list_open_initiativesReturns initiatives accepting new members via self-service (join_policy='request_to_join' or 'open'). Includes per-initiative has_active_engagement + has_pending_invitation flags so you can filter what you can actually join.
list_pending_agreement_engagementsLists active engagements that require an agreement but have no linked certificate yet (the pending-term queue): per-person kind/role/initiative, whether an agreement notification was already sent, and a next_action hint. Authority: manage_member (GP/board). Read-only.
list_re_engagement_pipelineList re-engagement pipeline entries with member info, staged/invited/responded/cancelled metadata. Filter by state and/or cycle_code. Admin only (manage_member).
list_tribe_pending_requestsList the PENDING join requests for a tribe, for the leader (or GP) to review. Returns each request's invitation_id + requester + message + created_at + expires_at. Authority is enforced server-side: you must be the tribe's volunteer/leader OR hold GP manage_member. Feed each invitation_id to review_tribe_request to approve/decline.
list_visitor_leadsList visitor leads with referrer/promoted/dismissed metadata. Filter by status (new/contacted/promoted/dismissed) and/or chapter_interest. Admin only (manage_member).
member_add_alternate_emailADR-0095: Add an alternate email address to a member. Auth: self or manage_member.
member_emailsMember email identity management (absorbs member_list_emails/add/remove/set_primary/update_kind/resolve). Set `action`: 'list' (member_id), 'add' (member_id + email + kind), 'remove' (member_id + email), 'set_primary' (member_id + email), 'update_kind' (member_id + email + new_kind), 'resolve' (email → member_id). Per-record authority (self OR manage_member; +view_pii for list) is enforced by the RPCs; 'resolve' ADDS a manage_member gate here to close the email-existence oracle. kind/new_kind ∈ personal|institutional|chapter|other. PII surface. Stable envelope.
member_getOne person, 360° (absorbs get_person + get_active_engagements). Resolve the target by ANY of: `person_id` (persons.id), `member_id` (members.id — BOTH accepted; this fixes the raw get_person #2-failure class where a members.id returned 'Person not found', 17/20 fails/180d), or `email` (requires manage_member — closes the email-existence oracle). Omit all three for your OWN record. Returns profile + active engagements. LGPD: sensitive PII (email/phone/pmi_id/address/birth_date) only for your own record or with view_pii (+ chapter-scope), masked by the RPC; engagements of OTHERS require manage_member (surfaced in warnings if absent). Stable envelope.
member_lifecycleMember lifecycle (GP-only) — onboard/offboard dashboards, offboarding, re-engagement, agreements, leader-track. Set `action`: 'offboard' (member_id + new_status + reason_category + reason_detail; DESTRUCTIVE→confirm), 'reissue_agreement' (member_id + reason; DESTRUCTIVE→confirm — WARNING: a member RE-ACCEPTING a term uses Camada-5, NEVER batch-reissue, which DEMOTES authority), 'record_offboarding' (member_id + exit-interview fields), 'get_offboarding_record' (member_id), 'list_offboarding' (filters), 'offboarding_dashboard', 'onboarding_dashboard', 'pending_agreements', 'explain_authority' (optional member_id), 'stage_alumni' (member_id + cycle_code), 'invite_alumni' (pipeline_id + message), 'respond_re_engagement' (pipeline_id + response; SELF), 'cancel_re_engagement' (pipeline_id + reason), 'list_re_engagement' (filters), 'promote_to_leader' (application_id), 'detect_inactive', 'create' (#2460: name + email [+ chapter_code, initiative_id + kind (+ role)]; creates person + member + chapter affiliation + optional initiative engagement atomically; WRITE→confirm). Authority: manage_member for admin verbs (promote→promote; respond_re_engagement/get_offboarding_record are RPC self-gated). member lifecycle = GP-only invariant (LGPD Art.18). Stable envelope.
member_list_emailsADR-0095: List all emails (primary and alternate) associated with a member. Auth: self, manage_member, or view_pii.
member_remove_alternate_emailADR-0095 GAP-205.D: Remove an alternate email from a member. Rejects primary (use member_set_primary_email to promote a different alternate first). Returns true if removed, false if email not registered for member. Auth: self or manage_member.
member_resolve_emailADR-0095: Resolve a member ID by their email (primary or alternate). Auth: authenticated.
member_searchSemantic member directory search (absorbs search_members; 167 calls/180d, the #2 tool). Filter by name (`query`), `tribe_id` (1-8), `tier` (tier1|tier2|tier3), `status` (active|inactive|observer|alumni|pre_onboarding|all; default active). Authority: manage_member (admin/GP). LGPD: PII columns (email, auth_id) are REDACTED unless the caller has view_pii — audit.pii_level reflects the actual disclosure. Stable envelope.
member_set_primary_emailADR-0095 GAP-205.D: Promote a registered alternate to primary via UPDATE members.email (fires sync trigger; preserves alt kind). Idempotent on already-primary. Raises if email not registered for member. Auth: self or manage_member.
member_update_alternate_email_kindADR-0095 GAP-205.D: Change kind on an alternate email. Rejects primary (kind follows backfill convention). Returns true if updated, false if email not registered for member. Auth: self or manage_member.
my_status"Where am I?" — your own status across the platform (absorbs get_my_profile/committee_assignments/board_status/application_status/notifications/onboarding/selection_result/credly). Set `scope`: 'all' (default: profile + committee + board summary + unread count) | 'profile' | 'committee' | 'board' | 'application' | 'notifications' | 'onboarding' | 'selection_result' | 'credly'. SELF-only (auth.uid → member); zero admin surface, no PII of others. Supersedes the get_my_context bridge tool. Stable envelope.
platform_contextSemantic platform-context read (absorbs get_current_cycle/get_current_release/list_cycles). Returns the current operational cycle (code/label/dates), the current platform release, and the full cycles list. Tier-1 read, no PII, no per-resource gate. Use this to know what 'current cycle' means before calling cycle-scoped tools. Stable envelope.
provision_initiative_driveProvisiona o Drive de uma iniciativa/tribo: cria a subpasta de workspace (se ainda não existir), vincula em initiative_drive_links (link_purpose=workspace) e concede acesso 'writer' a todo o roster ativo via reconcile. Idempotente — se já houver pasta de workspace, apenas reconcilia os acessos. Authority: manage_platform (GP). Requer a SA com organizer/fileOrganizer na pasta-raiz (ADR-0094 G4.1) senão os grants falham 403.
reconcile_initiative_drive_accessReconcilia o acesso de Drive: para cada pasta de workspace vinculada, concede 'writer' aos membros ativos que faltam na ACL. Sem initiative_id = varredura completa (todas as iniciativas ativas com pasta). dry_run=true retorna o plano sem conceder. Use para reparar acesso após reorg/movimento de pasta. Authority: manage_platform (GP).
reissue_agreementReissues a member's CURRENT volunteer agreement: supersedes the active certificate, clears its engagement link, and notifies the member to re-sign the current term version. Use when a term must be re-signed (version change, correction). For first-time issuance, approve_selection_application enqueues the term automatically and the member self-signs — this tool is the re-trigger path, not first issuance. Authority: manage_member (GP). Two-step confirm — supersedes a certificate + notifies.
request_to_join_initiativeRequest to join an initiative via self-service (Notion-style). Initiative must have join_policy='request_to_join' or 'open'. Message MUST be at least 50 characters describing your motivation. Owner of initiative will review and accept/decline. Default engagement kind inferred by initiative kind (study_group_participant, workgroup_member, committee_member, volunteer, observer).
request_tribe_assignmentRequest to join a research tribe as a volunteer (self-service). Creates a PENDING request that the tribe leader (or GP) then approves/declines via review_tribe_request; the request auto-expires in 7 days. You may hold only ONE pending tribe request at a time — cancel the current one with cancel_tribe_request before requesting a different tribe. Requires the signed volunteer agreement + an eligible profile (call get_my_tribe_request_context first to see eligibility). tribe_id is the integer tribe number. Optional message introduces you to the leader.
revoke_exclusion_declarationRevokes one of the caller's PI-exclusion declarations (TERMINAL — cannot be undone; register_exclusion_asset rejects revoked declarations). Assets and .ots proofs are KEPT through the retention window (eliminated 5y post-revocation by ots-retention-monthly — LGPD Art. 7º IX, exceção ao Art. 18 VI) and the revocation is audited. Declarant-only — a view_pii admin can fetch the PREVIEW (the read is logged to pii_access_log) but the confirm step is denied. #569/ADR-0101.
search_membersSearch members by name, filter by tribe, tier, or status. Admin/GP only.
send_notification_to_tribeSend a notification to all active members of your tribe.
stage_alumni_for_re_engagementStage an alumni member into the re-engagement pipeline for a specific cycle. Admin manual curation step (cron auto-stages on cycle open). Returns existing pipeline_id if already staged (idempotent).
upload_my_resumeAtualiza resume_url do próprio application ativo. file_type default: pdf.
upload_text_to_drive_folderSobe texto (ex: ata gerada por Claude) para uma pasta Drive via Service Account. Use case: 'Gerar e arquivar ata em /minutes/' direto na conversa. Hard cap 7MB. Auto-registra como card attachment se board_item_id for fornecido. Authority: rls_is_member. SA precisa ter Editor na folder.
visitor_leadsVisitor-lead triage for operators (absorbs list_visitor_leads + get_ghost_visitors + dismiss_visitor_lead + promote_lead_to_application). Set `action`: 'list' ([status, chapter, limit]), 'ghosts' (authenticated visitors with no member record — manage_platform), 'dismiss' (lead_id + reason), 'promote' (lead_id + cycle_id [+ pmi_id] → creates an application). Authority: manage_member (ghosts = manage_platform). Leads are pre-consent PII — LGPD-minimal. NOTE: public lead capture (capture_visitor_lead) stays raw (anon site entry, consent-gated). Stable envelope.
add_document_commentPost a comment on a document version. Anchor to a clause identifier (e.g. '§2.5', 'Art. 4'). Visibility: 'curator_only' | 'submitter_only' | 'change_notes' (validated by create_document_comment; the legacy 'public'/'signers_only'/'private' were rejected on every call). Optional parent_id for threaded replies. Prefer the semantic document_comment tool.
advance_idea_stageAvança state da idea. 9 stages: draft → proposed → researching → writing → review → curation → approved → published → archived. Approved/published só comitê (manage_event). Rework permitido: review/curation → writing.
approve_change_requestRecord your sponsor-quorum signoff on a change request. action: 'approved' | 'rejected' | 'abstained'. Signature hash + timestamp captured for audit. Authority: participate_in_governance_review (only sponsor×sponsor approvals count toward quorum). Prefer semantic tool change_request action='approve'.
approve_drive_revocationAprova a revogação de UMA permissão Drive de ex-membro (linha drive_offboarding_audit) e executa a remoção via Service Account imediatamente. Authority: manage_member (GP). Retorna o resultado do Google inline (revoked | already_absent | failed). NB: enquanto a SA não tiver papel organizer nas pastas, o Google retorna 403 e a linha fica 'failed' com a mensagem — comportamento esperado (gated, ADR-0094 G4.1).
bulk_approve_drive_revocationsAprova e revoga TODAS as permissões Drive pendentes de um ex-membro de uma vez. Authority: manage_member (GP). Retorna resultado por linha. Mesma observação de 403-até-elevação-de-papel do approve_drive_revocation. Se o membro tiver >100 pendências, as excedentes ficam status='approved' e são drenadas pelo cron horário (revoke-drive-drain-hourly).
bulk_mark_excusedMark a member as excused for ALL eligible events in a date range (e.g. 'off the whole month'). Initiative leaders can mark members of shared initiatives. Org-scope admins (manage_event globally) can mark anyone.
cancel_re_engagementAdmin cancellation: void a pipeline entry pre-response. Cannot cancel from terminal states (accepted/declined/already-cancelled).
cancel_tribe_requestCancel YOUR own pending tribe request (self-service). Only the invitee of a pending self-request for a research tribe may cancel it; it is marked declined (self_cancelled marker for analytics). After cancelling, you can request a different tribe. invitation_id comes from get_my_tribe_request_context (the pending.invitation_id field).
create_action_itemCreate a structured meeting action item. Replaces markdown-only action items from meeting_minutes action='write'. Optional FKs link to a board card or checklist item, enabling card↔meeting traceability (ADR-0045/0046, #84 Onda 1+2). kind: 'action' | 'decision' | 'followup' | 'general'. Decisions auto-mark status='completed'. Requires manage_event.
create_drive_subfolderCria subpasta dentro de uma pasta Drive existente via Service Account. Optional auto-link: se auto_link_to_initiative_id fornecido, registra automaticamente em initiative_drive_links com link_purpose. Use case: 'Cria pasta /Atas dentro do workspace da Tribo X e vincula como purpose=minutes'. Authority: rls_is_member para create + write_initiative para auto-link.
create_exclusion_declarationCreates a new PI-exclusion declaration (doc7 instance) for the caller. Returns the declaration UUID — then add Anexo I rows with register_exclusion_asset. Lifecycle is audited (admin_audit_log). #569/ADR-0101.
create_external_speaker_engagementOrchestrates Partnership→Initiative journey atomically: creates initiative + global project_board + lead/co speaker engagements + board_items from deadlines + partner_interaction log in a single transaction. For external speaker journeys (congress submissions like LATAM LIM, workshops). Caller must have manage_partner OR manage_member at organization scope. Replaces the manual SQL playbook from #97 W1. Issue #97 W3 G4.
detect_inactive_membersFind active members with no attendance in inactivity_threshold_days (default 180, configurable via site_config). Returns candidates list. Set dry_run=false to notify managers proposing inactive transition. Admin only.
dismiss_visitor_leadMark a visitor_lead as dismissed (admin discard). Cannot dismiss from terminal states (already promoted/dismissed). Admin only.
exec_cert_timelineReturns cohort timeline of certificate issuance across N months: rolling pct of cohort that earned tier 1/2 + avg days-to-tier. Used in exec dashboards to track progression health.
exec_cycle_reportReturns rich cycle report (admin/exec): aggregate KPIs across the cycle (active members, attendance %, certificates issued, knowledge produced). Defaults to 'cycle3-2026'.
invite_alumni_to_re_engageMove pipeline entry from staged → invited. Sends notification to alumni with optional custom message. Admin only.
invite_to_initiativeInvite one or more members to an initiative. Owner/coordinator (when kind_scope allows) OR admin (manage_member). Message MUST be at least 50 characters describing role + commitment. Returns per-invitee {created, skip_reason}. Skips invitees already engaged or with pending invitation.
link_idea_to_seriesLiga idea a uma publication_series ativa com optional position. Apenas proposer ou comitê (manage_event/manage_member).
link_initiative_to_driveVincula uma pasta Google Drive a uma iniciativa (tribo, comitê, workgroup, congresso). Diferentes link_purpose: 'workspace' (raiz da iniciativa, default), 'minutes' (atas), 'archive' (histórico), 'shared_resources' (templates). Authority: manage_member OR can(write, initiative). Idempotent.
link_my_credly_badgeLiga badge Credly ao próprio application ativo. badge_name opcional para tracking.
manage_initiative_engagementAdds, removes, or updates the role of a member in an initiative. Requires manage_member permission for the initiative. When action='add' or action='remove', returns a preview payload unless confirm=true is passed (ADR-0018 W1 + 2026-04-24 p44 extension). 'update_role' does not require confirm — it only mutates the role field on an existing engagement.
mark_member_excusedMark a member as excused (falta justificada) for an event. Tribe leaders can mark their own tribe members. Admins can mark anyone.
propose_publication_ideaPropõe uma idea de publicação no pipeline unificado. Qualquer member ativo. Status inicial: draft. source_type opcional: meeting_action|hub_resource|wiki_page|external_research|experiment|partnership|webinar|ata_decision|other.
register_decisionRegister a meeting decision (semantic kind='decision' with multi-card link fanout). Decisions are auto-completed (status='completed') and resolved immediately. Optional related_card_ids[] creates board_item_event_links of link_type='decision' to each card. Requires manage_event (ADR-0047, #84 Onda 2). Distinct from create_action_item with kind='decision' in that this RPC's signature is decision-first (title required) and supports card fanout.
register_exclusion_assetAdds an Anexo I row (a pre-existing work) to one of the caller's draft/active PI-exclusion declarations. DIGEST-ONLY: pass the SHA-256 of the work — the file itself never leaves the Núcleo (compute locally, e.g. `sha256sum file`). The asset enters the OTS pipeline as 'unstamped'; the daily cron stamps it (pending) and later anchors it on Bitcoin (confirmed). #569/ADR-0101.
resolve_action_itemResolve a meeting action item. Optionally carry-forward to a future event (creates a new linked action item there). Resolution_note recommended for audit trail. Requires manage_event (ADR-0046, #84 Onda 2 partial).
resolve_document_commentMark a document comment as resolved, with optional resolution note. Permission: original commenter OR document curator OR approval chain signer.
respond_re_engagementAlumni self-action: accept or decline a re-engagement invitation. Only the invited member can respond.
review_change_requestAdvance a CR through its review lifecycle. action: 'approve' | 'reject' | 'request_changes' | 'withdraw' | 'resubmit' ('implement' is retired — publish a Manual version via the 2-of-N flow instead). Authority: manage_platform / curate_content / sponsor / chapter_liaison. Prefer semantic tool change_request action='review'.
review_initiative_requestReview a self-service join request as owner/coordinator (or admin). decision='approve' creates engagement with metadata.source=self_service_request_approved and review_authority audit. decision='decline' marks invitation declined with reviewer note. Owner-initiated invites use respond_to_initiative_invitation by invitee directly — this RPC is for self-service requests only.
review_tribe_requestApprove or decline a pending tribe join request, as the tribe leader (or GP). decision='approve' creates the researcher's tribe engagement (and atomically off-boards any OTHER active tribe engagement they had — #1263 atomic switch); decision='decline' rejects it. Authority enforced server-side (tribe volunteer/leader OR GP manage_member). Capacity is enforced (leader + 7 researchers = 8 seats). invitation_id comes from list_tribe_pending_requests. Optional note is recorded on the decision.
set_tribe_videoSet (or clear) a tribe's intro/presentation video. Writes BOTH sources atomically — tribes.video_url/duration (the projection the picker reads) AND initiatives.metadata (V4 primitive) — so they never drift (#1229, kills the manual dual-write). Authority: the tribe's own leader OR manage_platform. Pass an empty url to clear the video. Reflects on the tribe picker on next load, no deploy needed.
submit_change_requestSubmit a change request (CR) proposing edits to Manual sections or GC overrides. cr_type: 'editorial' | 'operational' | 'structural' | 'emergency' (RPC-validated; the legacy 'manual_edit'/'gc_override'/'policy_update' were rejected on every call). impact_level: 'low' | 'medium' | 'high' | 'critical'. Routes to review queue per type. Prefer the semantic change_request tool.
submit_chapter_needSubmit a need or request for your chapter. Board members, sponsors, and liaisons only.
unlink_initiative_from_driveSoft-unlink pasta Drive de iniciativa (preserva histórico via unlinked_at). Authority: manage_member OR can(write, initiative).
withdraw_from_initiativeSelf-service exit from an initiative. Caller's active engagement is revoked with reason logged. Reason MUST be at least 10 characters (audit trail). BLOCKED if you are the only active holder of a required engagement kind for this initiative (e.g. sole study_group_owner) — transfer the role first via an admin/coordinator. Returns a preview payload unless confirm=true (ADR-0018 W1). Irreversible after confirm.
board_overviewSemantic board reader (absorbs list_boards/get_board_detail/get_board_activities and folds in the get_board_or_initiative_context bridge). Set `scope`: 'list' (all boards visible to you), 'board' (board_id → fields + members + tags + recent lifecycle events), 'tasks' (board_id → every card's checklist activity in ONE call: who owns it, whether it is done, when it is due), 'initiative' (initiative_id or tribe_id → initiative + primary board + sample cards + engagement count). #785: confidential initiatives are excluded from 'list' (via RLS) and fail-fast on 'board'/'tasks'/'initiative'. Read-only, stable envelope.
card_checklistSemantic checklist writer for a board card (absorbs add/update/complete/assign/delete_checklist_item — 345 calls/180d, the platform's #1 write path). Set `action`: 'add' (card_id + text), 'update' (checklist_item_id; text/position/target_date), 'complete' (checklist_item_id; completed default true), 'assign' (checklist_item_id + assigned_to), 'delete' (checklist_item_id). Authority: can_manage_card_checklist (#1778) — write_board OR being the card's assignee/author/contributor OR a board admin/editor OR comms team on a communication board; EXCEPT 'complete', whose RPC self-gates to the activity owner. #785 confidential-visibility (ADR-0105) enforced as a contract: the target card must be visible to you. Stable envelope {ok,data,summary,warnings,next_actions,audit}.
card_commentSemantic comment writer for a board card (absorbs create/update/delete_card_comment). Set `action`: 'create' (board_item_id + body; optional parent_comment_id + mentioned_member_ids for @mentions), 'update' (comment_id + body; author only), 'delete' (comment_id; soft-delete, author OR write_board OR GP). Authority is enforced by the RPC per action; the semantic layer ADDS the #785 confidential-visibility gate on the parent card (a gap in the raw tools). Stable envelope.
card_getSemantic 360° card read (absorbs get_card_detail/get_card_timeline/get_card_full_history/list_card_comments/list_card_checklist/list_card_drive_files). `detail_level`: 'summary' = card detail only; 'standard' (default) = + checklist + comments + timeline; 'full' = + drive files + cross-entity history (meetings/decisions/showcases). #785 fail-fast: the card must be visible to you (fixes the board_item_checklists read gap). Read-only, stable envelope; partial-source failures surface in `warnings` (never masked).
card_searchSemantic card finder (absorbs list_board_cards/search_board_cards/get_my_assigned_cards/list_orphan_card_assignments). Set `mode`: 'board' (board_id; optional status), 'text' (query; tribe_id or initiative_id — defaults to your tribe), 'mine' (cards assigned to you across boards), 'orphans' (admin: cards still assigned to offboarded/inactive members; optional tribe_id/chapter). #785: 'board' and 'text' fail-fast if the target board/initiative is confidential and you are not engaged; 'mine'/'orphans' are RLS/authority-scoped. Read-only, stable envelope.
card_writeSemantic card writer (absorbs create/update/move/move_to_board/archive/restore/delete/duplicate/mirror/forecast — 297 calls/180d). Set `action`: 'create' (board_id + title), 'update' (card_id + any of title/description/assignee_id/reviewer_id/due_date/tags/forecast_date/is_portfolio_item), 'move' (card_id + status; optional position/reason), 'move_to_board' (card_id + target_board_id), 'archive' (card_id; DESTRUCTIVE→confirm), 'restore' (card_id; optional restore_status), 'delete' (card_id + reason; DESTRUCTIVE→confirm), 'duplicate' (card_id; optional target_board_id), 'mirror' (card_id + target_board_id), 'forecast' (card_id + forecast_date + justification), 'assign_role' / 'unassign_role' (card_id + member_id + assignment_role author|reviewer|contributor|curation_reviewer — quem e autor/revisor/contribuidor DAQUELE card; le-se em card_get.assignments). Authority: write_board, BOARD-SCOPED via the #785 gate on the target card/board (fixes the Wave-0 resourceless-write findings for delete/duplicate/mirror). archive+delete return a preview unless confirm=true (ADR-0018). Stable envelope.
force_grant_curation_drive_accessConcede (ou re-concede) acesso temporário 'commenter' aos curadores nos artefatos Drive de um card em curadoria, executando via Service Account imediatamente. Authority: manage_platform (GP). Normalmente o grant é automático no handoff para curation_pending; use para remediar falhas. Mesma observação 403-até-elevação-de-papel do #209. Retorna resultado por linha.
force_revoke_curation_drive_accessRevoga o acesso temporário de Drive concedido aos curadores nos artefatos de um card (executa o DELETE via Service Account imediatamente). Authority: manage_platform (GP). Normalmente a revogação é automática quando o item sai da curadoria; use para remediação. Retorna resultado por linha.
get_application_onboarding_pctReturns onboarding completion percentage (0-100) for a specific application. Lightweight summary — use get_onboarding_status for the per-step breakdown.
get_board_activitiesReturns recent board LIFECYCLE events (status changes, reviews, curation actions) — not the cards' checklist activities. For those, use board_overview scope='tasks'.
get_board_detailReturns rich board detail: board fields (columns, scope, initiative, SLA config) + members with roles + available tags. Single call — use for board investigation/LLM context before operating on cards.
get_board_drive_linksLista pastas Drive vinculadas (ativas) a um board. Retorna {board_id, drive_links:[{id, drive_folder_id, drive_folder_url, drive_folder_name, linked_by_name, linked_at}], fetched_at}. Qualquer member autenticado pode listar.
get_board_or_initiative_contextSummarize an initiative/tribe/board in one call: initiative metadata, primary board (sample of 5 recent cards + status breakdown), next 3 upcoming events, last 2 meeting notes (300-char preview), and active engagement count. Pass exactly one of initiative_id (UUID) or tribe_id (1-8). Stable envelope. Read-only.
get_candidate_onboarding_progressTribe leader or admin: follow up a specific new member's onboarding progress.
get_card_detailReturns rich card detail: card fields + checklist items + multi-assignees + last 10 timeline events. Single call instead of multiple — use for card investigation/LLM context.
get_card_full_historyReturns 360° timeline for a board card: lifecycle events, meeting links, action items, showcases, curation reviews. Closes #84 GAP 4 — answers 'quais reuniões discutiram este card?', 'quais decisions impactaram?', 'quem apresentou em showcase?'. Authenticated only.
get_card_timelineReturns the full audit timeline for a card: status transitions, reviews, SLA events, with actor and reason. Ordered oldest → newest. Use to explain history to members or audit decisions.
get_chapter_dashboardChapter-facing dashboard returning 8 blocks: people (by_role/by_status) + output (cards completed + publications) + attendance (rate + hub participation) + hours (PDU equivalent) + certifications (PMP/CPMAI/total) + partnerships + gamification (top contributors) + members detailed list. Pass chapter_code (e.g., 'PMI-GO') OR omit to get caller's own chapter. Gated: chapter_board sees own chapter; manage_member sees any.
get_cpmai_leaderboardReturns CPMAI course leaderboard. Optional course_id filter — when omitted, returns aggregate across all CPMAI courses. Use to gauge course completion progress.
get_curation_dashboardReturns curation workflow dashboard: pending items, SLA compliance, reviewer stats. Requires curation or board-write authority.
get_curation_queue_stateReturns the curation queue with normalized per-item state: curation_status, SLA, review round/count, per-caller eligible_actions, and a caller capability block. For curate_content/manage_platform callers each item also carries Drive grant state (drive_permission_status missing|pending|error|ready, drive_grant_role, drive_grant_errors, missing_drive_access, temporary_access_expires_or_revokes_on). Read access requires curate_content, write_board, or participate_in_governance_review.
get_in_dashboardIntegração Nacional consolidated view. Returns chapter count grouped by mou_stage (prospecting/agreed/mou_drafted/mou_sent/mou_signed/active) + per-chapter detail (next_action, follow_up_date, last_interaction_at). Use to track 14+ PMI BR chapters MOU lifecycle. Gated by view_internal_analytics OR manage_partner.
get_onboarding_dashboardReturns admin dashboard: how many members are at each onboarding step, who is overdue. Admin only.
get_onboarding_statusReturns onboarding status for a specific selection application: per-step state with completion + evidence + SLA. Used by candidate (their own application) or committee (any in their cycle). Defines what step is the next blocker.
get_portfolio_healthReturns quarterly portfolio health: KPIs with targets vs actuals, traffic-light status. Admin/Sponsor only.
get_portfolio_itemsList portfolio items (board_items where is_portfolio_item=true). Optional filters by tribe_id, status, cycle_code. Returns id, title, status, baseline_date, forecast_date, due_date, portfolio_kpi_refs, cycle_code. Gated by view_internal_analytics OR view_chapter_dashboards. Use for executive portfolio overview.
get_portfolio_overviewReturns the executive portfolio overview — all boards, cards, statuses, and overdue items. Admin/GP only.
get_portfolio_planned_vs_actualCompare baseline_date vs actual completion date for portfolio items in a cycle. Returns variance metrics (early/on_time/late). Used for delivery quality analysis.
get_portfolio_timelineTimeline view of portfolio items by month. Returns aggregated counts (planned/in_progress/done) grouped by due_date month. Used for executive trend analysis. Gated by internal RPC auth.
get_pre_onboarding_leaderboardReturns the leaderboard of pre-members (candidates in onboarding) ranked by step completion + XP earned during selection. Useful for cycle organizers tracking candidate engagement before formal selection.
get_selection_dashboardAdmin/GP/curator: returns selection cycle dashboard — cycle metadata + per-application status + aggregate stats. Defaults to most recent cycle. Pass cycle_code to view a specific past cycle.
get_tribe_dashboardReturns a full tribe dashboard: members, cards, attendance, XP, meetings. Leaders and admins.
list_board_cardsList all cards on a specific board, optionally filtered by status. Cross-board read (any board the caller can see via RLS). For the caller's own tribe board use get_my_board_status instead.
list_boardsReturns all active boards with their IDs, names, scope, and tribe. Use this to find board_id for create_board_card.
list_card_checklistReturns the checklist (activities) for a card, ordered by position. Lightweight read — for full card context use get_card_detail.
list_card_commentsLista comentários de um card (skips soft-deleted). Returns thread-flat com author info (name + photo_url). Order ascending by created_at.
list_card_drive_filesLista arquivos Drive vinculados a um card via plataforma. Retorna metadata (filename, size, mime_type, uploaded_by, drive_file_url). Skips soft-deleted.
list_curation_drive_grantsLista os grants temporários de Drive da curadoria (#301): por status/card, com curador, e-mail, arquivo, permission_id e erro do Google. Authority: manage_platform (GP). status omitido = todos. O grant é automático no handoff para curation_pending; esta tool é observabilidade.
list_orphan_card_assignmentsLists unresolved board cards still assigned to offboarded/inactive/observer members. Admin triage for reassignment. Filters by chapter or tribe_id.
portfolio_reportSemantic portfolio/PMO rollup (absorbs get_portfolio_overview/get_portfolio_items/get_portfolio_health/get_portfolio_timeline/get_portfolio_planned_vs_actual/exec_portfolio_board_summary). Set `report`: 'overview' (default, executive dashboard), 'items' (portfolio-flagged cards; filters tribe_id/status/cycle_code), 'health' (quarterly KPI traffic-light; cycle_code), 'timeline' (items by month), 'planned_vs_actual' (baseline vs actual variance; cycle), 'board_summary' (per-board executive view). Authority: manage_member OR view_partner (admin/sponsor). Confidential initiatives are excluded inline by the underlying RPCs. Read-only, stable envelope.
search_board_cardsSearches board cards by keyword (full-text). Specify tribe_id or uses your tribe.
selection_dashboardSelection-cycle command surface (absorbs get_selection_dashboard/cycles/rankings/pert_cutoff_summary/evaluator_calibration_stats/selection_health/selection_pipeline_metrics/selection_committee/cutoff_dispatch_health/selection_routing_overview/get_interview_booking_funnel). Set `scope`: 'dashboard' (cycle_code), 'cycles', 'rankings' (cycle_code [+ track]), 'cutoff' (cycle_id [+ score_column]), 'calibration' (cycle_code), 'health', 'pipeline' (cycle_id [+ chapter]), 'committee' (cycle_id), 'routing' (cycle_id — #1590 onda C: quem está cadastrado para roteamento, com os três eixos separados, motivo de não-roteável e contagem de despachos; a URL crua só sai para a própria linha e para manage_member), 'funnel' (cycle_id — #1590 onda D: cada oferta de agenda com o desfecho DERIVADO na leitura; separa 'abriu a agenda e não reservou' de 'nunca abriu', que até esta onda tinham registro idêntico. Linhas anteriores à instrumentação saem como 'pre_instrumentation' e NÃO afirmam falta), 'dispatch'. Authority is enforced by each RPC (view_internal_analytics / view_aggregate_analytics; 'routing' and 'funnel' = committee-of-cycle | sponsor | manage_member | superadmin) with ADR-0109 conflict-of-interest recusal (an active candidate in the cycle is blocked). Candidate PII stays behind those gates. Stable envelope.
add_checklist_itemAdd a checklist activity to a card. Optionally assign it to a member with target date. Auto-assigns position (end of list) if omitted.
archive_cardArchives a card (soft delete, status='archived') with audit reason. Preserves the row — use delete_card for permanent deletion. RPC performs the admin/leader authority check. Returns a preview payload unless confirm=true is passed (ADR-0018 W1).
assign_checklist_itemAssign a checklist activity to a member with an optional target date. Wraps RPC that already validates leader/GP/card-owner authority.
assign_curation_reviewerAssign a reviewer to a board item for a curation review round. Caller requires participate_in_governance_review; the reviewer must hold curate_content (or co_gp). The RPC blocks designating the item author as the sole reviewer for the round.
complete_checklist_itemToggle a checklist activity as completed (or reopen). RPC allows the activity owner (assigned_to) and also leader/GP/card owner.
complete_onboarding_stepMarks an onboarding step as completed. Optionally attach metadata (evidence URL, notes).
convert_action_to_cardAtomic flow: convert an open action item into a new board card. Creates the card in target board, links action_item.board_item_id, and inserts board_item_event_links (link_type='action_emerged') to preserve trail. Defaults: title from action description (first 80 chars), assignee + due_date inherited. Requires write_board (ADR-0047, #84 Onda 2).
create_board_cardCreate a new card on a board. If board_id is omitted, uses your tribe's default board.
create_card_commentCria comentário em board_item. Suporta thread (parent_comment_id) + @menções (notification immediate aos mencionados). Authority: rls_is_member OR write_board OR comms team em board domain='communication'. Mention IDs em mentioned_member_ids[] geram notification transactional_immediate; assignee do card recebe digest_weekly.
create_mirror_cardCreate a mirror of a card on a different board. The mirror is a linked copy for cross-board visibility (e.g., portfolio mirror of a tribe card). RPC enforces write access to the target board.
delete_cardDeletes a card and its checklist/assignments permanently. Reason is required for audit. Prefer archive_card for non-destructive soft-delete. Destructive — returns a preview payload unless confirm=true is passed (ADR-0018 W1).
delete_card_commentSoft-delete (deleted_at marcado). Authority: autor do comentário OR write_board OR manage_member (admin override). Conteúdo preservado para audit.
delete_checklist_itemDeletes a checklist item permanently. Optional reason is recorded in the card timeline.
detect_onboarding_overdueDetects members whose onboarding steps passed SLA. Admin only. Returns list for follow-up action.
dismiss_onboardingDismisses remaining onboarding prompts for experienced members who don't need guided flow.
duplicate_cardDuplicate a card (copy title/description/tags/labels/due_date into a new card). Optionally place the copy on a different board. Checklist and assignments are NOT copied by default (RPC behavior).
exec_portfolio_board_summaryExecutive summary by project_board: counts by status, portfolio item ratio, recent activity. Used for cross-board executive view (GP/sponsor read).
link_board_to_driveVincula uma pasta Google Drive a um board. PM/admin operation. Idempotent (reuse on duplicate). Para integração com pasta institucional do Núcleo (nucleoia@pmigo.org.br Workspace) — ver docs/SETUP_GOOGLE_DRIVE_INTEGRATION.md para PM-side setup. Authority: manage_member OR board_admin.
move_cardMove a card to a different status column, optionally setting position within the column and a reason for audit trail. Richer than update_card_status (which only changes status). Use this when you need to record why a card moved.
move_card_to_boardMove a card from its current board to a different board. Preserves card content and checklist; reassigns board_id. Requires write_board on both source and target boards (enforced by RPC).
register_card_drive_fileRegistra arquivo Drive existente como anexo de card (board_item_files). Útil quando arquivo já foi feito upload externamente (Drive nativo) ou via upload_text_to_drive_folder. Authority: rls_is_member (qualquer authenticated). Idempotência: NÃO — duplicates are inserted (manage via UI ou unregister).
restore_cardRestore an archived card back to an active column. Default target status is 'backlog'. RPC performs the admin/leader authority check.
submit_curation_reviewSubmit a structured curation review for a board item in curation_pending. decision ∈ approved|returned_for_revision|rejected. On reaching reviewers_required approvals the item auto-publishes; returned_for_revision/rejected route it back to draft with appended feedback. Requires participate_in_governance_review.
unlink_board_from_driveSoft-unlink pasta Drive de board (preserva histórico via unlinked_at). Authority: manage_member OR board_admin.
update_card_commentEdita corpo de comentário próprio. Apenas o autor pode editar (não admin). Marca edited_at. Body required.
update_card_during_meetingAtomic card mutation during a meeting. Three modes: (a) status change via new_status; (b) field updates via fields_json string; (c) discussion-only (both omitted, just creates a 'discussed' link). Wraps move_board_item + update_board_item (existing auth + lifecycle events preserved). Requires write_board. ADR-0049 (#84 Onda 2).
update_card_fieldsUpdate one or more card fields partially: title, description, assignee_id, due_date, tags (array), labels (jsonb), reviewer_id, baseline_date, forecast_date, is_portfolio_item. RPC checks field-level permissions (e.g., only Leader/GP can change assignee).
update_card_forecastUpdate the forecast_date of a card with a mandatory justification. Used to renegotiate a portfolio-tracked deadline. RPC typically requires Leader/GP authority and records the justification in the timeline.
update_card_statusMove a card to a different status column.
update_checklist_itemUpdate a checklist item: text, position, target_date. Use assign_checklist_item to change assignee or complete_checklist_item to toggle done.
admin_dashboardGP/analytics cockpit (absorbs get_admin_dashboard/get_annual_kpis/get_chapter_dashboard/get_chapter_needs/get_in_dashboard/get_vep_divergence_report/get_volunteer_funnel(_stats)/get_role_transitions/get+exec_cycle_report/get_cycle_evolution/get_public_impact_data/list_ai_suggestions/list_ai_processing_log). Set `scope`: 'admin', 'annual_kpis' ([cycle, year]), 'chapter' (chapter), 'chapter_needs' ([chapter]), 'in_dashboard', 'vep_divergence', 'volunteer_funnel' ([cycle_code]), 'volunteer_funnel_stats' ([cycle_id]), 'role_transitions' ([cycle_code, tribe_id, chapter]), 'cycle_report' ([cycle]), 'exec_cycle_report' ([cycle_code]), 'cycle_evolution', 'public_impact', 'ai_suggestions' (application_id [+ evaluation_type, only_pending]), 'ai_processing_log' ([application_id, purpose, status, limit]), 'unlinked_accounts' — contas de acesso sem cadastro apontando para elas (e-mail sempre MASCARADO; o cron semanal da #2285 avisa, esta e a superficie para agir). Authority enforced by each RPC (manage_platform / view_chapter_dashboards / view_internal_analytics; COI recusal on vep_divergence). Numbers come from the live RPC (grounding rule — never recite). Read-only. Stable envelope.
get_admin_dashboardReturns the admin dashboard: member counts, tribe stats, recent activity, system health.
get_member_offboarding_recordDetalhe restritoInternal admin operation — full details available to authorized members on request.
get_offboarding_dashboardDetalhe restritoInternal admin operation — full details available to authorized members on request.
list_offboarding_recordsDetalhe restritoInternal admin operation — full details available to authorized members on request.
offboard_memberDetalhe restritoInternal admin operation — full details available to authorized members on request.
record_offboarding_interviewDetalhe restritoInternal admin operation — full details available to authorized members on request.
attendance_recordSemantic attendance writer (absorbs register_attendance 132 — the #3 tool overall —, mark_member_excused, bulk_mark_excused, register_showcase 17 — 166 calls/180d). Set `action`: 'register' (event_id + member_ids — batch-capable; present=false is a no-op by design, absence is the default state), 'excuse' (event_id + member_id + reason; excused=false reverts), 'bulk_excuse' (member_id + date_from + date_to + reason — excuses a member across a date range), 'showcase' (event_id + member_id + showcase_type — awards 15-25 XP). Authority: manage_event scoped to the event's initiative + #785. Attribution: the RPC records registered_by/marked_by, which is what distinguishes self check-in from a leader's batch (#1322) — NOT checked_in_at. Stable envelope.
attendance_reportSemantic attendance reader (absorbs get_my_tribe_attendance, get_attendance_ranking, get_my_attendance_history, get_my_attendance_hours, get_event_attendance_health, get_cycle_attendance_overview — 20 calls/180d). Set `scope`: 'tribe' (attendance grid for a tribe/initiative), 'ranking' (members by attendance rate), 'mine' (your own history), 'hours' (your — or, with view_internal_analytics, another member's — attendance hours for a cycle), 'health' (org-wide events missing attendance), 'cycle' (per-cycle overview). Read-only. Self scopes are free; cross-member/cross-tribe reads require view_internal_analytics, and the tribe grid ADDS the #785 confidential gate that the underlying RPC lacks. Stable envelope.
attendance_sealFecha (sela) a lista de presenca de um evento, ou reverte o selo. Selar materializa `present=false` para todo elegivel SEM registro: e escrita em massa no historico de pessoas reais, e sem selo a plataforma nao consegue afirmar que alguem faltou (#1657/#1710). Set `action`: 'list' (o ensaio completo do ciclo — por evento: coorte elegivel, quantos ja tem registro, quantas faltas seriam gravadas e o motivo de bloqueio), 'seal' (event_id), 'unseal' (event_id — remove SO as linhas criadas pelo selo e ainda intocadas; quem foi marcado presente ou justificado depois PERMANECE). Sem `confirm=true`, seal/unseal devolvem o ensaio daquele evento em vez de executar (ADR-0018 W1). Autoridade: manage_event ESCOPADO ao evento (`_can_manage_event`) + #785; um lider de tribo nao alcanca evento de outra tribo. Os dois atos ficam em admin_audit_log. Envelope estavel.
event_searchSemantic event reader (absorbs list_initiative_events 41, get_event_detail 31, get_upcoming_events 12, get_near_events 7 — 91 calls/180d). Set `scope`: 'upcoming' (next 7 days, org-wide), 'near' (events inside a check-in window, self), 'initiative' (filtered list for a tribe/initiative — types/date range/has_minutes/has_recording/has_attendance + pagination), 'detail' (one event, full record — requires event_id). Read-only. Confidential initiatives (ADR-0105 / #785) are excluded by the source RPCs and, for 'detail', re-checked fail-fast at this layer. Stable envelope.
event_writeSemantic event writer (absorbs create_tribe_event, update_event_instance 29, drop_event_instance — 36 calls/180d). Set `action`: 'create' (title + date; optional type/duration/tribe_id/initiative_id/time_start/meeting_link), 'update' (event_id + any of date/time_start/duration_minutes/meeting_link/notes/agenda_text), 'drop' (event_id; DESTRUCTIVE→confirm; force_delete_attendance to remove attendance too). Authority: manage_event RESOURCE-SCOPED to the event's initiative + the #785 gate — an initiative-scoped leader can no longer edit or delete another initiative's events (the raw tools gated on a resourceless can(), fixed raw-side in migration 455 and baked as a contract here). Stable envelope.
get_attendance_rankingReturns the attendance ranking — members sorted by attendance rate and total meetings.
get_cycle_attendance_overviewGP/co-GP: presenças/faltas cross-membro filtrável por ciclo. Sem cycle_code = ciclo corrente (membros ativos); com cycle_code (ex.: 'cycle_3') = snapshot member_cycle_history. Retorna present/absent/excused/eligible + attendance_pct (percentual 0-100, 1 casa) por membro; attendance_rate (fracao 0-1) segue publicada e sai na limpeza do #1656. Authority: manage_member OR view_internal_analytics.
get_event_attendance_healthHealth monitor for stale events with zero attendance marked. Returns count + sample of events past 24h-14d that have NO attendance row. Used by GP/deputy to spot meetings that didn't happen (líder forgot to cancel) OR meetings where attendance forgot. Pattern 43 reuse.
get_event_detailReturns full event detail: agenda, minutes, action items, attendance.
get_near_eventsReturns events happening soon (within a time window). More immediate than get_upcoming_events.
get_upcoming_eventsReturns events scheduled in the next 7 days.
list_initiative_eventsLista eventos passados/futuros de uma tribo ou iniciativa. Resolve 8+ workflows do líder bloqueados antes (encontrar event_id histórico, filtrar fantasmas sem attendance, atas pendentes, gravações, action items abertos). Filtros: tribe_id (1-8) ou initiative_id (UUID), types[] ('tribo','geral','lideranca','workshop','kickoff'), date_from/date_to (default últimos 90d), has_minutes/has_recording/has_attendance (true/false flags). Permission: admin (all), TL (own tribe + general), researcher (own tribe), sponsor/liaison (general). Retorna {total_count, events:[{id, date, time_start, type, title, attendance_count, has_minutes, action_items_open, ...}]} paginado (limit max 200).
list_meeting_action_itemsList meeting action items with filters. Use cases: 'my open actions', 'unresolved actions for event X', 'all decisions in cycle 3', etc. Returns enriched data with event/board_item titles + assignee/resolver names. Limit 200 rows. ADR-0046 (#84 Onda 2 partial). Authenticated members can see all (privacy via event RLS at frontend join time).
meeting_actionsSemantic action-item + decision tool for meetings (absorbs create_action_item 21, resolve_action_item, list_meeting_action_items, convert_action_to_card, register_decision 15, get_decision_log — 37 calls/180d). Set `action`: 'create' (event_id + description; optional assignee_id/due_date/kind), 'resolve' (action_item_id; optional resolution_note, or carry_to_event_id to carry it into a later meeting), 'list' (filter by event_id/assignee_id/status/kind/unresolved_only), 'convert_to_card' (action_item_id + board_id — turns an action into a board card), 'decision' (event_id + title; optional description + related_card_ids), 'decision_log' (the governance ADR log from the wiki; optional text filter). Authority: manage_event scoped to the event's initiative (migration 455 closed the resourceless gate on create/resolve/decision); convert_to_card additionally needs write_board. Stable envelope.
meeting_minutesSemantic meeting-minutes tool (absorbs create_meeting_notes 38, meeting_close, get_meeting_notes, get_meeting_preparation — 43 calls/180d). Set `action`: 'read' (recent minutes for a tribe/initiative), 'prepare' (pre-meeting briefing for one event: agenda, expected attendees, pending actions, open cards, recent meetings), 'write' (event_id + content — creates/updates the minutes; decisions/action_items are appended as newline-separated lines), 'close' (event_id — posts the minutes and returns action/decision counts + drift signal; optional summary and suggested_champion_ids). Authority: manage_event scoped to the event's initiative for writes (the raw meeting_close/create_meeting_notes path was resourceless before migration 444) + #785 on reads. NOTE: the old get_agenda_smart was dropped (#1383 W3) — action='prepare' is its replacement. Stable envelope.
create_tribe_eventCreate a new tribe meeting or event. Leaders and managers only.
drop_event_instanceCancels a specific event instance (e.g. a tribe meeting that did not happen). Requires tribe leader of that tribe, or admin/manager. By default rejects if attendance exists; pass force_delete_attendance=true to remove attendance records atomically first. Destructive — returns a preview payload unless confirm=true is passed (ADR-0018 W1).
register_attendanceRegister attendance for a member at an event.
update_event_instanceEdit a specific event instance (date, time, duration, link, notes). Requires tribe leader or admin/manager.
certificate_manageCertificate lifecycle (absorbs issue_certificate + update_certificate + verify_certificate + get_all_certificates + get_my_certificates + exec_cert_timeline). Set `action`: 'issue' (member_id + title + type [+ cycle, language, period_start, period_end, function_role, description] — DESTRUCTIVE→confirm), 'update' (cert_id + typed fields — confirm), 'verify' (code — public), 'list' ([status, search, include_volunteer_agreements] — admin), 'my' ([include_volunteer_agreements] — self), 'timeline' ([months] — admin). Inputs are validated BEFORE dispatch (title required, type/language enums, cycle coerced to int) so a bad payload returns a clean error instead of a DB constraint crash (root cause of the 18/27 issue_certificate failures). Authority: curate_content / manager / superadmin (issue/update/list/timeline). NOTE: counter_sign stays RAW — countersign is the Dir. de Voluntariados' exclusive act, never automated. Stable envelope.
document_version_writeAuthor governance document versions (absorbs propose_new_version + edit_document_version_draft → the single upsert_document_version RPC, plus delete_document_version_draft + lock_document_version + propose_manual_version + confirm_manual_version + cancel_manual_version_proposal + recirculate_governance_doc). Set `action`: 'create' (document_id + content_html [+ content_markdown, version_label, notes]), 'edit' (version_id + content_html [+ ...]), 'delete' (version_id — DESTRUCTIVE→confirm), 'lock' (version_id + gates[] [+ change_class]), 'propose_manual' (version_label [+ notes]), 'confirm_manual' (proposal_id — publishes the Manual→confirm), 'cancel_manual' (proposal_id [+ reason]), 'recirculate' (chain_id [+ dry_run(default true), recipient_emails]). Authority: manage_member for version drafts/lock/recirculate, manage_platform for the manual-version 2-of-N flow. Stable envelope.
get_all_certificatesAdmin search of certificates (all members). Optional filters: status (active|revoked|all), search (name/email match), include_volunteer_agreements (default false — VEPs are noisy). Authority: enforced server-side via certificate ACL.
get_governance_change_logUnified chronological feed across 6 governance sources (change_requests, document_versions, approval_chains, approval_signoffs, pii_access_log, admin_audit_log). Privileged callers (view_pii) see all events; non-privileged see only their own actor/target scope. Use for LGPD Art. 37 audit and compliance reviews. Set include_payload=false for lightweight timeline (saves ~60% bandwidth).
get_governance_docsReturns governance documents: manual, agreements, volunteer terms.
get_governance_document_bodyRead the full normative body (clauses) of a governance document — the current published version — as sanitized HTML AND server-rendered Markdown, plus section_anchors for clause citation (e.g. 'Cláusula 12', 'Art. 1'). Use to ground summaries, minutes, e-mails or derived instruments in the actual text. Mirrors the same visibility authority as the platform's governance reader. Content is for informational and drafting-assistance purposes only and does NOT constitute legal advice; documents in 'under_review' status are subject to change.
get_manual_sectionReturns a specific section of the Governance Manual by number or keyword search.
get_pending_ratificationsReturns governance documents pending YOUR ratification signoff. Each row includes chain status, version label, locked date, gates config, and the list of gate_kinds you are eligible to sign (curator | leader | president_go | president_others | cert_director_go | member_ratification | external_signer). Use sign_ip_ratification (via native UI) to actually sign.
get_version_diffCompare two document versions. Returns pre_computed_diff (chars_delta, lines_added/removed — auto-populated via trigger), version metadata, and optionally full content. Set include_content=false for lightweight response (~5% of full size) when you only need stats. Validates both versions belong to same document.
list_document_versionsReturns version history of a governance document (newest first). Each row has version_number, label, authored_by, locked_at, is_current, content_html_length, comments_total + comments_unresolved. Use for review UX and version diff setup.
list_my_signaturesReturns YOUR signature history (approval chain gates + document ratifications). Includes document title, version, chain status, signed timestamp, certificate id. LGPD Art. 18 compliance surface.
recirculate_governance_docRe-circulação de documento governance pós-redraft (Material change). Locks pending draft, supersedes current approval_chain, creates new chain with same gates, and emails recipients via parametrized template. Use dry_run=true para preview (default). Default recipients = all members eligible to sign first gate (curators for most docs); pass recipient_emails para override explicito. Requires manage_member authority. Sediment p88 ADR-0068 Round 5 (#122).
signature_flowIP-ratification / cooperation-agreement approval-chain signing (absorbs sign_ratification_gate[→sign_ip_ratification] + get_pending_ratifications + list_my_signatures[→get_my_signatures] + get_chain_audit_report). Set `action`: 'sign' (chain_id + gate_kind [+ signoff_type, sections_verified(JSON string), comment_body, ue_consent_49_1_a]), 'pending' (docs awaiting YOUR signoff), 'my_signatures' ([include_superseded] — your signature history), 'chain_audit' (chain_id — full signoff timeline). Authority: the RPC scopes each gate to eligible signers + sequential order; EU signers need Art. 49(1)(a) consent for external_signer gates. Stable envelope.
verify_certificateVerifies a certificate's authenticity by its verification code. For a valid, currently-issued certificate returns metadata only: type, title, recipient (holder) name, issue date, issuing organization, and whether it was counter-signed (with date). Issuer and counter-signer individual names are never returned (LGPD minimization, #991); any non-issued code (missing, revoked, rejected, superseded) returns {valid:false} with no further detail. Public endpoint — no authentication required. Use cases: HR validation, external auditors, third-party verification.
cancel_manual_version_proposalCancel a pending Manual version proposal before it gets confirmed. Use case: typo in version_label, contentious CR detected, etc. Logs the cancellation reason in admin_audit_log. Per ADR-0044, only manage_platform holders can cancel.
confirm_manual_versionConfirm and publish a pending Manual version proposal. Phase 2 of 2-of-N approval (ADR-0044). Requires: (1) signer must be DIFFERENT from proposer (2-of-N enforcement), (2) within 24h window from proposal, (3) approved CRs still exist, (4) version_label still unused. On success: marks current Manual as superseded, creates new doc, marks all approved CRs as implemented, notifies chapter board + sponsors, drafts announcement.
counter_sign_certificateGP/manager counter-signs a tier 2 certificate (e.g. final volunteer recognition). Two-step confirm — establishes the second-signature provenance per ADR-0039 countersign subsystem. Irreversible.
delete_document_version_draftDELETE an unlocked draft version permanently. Fails if the version is locked (locked versions are immutable). Records the deletion in admin_audit_log. Requires manage_member authority.
edit_document_version_draftUpdate content of an EXISTING unlocked draft version. Fails if version is locked (immutability). Preserves version_number; optionally updates label/markdown/notes. Requires manage_member authority.
issue_certificateAdmin issues a new certificate to a member. data_json: JSON string com payload (member_id, type, title, period_start, period_end, language, cycle). Two-step confirm gate (ADR-0018 W1) — irreversible.
lock_document_versionLOCK a draft version (becomes immutable) + open an approval_chain with the provided gates. Sets governance_documents.current_version_id. Fails if version is already locked or if a chain exists. Enqueues gate notifications. Requires manage_member authority. #571 Camada 5: optionally classify the version as 'material' or 'editorial' (change_class) — Material change drives re-acceptance (Termo 15.4.4); change_class is frozen once locked.
propose_manual_versionPropose a new Manual de Governança version. Phase 1 of 2-of-N approval (ADR-0044). Creates a pending proposal that must be confirmed by a DIFFERENT manage_platform holder within 24h. Validates approved CRs exist and version_label is unused. Notifies all OTHER manage_platform holders for 2nd signoff. Use confirm_manual_version to publish or cancel_manual_version_proposal to retract.
propose_new_versionCreate a new DRAFT version of a governance document. version_number auto-incremented. Requires manage_member authority. Returns version_id + version_number + version_label. Does NOT start approval chain — use lock_document_version after content is final.
sign_ratification_gateSign a gate on an IP ratification or cooperation agreement approval chain (ADR-0016). signoff_type can be 'approval' or 'rejection'. Optional sections_verified jsonb and comment. UE consent flag required for external_signer gates.
update_certificateAdmin updates editable fields of an existing certificate. updates_json: JSON string com partial update. Confirm gate — changes are audit-logged.
get_chain_audit_reportDetalhe restritoInternal admin operation — full details available to authorized members on request.
comms_postCommunications write surface (absorbs schedule_comms_post/cancel_scheduled_comms_post/list_scheduled_comms_posts/send_notification_to_tribe). Set `action`: 'schedule' (channel+media_type+payload+scheduled_at), 'cancel' (id), 'list' (channel?/status?), 'notify_tribe' (title+body). schedule/cancel/list require manage_comms; notify_tribe requires write and broadcasts to YOUR active tribe. WARNING: IG collab/user-tags/story link-stickers and LinkedIn mentions are NOT automatable (#1374) — do them manually in the app. COPY POR REDE (#1495): LinkedIn sem hashtag, sem parágrafo institucional do Núcleo, CTA 'Link do evento:' sem emoji; Instagram leva hashtags e 'link na bio' (URL não é clicável lá). Violação volta em warnings, não bloqueia. Stable envelope.
comms_reportCommunications reporting surface (absorbs get_comms_dashboard/metrics_by_channel/pipeline/pending_webinars/member_comms_card/campaign_analytics/notifications_analytics). Set `scope`: 'dashboard', 'metrics_by_channel', 'pipeline', 'pending_webinars', 'member_card' (query|person_id), 'campaign' (send_id), 'notifications' (window_days). Requires comms authority (manage_comms OR manage_member OR write_board). Confidential-initiative rows are excluded by the underlying RPC gates (mig 447 / comms_pipeline). Stable envelope.
get_campaign_analyticsReturns email campaign analytics: opens, clicks, bounces. Admin/Comms only.
get_comms_dashboardReturns communications dashboard: publications by status/format, backlog, overdue items. Requires comms_leader, admin, or manager role.
get_comms_metrics_by_channelReturns latest communication metrics by channel (LinkedIn, Instagram, YouTube). Comms/Admin only.
get_comms_pending_webinarsReturns webinars that need communication action.
get_comms_pipelineReturns webinars pipeline with promo asset readiness (briefing_doc / sympla_event / promo_kit / comms_kickoff). Comms/Board/Admin only.
get_member_comms_cardReturns a member's COMMS/divulgação card for banners, social posts, and decks: headshot (photo URL), display name, LinkedIn URL, credentials (PMP, PMI-CPMAI, etc.), Credly URL, and active roles/initiatives (for credits). Look up by name (`query`) or `person_id` — if a name matches more than one person it returns a disambiguation list (`ambiguous: true, matches: [...]`). Does NOT return email/phone/address. Includes `comms_clearance` (true when the member signed the volunteer term whose Cláusula 11 authorizes image use; false + `clearance_reason` otherwise — the controller decides usage, the route does not block). Gate: manage_event OR manage_member (comms/event leaders + admin/GP).
list_scheduled_comms_postsLista a fila comms_scheduled_posts (posts agendados/publicados/falhos por canal), com attempts, error e permalink. include_payload=true inclui o corpo completo. Gate: manage_comms.
list_tribe_webinarsReturns webinars for your tribe or chapter.
list_webinar_proposalsLista webinar proposals. Membros veem apenas próprias; comitê (manage_event/manage_member) vê todas. Filter por status opcional.
webinar_manageWebinar proposal lifecycle (absorbs create/update/review/convert_webinar_proposal + list_webinar_proposals + list_tribe_webinars + update_webinar_comms_assets). Set `action`: 'create' (title+format), 'update' (proposal_id), 'review' (proposal_id+decision — manage_event), 'convert' (proposal_id+scheduled_at+chapter_code — manage_event), 'list' (status?), 'list_tribe' (status?), 'update_assets' (webinar_id — comms/board/admin). create/update are open to any active member (RPC scopes proposer/committee). format: palestra|painel|dupla|lightning|workshop. Stable envelope.
cancel_scheduled_comms_postCancela um post agendado ainda pending na fila comms_scheduled_posts (pending → canceled). Posts já published/failed não são canceláveis daqui. Gate: manage_comms.
convert_proposal_to_webinarConverte proposal aprovada em webinar row. Status deve ser approved. Cria webinars row + linka via webinar_id. Requer manage_event.
create_webinar_proposalPropõe um webinar para review do comitê. Status inicial: submitted. format_type: palestra|painel|dupla|lightning|workshop.
review_webinar_proposalComitê review de proposal: approve | reject | mark_review. Requer manage_event. rejection_reason obrigatório quando decision=reject.
schedule_comms_postAgenda post orgânico datado na fila comms_scheduled_posts (drain: cron publish-scheduled a cada 15min). channel: instagram (media_type IMAGE/CAROUSEL/REELS/STORIES) | linkedin (TEXT/IMAGE/VIDEO/ARTICLE/DOCUMENT). payload = corpo do publisher do canal (ex.: REELS {video_url, caption}; CAROUSEL {children:[{image_url}...], caption}; DOCUMENT {document_url, title, text}). Mídia por URL PÚBLICA (bucket comms-media). Valida canal×tipo×payload na hora (não deixa row fadado a falhar no drain). idea_id opcional liga à publication_idea (exige stage approved/published). COPY POR REDE (#1495): LinkedIn sem hashtag, sem parágrafo institucional do Núcleo, CTA 'Link do evento:' sem emoji; Instagram leva hashtags e 'link na bio' (URL não é clicável lá). Violação volta em copy_lint, não bloqueia. Gate: manage_comms.
update_webinar_comms_assetsPatches webinar promo assets (briefing_doc_url / sympla_event_url / promo_kit_url / mark comms kickoff). Comms/Board/Admin only.
update_webinar_proposalEdita proposal pré-aprovação. Apenas proposer ou comitê (manage_event/manage_member). Permitido em status draft/submitted/review.
get_partner_followupsLists upcoming and overdue follow-ups across all partner entities (from partner_interactions.follow_up_date). Useful for 'what partner calls are due this week?'.
get_partner_pipelineReturns partner pipeline: entities by status, stale alerts, contact info. Sponsors/Admin only.
list_card_partnersInverse of list_partner_cards. Returns all partners linked to a given board card — useful for opening a card and understanding which partners are stakeholders. Returns link_role, partner_name, chapter, entity_type, status, contact_name, linked_by_name.
list_partner_attachmentsList attachments (proposals, MoUs, draft contracts, meeting notes) filed against a partner entity.
list_partner_cardsList all board cards linked to a partner entity. Returns link_role, board_item (title, status, due_date, assignee_name), board_name, partner_name, linked_by_name. Use to answer 'which cards is PMI-CE driving?' or 'what's the backlog for Partner X?'.
list_partner_interactionsList all interactions for a partner entity, newest first.
partner_crmPartner CRM (absorbs manage_partner/log_partner_interaction/list_partner_interactions/get_partner_pipeline/get_partner_followups/search_partner_cards/link/unlink_partner_to_card/list_partner_cards/list_card_partners). Reads require view_partner; writes require manage_partner. Set `action`: 'search' (cards), 'list_cards' (partner_entity_id), 'card_partners' (board_item_id), 'pipeline', 'followups', 'interactions' (partner_id), 'manage' (entity_action create|update), 'log_interaction' (partner_id+interaction_type+summary), 'link_card', 'unlink_card'. interaction_type is validated against the live CHECK (email|whatsapp|linkedin|call|meeting|note|status_change). Card joins carry #785. Stable envelope.
search_partner_cardsCross-partner search of partner↔card links with optional filters. Use for queries like 'all deliverable cards across partners' or 'contract cards for PMI-CE chapter'. Returns full join: partner + card + board + assignee + linker.
link_partner_to_cardLink a partner entity to a board card (UPSERT — updates link_role+notes if link already exists). link_role must be one of: general | pipeline | deliverable | follow_up | contract | onboarding. Requires manage_partner authority.
log_partner_interactionLog an interaction (meeting/call/email/doc) with a partner entity. Optional outcome + next_action + follow_up_date for pipeline tracking.
manage_partnerCreate or update a partner entity in the pipeline. Sponsors/Admin only.
unlink_partner_from_cardRemove a partner↔card link. Idempotent (returns success=false if no row matched). Requires manage_partner authority.
award_championAward a Champion to a member for standout contribution. Surfaces: 'general' (plenary meeting), 'tribe' (tribe meeting), 'deliverable' (artifact/deliverable completion). V4-gated by award_champion action (org-scope for general; initiative-scope for tribe/deliverable). Caps: 3/2/1 per-event, 3 per-grantor-per-event, soft-warn at 5+8+3 per-cycle. Auto-computes points via gamification_rules (base 30/20/40 + 5/criterion, capped 50/40/60). Recipient must be present at event (general/tribe) or be assigned_member/created_by (deliverable). criteria_met: 1-4 strings; justification: ≥50 chars.
champion_awardChampion recognition (absorbs award_champion/revoke_champion). Set `action`: 'award' (recipient_id + surface general|tribe|deliverable + context_kind event|deliverable|artifact + context_id + criteria_met[] (1-4 slugs valid for the surface, from champion_criteria_catalog) + justification (>=50 chars)), 'revoke' (champion_id + reason). Authority enforced by the RPC: general surface requires an org-scope award_champion grantor; tribe/deliverable require award_champion on the target initiative; revoke is grantor-within-window OR platform admin. Merit-immutability — a champion recognizes work the recipient DID; awards are additive and never transfer completed-work credit. Stable envelope.
explain_pending_authorityExplains what is blocking authoritative status across the volunteer lifecycle — distinguishing 'no permission' from 'authority pending a term'. Combines the pending-agreement queue (with per-person next_action) and the volunteer-agreement signing summary. Pass member_id to focus on one person; omit for the org-wide picture. Authority: manage_member (GP/board). Read-only.
export_anexo_iExports the filled Anexo I of a PI-exclusion declaration (doc7): per-asset rows (titulo, natureza, sha256, OTS status, Bitcoin anchor block+UTC when confirmed) + the all_confirmed flag (eficácia probatória plena requires ALL assets confirmed — 'pending' is NOT yet anchored, doc7 Cl.4.1) + the digest-only legal notice. Art. 18 II LGPD: this is the portability path for the PROOF ARTIFACTS — complements export_my_data's pi_exclusion section (metadata only). Declarant self-service; admins with view_pii read org-fenced (access logged to pii_access_log, LGPD Art. 37). #569/ADR-0101 Slice 4.
gamification_reportGamification surface (absorbs get_my_gamification_stats/get_member_cycle_xp/get_member_xp_pillars/get_member_champions_history/get_champions_ranking/get_gamification_rules_catalog/get_initiative_gamification/get_tribe_gamification/get_cpmai_leaderboard/get_public_trail_ranking). Set `scope`: 'mine', 'member_xp' (member_id), 'member_pillars' (member_id [+ cycle_code, xp_scope]), 'member_champions' (member_id), 'champions_ranking' ([scope_kind global|initiative, scope_id, cycle_code, limit]), 'rules', 'initiative' (initiative_id), 'tribe' (tribe_id), 'cpmai_leaderboard' ([course_id]), 'trail_ranking'. Authority enforced by each RPC (self free; cross-member XP requires view_pii; aggregates + leaderboards public-safe by design; LGPD gamification_opt_out respected). Read-only. Stable envelope.
get_champions_rankingRanking of Champion recipients within scope (global or initiative) for a cycle. Returns aggregated stats: total_points + counts by surface (general/tribe/deliverable). Respects LGPD opt-out (gamification_opt_out). Limit clamp [1,100]. Useful for /tribe/[id] leaderboard or /admin transparency UX.
get_gamification_rules_catalogSSOT catalog of how points are earned: active gamification rules (slug, pillar, base/bonus/cap/on-time points, trigger source, i18n display/description), champion criteria catalog (per surface), and level tier thresholds. UI and agents must derive ALL displayed point values from this catalog — never hardcode them (ADR-0081 Pattern 47). Use to answer 'how do I earn points?' / 'what is each level threshold?'.
get_initiative_gamificationReturns the gamification ranking for a standalone initiative (workgroup, study_group, committee, etc.) by initiative UUID. Caller must be an active participant of the initiative (any role) or hold the view_internal_analytics capability — otherwise returns {error: 'Unauthorized'} (#600 fail-closed gate). Tribe-backed initiatives delegate to get_tribe_gamification (own gate). Use list_initiatives to find UUIDs; for tribes prefer get_tribe_gamification with the tribe_id.
get_member_champions_historyChronological history of Champions received by a member. Self-view always allowed; cross-member view requires view_pii action OR target not opted-out. Returns history[] (per-Champion details with awarder name, criteria, justification, status) + totals (active_count, revoked_count, active_points, breakdown by surface). Audit-load-bearing.
get_member_cycle_xpReturns a member's per-cycle XP breakdown by source (attendance, learning, certs, badges, artifacts, courses, showcase, bonus). Use for individual coaching: 'where is my XP coming from this cycle?'
get_member_xp_pillarsXP breakdown by pillar for a member (rules table per pillar with earned points/counts). Self-view always allowed; cross-member view requires view_pii (chapter-scoped callers cannot cross chapters) and respects the target's gamification opt-out. scope 'cycle' accepts an explicit cycle_code or defaults to the current cycle. Backs the /profile pillar drill-down.
get_public_trail_rankingReturns the public ranking of learning trails (CPMAI + future): members ordered by completion percentage and recent activity. Public-readable for transparency on community learning progress.
get_selection_rankingsReturns selection rankings split by track (researcher or leader) per CR-047 dual-ranking system. Formula: research_score = obj + int; leader_score = research*0.7 + leader_extra*0.3. Standard Competition Ranking (ISO 80000-2). Admin/GP/curator only.
get_tribe_gamificationReturns the gamification ranking inside a specific tribe (1-8): members sorted by total XP for the current cycle, with breakdown by category (attendance, badges, showcases). Internal view for tribe leaders and members tracking team momentum.
revoke_championRevoke a Champion previously awarded. Soft-revokes row (status=revoked + audit fields) AND deletes corresponding gamification_points (no XP compounding from revoked Champions). Authority: original awarder within 7-day window, OR manage_platform anytime. Reason ≥10 chars required (audit). ADR p161 Q5.7.
recalculate_cycle_rankingsRecomputes SELECTION-process ranking snapshots (selection_ranking_snapshots) for a selection cycle — NOT the gamification leaderboard (which is always computed live from the points ledger; nothing to recalculate there). Use after late evaluation/interview score fixes in a selection cycle. Audit-logged with reason. Confirm gate.
register_showcaseRegister a showcase/protagonist presentation for a member at a general meeting. Awards 15-25 XP depending on type.
export_audit_log_csvDetalhe restritoInternal admin operation — full details available to authorized members on request.
analyze_applicationARM-3 Onda 3 (ADR-0074): triggers AI triage scoring (Claude Sonnet 4.6 + cached rubric) for a selection_application. Updates ai_triage_score (0-10) + ai_triage_reasoning + ai_triage_confidence. NON-BINDING per LGPD Art. 20 §1 — decisão humana é autoritária. Requires consent_ai_analysis_at NOT NULL on the application. Admin only (manage_member). Logs to ai_processing_log.
analyze_application_videop197d D1 (2026-05-19): triggers AI video analysis for an application. For each uploaded pmi_video_screening row, generates a suggestion in selection_evaluation_ai_suggestions (evaluation_type='video') via Whisper (transcription) + Claude Haiku 4.5 multimodal (transcription + Drive thumbnail → score per pillar). NON-BINDING per LGPD Art. 20 — humano evaluator decides via submit_evaluation(ai_suggestion_id=...). Skips pillars with pending suggestion unless force=true. Auth: committee membership of cycle OR manage_member (gated at JS via view_pii + at RPC via cycle-scoped committee check). Returns dispatch envelope {dispatched, application_id, pillar, force, dispatch_id}; analysis runs async — re-call list_ai_suggestions after ~30-60s to see results.
application_getOne application, 360° (absorbs get_application_score_breakdown/interviews/gate_attempts/returning_context + get_application_onboarding_pct). Set `scope`: 'scores' (score breakdown + blind-review state), 'interviews' (schedule/notes — committee-visible since #1383 W4), 'gate_attempts' (authority-gate audit trail), 'returning' (prior-cycle context), 'onboarding' (onboarding %). All require application_id. Authority enforced by each RPC: committee-of-this-cycle OR manage_member/curate_content, plus ADR-0109 COI recusal. Candidate PII (high) stays behind those gates. Stable envelope.
compute_application_scoresRecomputes aggregated PERT scores for an application from latest evaluations. Idempotent. Used after a re-submit or when verifying ranking. Authority: committee member or admin.
evaluation_submitThe evaluator loop (absorbs get_my_pending_evaluations + get_evaluation_form + submit_evaluation + submit_interview_scores + get_evaluation_results + get_my_evaluation_feedback). Set `mode`: 'queue' (my pending evaluations), 'form' (application_id + evaluation_type → blank scoring form), 'submit' (application_id + evaluation_type + scores{criterion:score} [+ notes, criterion_notes, ai_suggestion_id] — WRITE, idempotent: a locked evaluation cannot be re-submitted), 'interview_scores' (interview_id + scores [+ theme, notes, criterion_notes] — WRITE), 'results' (application_id → consolidated results), 'feedback' (my received evaluator feedback). Authority: committee membership of the cycle (RPC-gated; manage_platform bypass). Stable envelope.
generate_interview_briefingARM-5 Onda 3 (ADR-0074): generates 3 personalized interview questions + áreas de atenção for a candidate via Claude Haiku 4.5. Uses application data + ai_analysis snapshot (Gemini qualitative) + ai_triage_* if present. Sync, latency ~1-3s. Auth: view_pii (committee + admin). Logs to ai_processing_log. NOT persisted — generated on-demand per click.
get_application_detailReturns full application detail for evaluator review: applicant info + score breakdown + blind_review_active flag + hidden_fields metadata. Peer-review-gated (Onda 4, 2026-07-22): before min_evaluators objective evaluations are submitted, blind mode is active (only YOUR evaluation visible); once peer review completes (min_evaluators reached), all evaluators visible with is_own flag per row. Superadmin sees all. Always call BEFORE submit_evaluation to gather context.
get_application_gate_attemptsReturns timeline of gate attempts (schedule_interview + issue_interview_booking_token) for an application — success + fail with gate_failed_code (P0001 GATE_NO_AI, retired by #1640 / P0002 GATE_NO_PEER_REVIEW / P0003 GATE_NO_SCORE / P0004 INVALID_APP_STATUS / P0005 UNAUTHORIZED_NOT_INTERVIEW_AUTHORITY, #2012), caller name, payload snapshot (consent/eval_count/score/status/authority_path at attempt time), and bypass status. Used by committee/admins to diagnose workflow gate violations (Fabricio incident pattern — candidate booked Calendar without AI/peer-review). Admin only (manage_member).
get_application_interviewsReturns scheduled and completed interviews for an application: interviewers, scheduled_at, duration, status (pending/completed/cancelled/noshow), notes. Used by committee to coordinate.
get_application_returning_contextReturns offboarding context for a returning candidate's selection application. Surfaces return_interest, return_window_suggestion, lessons_learned, recommendation_for_future from the candidate's prior member_offboarding_records (if any). Used by selection committee to inform re-application decisions. Admin only (manage_member).
get_application_score_breakdownReturns detailed score breakdown for a single application, including individual evaluator scores (objective, interview, leader_extra) and PERT consolidation. Two cutoff bands surface separately: 'pert_cutoff' (objective; reads pert_target_score/band_*) and 'leader_extra_cutoff' (leader_extra dimension; reads leader_extra_pert_target/band_* with leader_extra_score_position ∈ below/within/above). Top-level 'leader_extra_pert_score' also exposed. p232 #229 Phase 2 closed the dual-dimension visibility loop. Admin/GP/curator only.
get_evaluation_formReturns the evaluation form + full semantic context for an application (p197 enriched): cycle's criteria with computed weights + your draft inlined (criteria_with_weights), cv_extracted_text (parsed PDF), LinkedIn profile (profile_*), PMI service history, pmi_memberships, returning_member_match, AI triage + briefing, pert_cutoff block (target_score + band_lower/upper + cohort_n of approved active members from prior cycles), max_weighted_subtotal ceiling. Use BEFORE submit_evaluation/submit_interview_scores to validate score scale + understand candidate's full background. evaluation_type: 'objective' | 'interview' | 'leader_extra'.
get_evaluation_resultsReturns aggregated evaluation results for an application. Peer-review-gated (Onda 4, 2026-07-22): once min_evaluators objective evaluations are submitted (peer review complete), ALL evaluators' scores + names + criterion_notes are visible; before that the call is blind and raises 'Blind review'. Committee-of-cycle or manage_platform only.
get_evaluator_calibration_statsReturns evaluator calibration metrics for a selection cycle: cycle_summary (total_applications, total_evaluators, overall_mean, overall_stddev), per_evaluator (bias_signed/abs vs overall_mean, stddev, anomaly_count from selection_evaluation_anomalies), pair_divergence (top 5 evaluator pairs with largest mean diff in shared applications). Useful for calibration sessions pre-final-decision or between cycles. Authority: view_internal_analytics. Optional cycle_code arg (defaults to most recent cycle).
get_selection_committeeReturns the selection committee for a cycle: members + role (lead/evaluator) + can_interview flag. Used to confirm who can evaluate or interview before delegating work.
get_selection_cyclesLists all selection cycles (ordered most-recent first) with cycle_code, title, status, dates. Use to discover cycle_id/cycle_code for downstream selection tools.
get_selection_healthReturns selection funnel health: active cycle, application counts per stage (kanban-like), stale_tokens_48h (welcome tokens not consumed >48h), welcome_backlog (approved without dispatched welcome), status of 4 critical crons (send-notification-emails, retry-pending-ai-analyses, nudge-reschedule-pending-daily, detect-onboarding-overdue-daily) with last_run_at + last_5_status, and a green/yellow/red health_signal. Authority: view_internal_analytics (admin/comitê). Use when triaging 'is the selection funnel healthy?' before/during a cycle.
get_selection_pipeline_metricsReturns selection pipeline funnel metrics for a cycle (default: latest): total applications, by status, by chapter, conversion rates. Optional chapter filter. Admin/curator scope.
interview_manageInterview scheduling lifecycle (absorbs schedule_interview + mark_interview_status + selection_rescue_stuck_interview + grant_interview_stage_override + set/clear_interviewer_routing_block). Set `action`: 'schedule' (application_id + interviewer_ids[] + scheduled_at [+ duration_minutes, calendar_event_id, bypass_gate]), 'mark' (interview_id + status pending|completed|cancelled|noshow [+ notes]), 'rescue' (application_id — re-dispatch a stuck interview invite: candidatura JÁ AGENDADA que travou, status interview_scheduled), 'rescue_unbooked' (#1586 — application_id: o caso COMPLEMENTAR, convite emitido e NUNCA agendado, status interview_pending; conta em interview_manual_rescue_count com cap 3, separado do cap 1 do cron, e preserva o AUTOR no admin_audit_log — antes desta ação o único caminho era SQL direto por service_role, que registrava ato humano como 'cron' com actor nulo), 'stage_override' (application_id + override_reason — #1613 R1.4: authorise ONE application to enter interview_scheduled without an objective score; manage_platform, reason mandatory, audited), 'block' (#1590 onda C — cycle_id + member_id [+ starts_on, ends_on, reason]: tira o entrevistador do rodízio por PERÍODO sem apagar a agenda dele; autosserviço na própria linha, manage_member para qualquer um; starts_on nulo = hoje em America/Sao_Paulo, ends_on nulo = bloqueio aberto), 'unblock' (block_id — devolve ao rodízio; mesma autoridade). 'set_notes' (#1836 — interview_id [+ notes]: grava a nota de BRIEFING lida pelo entrevistador antes da entrevista; editável depois do agendamento e vazio apaga; mesma autoridade, audita a mudança e nunca o texto). Authority: committee lead of the cycle OR platform admin (RPC-gated; the AI-analysis gate on 'schedule' is bypassable only with manage_member + bypass_gate=true). NOTE: generate_interview_briefing (AI-generated prep) stays a raw tool (view_pii). Stable envelope.
notify_selection_cutoff_approvedDispatches the cutoff-approved 'agendar sua entrevista' invite email to a candidate who cleared the objective cutoff. Authority (enforced in the RPC): committee lead OR manage_member. Idempotent — returns reason:'already_sent' if the invite already went out (cutoff_approved_email_sent_at set). Track-aware booking URL routing (researcher LRD round-robin / leader cycle URL). Use for one-off manual dispatch; the daily cron selection-cutoff-pending-daily handles the strictly-above-target cohort automatically.
selection_decideCycle-level selection decisions (absorbs approve_selection_application + notify_selection_cutoff_approved + compute_pert_cutoff + recalculate_cycle_rankings + manage_selection_committee + update_application_contact). Set `action`: 'approve' (application_id + decision{} — DESTRUCTIVE→confirm; manage_platform), 'notify_cutoff' (application_id; committee-lead/manage_member), 'compute_cutoff' (cycle_id + role [+ filter_active_only, score_column]; manage_member), 'recalc_rankings' (cycle_id + reason — DESTRUCTIVE→confirm; manage_platform), 'committee' (cycle_id + committee_action add|remove|update + member_id [+ committee_role, interview_booking_url, can_interview]; add/remove = promote, update = própria linha OU manage_member — #1590 onda C: `interview_booking_url` é o campo que decide o rodízio de entrevistas e até esta onda só se editava por SQL direto; trocar o PAPEL exige promote e RELIGAR can_interview exige manage_member), 'update_contact' (application_id [+ phone, linkedin_url]; manage_member), 'reissue_onboarding' (application_id [+ ttl_days]; manage_member — reemite o link de onboarding de candidatura submitted OU approved, #2265: `dispatch_pending_welcomes` so alcanca `submitted` e nao havia caminho de volta para quem ja foi aprovado, nem administrativo. SEM confirm=true devolve o DRY-RUN da propria RPC, com destinatario e links ainda vivos; COM confirm=true emite token e dispara e-mail para pessoa real. Recusa reemitir por cima de link ainda valido). NOTE: raw compute_application_scores stays a service-role helper (not surfaced). Every write logs an audit block. Stable envelope.
selection_rescue_stuck_interviewRescues a candidate whose scheduled interview lapsed (past + never conducted, app still interview_scheduled): re-sends the scheduling invite via notify_selection_cutoff_approved and, ONLY if that dispatch succeeds, cancels the stuck interview and resets the app to interview_pending. A gate refusal returns success:false and changes NOTHING (#1598); an unexpected error rolls the whole rescue back. Authority (enforced in the RPC): committee lead OR manage_member. The daily cron selection-stuck-scheduled-rescue-daily automates this after a 48h grace.
approve_selection_applicationFinalize an approved/converted selection application into the authoritative V4 graph: ensures member + person + engagement (kind=volunteer) + required onboarding steps + an approval notification, and enqueues the volunteer term when the engagement kind requires an agreement. Idempotent — re-running does not duplicate person/engagement. Does NOT flip application status (the application must already be approved or converted). Authority: manage_platform (GP). Two-step confirm — materializes lifecycle records + audit log.
manage_selection_committeeAdd or remove a member from a selection committee. Authority: requires 'promote' permission (admin/PM). Action 'add' inserts/upserts (default role='evaluator', can_interview=true); 'remove' deletes. Without confirm=true returns a preview (ADR-0018 W1).
mark_interview_statusUpdates interview status. Authority: interviewer or committee lead. Valid: 'completed' | 'cancelled' | 'rescheduled' | 'noshow'. Optional notes.
promote_lead_to_applicationPromote a visitor_lead into a selection_application for a specific cycle. Cycle must be 'open'. Lead must not already be promoted/dismissed. Admin only.
schedule_interviewCreates the interview record for an application. Authority, in precedence order: committee lead (selection_committee.role='lead'); platform admin (manage_platform); or — #2012 — a member of THIS cycle's committee with can_interview and a deciding role (evaluator/lead, never observer) registering the interview THEY conducted, which requires interviewer_ids to be exactly [their own member id]. That third path never receives the gate bypass, so the peer-review/score gates and the interview-phase status allow-list still apply to it. Scheduling on someone else's behalf remains lead/manage_platform only. A refusal by authority comes back as {success:false, gate_failed_code:'P0005'} and is recorded in gate_attempts.
submit_evaluationSubmit your evaluation scores for an application. Two-step confirm gate (ADR-0018 W1): without confirm=true returns RICH preview (p197) — applicant_name + role + criteria_with_weights (each criterion with its weight + max + your_score + your_weighted_contribution) + weighted_subtotal_preview (computed) + max_weighted_subtotal (ceiling) + pert_cutoff (target_score + band_lower/upper of approved active members from prior cycles) + cohort_position (where your subtotal lands vs the cutoff band). With confirm=true: writes to selection_evaluations (irreversible after phase closes). criterion_notes_json (optional) lets you justify per-criterion. ai_suggestion_id (optional) links your submit to an AI suggestion you accepted/adjusted.
submit_interview_scoresSubmit your interview rubric scores for an interview. Two-step confirm gate (ADR-0018 W1): without confirm=true returns RICH preview (p197c B1) — applicant_name + criteria_with_weights (each criterion with weight + max + your_score + your_weighted_contribution) + weighted_subtotal_preview (computed) + max_weighted_subtotal (ceiling) + pert_cutoff (cohort target + band of approved active members) + cohort_position (where your subtotal lands vs band) + validation (missing_scores + out_of_range). With confirm=true: writes selection_evaluation (irreversible after phase closes). Use get_evaluation_form(evaluation_type='interview') first to discover the rubric.
update_application_contactAdmin (manage_member) updates a candidate's contact info on a selection application: phone and/or linkedin_url. Both optional but at least one required. Used when a candidate emails the committee with corrected contact data — admin patches it server-side. Self-service candidate edit is NOT supported by this RPC.
update_my_applicationAtualiza campos do próprio application em ciclo ativo. Allowed: linkedin_url, resume_url, motivation_letter, areas_of_interest, leadership_experience, academic_background, non_pmi_experience, availability_declared, proposed_theme, credly_url, linkedin_relevant_posts, reason_for_applying, phone. Bloqueado durante evaluating/interviews/ranking phases.
get_wiki_healthReturns wiki health report: stale pages (>90 days without update), PII warnings (emails, phones, CPFs in content), and incomplete metadata. Use to audit wiki quality.
get_wiki_pageReturns the full content of a wiki page by its path (e.g. 'governance/adr/ADR-0007.md'). Includes metadata: authors, license, IP track, tags.
knowledge_assets_latestReturns most recent knowledge assets (wiki + external sources). Optional source filter. Use to discover 'what was added recently to the knowledge base?'.
knowledge_insights_backlog_candidatesReturns prioritized knowledge insight backlog (ranked by impact*urgency*confidence). Default open, top 25. Use for 'what should we tackle next?' or curator triage.
knowledge_insights_overviewReturns aggregate overview of knowledge insights: per-taxonomy_area + insight_type counts, avg impact/urgency, max_detected_at. Default status='open', last 30 days. Used to spot which areas are accumulating signal.
knowledge_search_textFull-text search of knowledge_assets (synced wiki + external research). Returns chunks with title + source + snippet + tags + relevance rank. Optional source filter (e.g. 'wiki'). Default match_count=8.
search_hub_resourcesSearch the resource library (247+ items) by keyword.
search_knowledgeLegacy text search across knowledge chunks (returns chunk + asset + tribe + theme context). Prefer knowledge_search_text or search_wiki_pages for new code. Kept for compat.
search_nucleo_knowledgeThe unified knowledge_search intent (W6b): search + page fetch + latest assets across Núcleo knowledge. `mode`='search' (default) does bounded multi-source full-text search over hub resources (247+ items), wiki pages (governance/ADRs/research/narrative), and knowledge_assets (synced wiki + external research), returning ranked snippets with citations. `mode`='page' fetches one wiki page in full by `path` (get_wiki_page). `mode`='latest' lists the most recent knowledge_assets (optional `asset_source` filter). Wiki content is narrative only (ADR-0010). Read-only, PII-clean (knowledge content is non-personal). Stable envelope.
search_wikiSearch the Núcleo wiki knowledge base. Returns ranked results with highlighted snippets. Covers governance documents, architectural decisions (ADRs), research, and narrative knowledge.
search_wiki_pagesFull-text search of wiki_pages with optional domain (e.g. 'frameworks') and tag filters. Returns id, path, title, summary, tags, license, ip_track, headline (highlighted snippet) and rank. Use to discover narrative knowledge before answering 'what does the wiki say about X?'.
wiki_health_reportReturns wiki structural health (broken links, missing summaries, license gaps, etc.) per check_type. Used by curators to prioritize wiki quality work.
promote_to_leader_trackPromotes a researcher-track application to the leader track (CR-047 triaged_to_leader flow). Creates a new leader application cloned from the researcher one and links them bidirectionally. Admin/GP only.
check_code_schema_driftReturns code-vs-schema drift findings: pg_proc / pg_view / pg_policy references to known-dropped columns. Strips line + block comments before regex match (no false positives from `-- ADR doc references`). Auto-verifies dropped state via information_schema. Empty result = no drift detected. Authority: view_internal_analytics. Use after DROP COLUMN deploys to verify cleanup, or as periodic audit.
get_anomaly_reportReturns data quality anomaly report: inconsistencies, duplicates, drift. Admin only.
get_cutoff_dispatch_healthReturns selection interview-invite cron health: last-7-run trend (dispatched/rescued counts) for selection-cutoff-pending-daily (14:00 UTC) + selection-stuck-scheduled-rescue-daily (15:00 UTC), each cron's registration/active state + last_run_at, the live pending cohorts (above-target awaiting invite + stuck-scheduled >48h), and a green/yellow/red health_signal (red = pending work with the relevant cron silent >26h; yellow = a cron unregistered/never-fired). Authority: view_internal_analytics. Use to triage 'are cutoff invites / stuck rescues going out?' or detect cron silence.
get_digest_healthReturns weekly digest delivery health snapshot: 3 Saturday crons (member-digest, leader-digest, card-digest) status + count of digest_weekly notifications pending delivery. Health: green/yellow/red. Use to triage 'are members getting digests?' or detect cron silence.
get_drive_discovery_healthReturns Drive auto-discovery cron health: total/last_24h/unmatched/unpromoted counters + cron last_run + days_since + minutes_folders_active. Health: green (<=36h + success) / yellow (idle/no-folders) / red (>36h or failed). Authority: view_internal_analytics. ADR-0065 (Phase 4).
get_extraction_healthReturns CV extraction pipeline health: backlog_eligible (apps with consent + resume_url + missing cv_extracted_text), 24h activity (completed_24h/failed_24h counts + last_success_at/last_failure_at), failure_samples_24h (top 3 errors for triage), cron stats (extract-cv-text-15min schedule + last_run_at + last_5_runs), and a green/yellow/red health_signal. Authority: view_internal_analytics. Use when triaging 'is CV extraction working?' or 'why are recent triages running without CV input?'.
get_gp_cohort_healthGP/co-GP: saúde da coorte do ciclo corrente. Retorna pendentes de aprovação do líder (self-service tribe requests) + coorte em risco (sem tribo / sem presença no kickoff / sem atividade voluntária), com resumo agregado. Authority: manage_member OR view_internal_analytics.
get_invitation_healthReturns invitation system health: status counts (pending/accepted/declined/expired/revoked — 'canceled' saiu em #1809: não existe no domínio de initiative_invitations.status e valia sempre 0), stale-pending-past-expires-grace-1h (cron silence indicator), last 5 cron firings of expire-stale-invitations-hourly, and a green/yellow/red health_signal. Authority: view_internal_analytics (PMI-Latam admin / coordenadores nacionais). Use when triaging 'why are invitations not expiring?' or auditing invitation throughput.
get_lgpd_cron_healthReturns LGPD compliance cron health snapshot: 4 monthly crons (lgpd-anonymize-inactive-monthly, v4-anonymize-by-kind-monthly, log-retention-monthly, lgpd-anonymize-premember-monthly) plus the DAILY data-retention-sweep-daily, each with last_run_at + last_status + days_since_last_run + failed_runs_last_90d. Plus pending_anonymization_inactive_5y (members 5y+ inactive not yet anonymized), premember_anonymization (dormant until legal ratifies the #905 window), and data_retention: how many declared data_retention_policy rows have a working executor, with the reason for each uncovered one. Coverage is INFORMATIONAL — declared gaps are tracked in issues and locked by a CI ratchet, not by this signal. Health signal: green (monthly crons <=35d and the daily sweep not silent), yellow (newly registered / not yet fired / no pending work), red (pending anonymization + monthly cron silent >35d, OR the daily sweep active and silent >2d — never-ran is not red). max_days_since_any_job_ran stays about the MONTHLY jobs only. Authority: view_internal_analytics. Use to audit 'are LGPD obligations being met?'
get_membership_drive_grant_healthSaúde do auto-grant de Drive (#1376): rollup do ledger por status, total concedido/falho, último reconcile, links de workspace ativos, e a lista de tribos/workgroups ativos AINDA sem pasta de workspace (a fila do provision_initiative_drive). Authority: manage_platform (GP).
get_ots_pipeline_healthReturns the OpenTimestamps PI-exclusion pipeline health snapshot (#569/ADR-0101): pi_exclusion declarations/assets counts by status, retry-exhausted assets (stamp_attempts >= 5 — these silently fall OUT of the stamping claim and need intervention), claim-eligible backlog, oldest unstamped/pending ages, and the 3 cron jobs (ots-stamp-daily 02:10 UTC, ots-upgrade-daily 02:40 UTC, ots-retention-monthly) with last_run/failed_runs. Health signal: green (work draining, jobs fresh), yellow (newly scheduled / nothing to do / pending un-anchored >7d), red (exhausted work, failed runs, or backlog with stale daily jobs). Eficácia probatória plena (doc7 Cl.4.1) = 'confirmed', not 'pending'. Authority: view_internal_analytics. NOTE: pg_cron 'succeeded' does not imply the EF call returned 200 (#618) — cross-check net._http_response (TTL ~6h) when investigating.
get_weekly_member_digestReturns the weekly digest payload for a member: 9 sections (cards, engagements, events, attendance_reminders_pending, publications, broadcasts, governance, other_notifications, achievements) + consumed_notification_ids, which since #2286 lists exactly the ids that went into those sections. Used by send-weekly-member-digest cron (Saturday 12 UTC) and by admins/PM previewing what a member will receive.
get_weekly_tribe_digestReturns the weekly tribe-level aggregate digest for leaders/coordinators: privacy-preserving summary (X members overdue, Y cards next week, Z without assignee, tribe health %). No PII per-member. Used by send-weekly-leader-digest cron (Saturday 12:30 UTC).
lgpd_adminLGPD Art.18 retroactive operations (absorbs lgpd_execute_retroactive_deletion/lgpd_record_retroactive_notification). Set `action`: 'record_notification' (application_id + template_version + lang [+ notification_method email|whatsapp|in_person|other, dispatched_at]) — logs a retroactive privacy notice; 'execute_deletion' (application_id + video_id + deletion_reason (>=8 chars) [+ drive_deletion_ref]) — DESTRUCTIVE: clears a video-screening transcription (irreversible, Art.18 §IV) and returns a preview unless confirm=true (ADR-0018). Both require manage_member (GP/DPO); every call writes a pii_access_log row. Stable envelope.
lgpd_execute_retroactive_deletionAtomically clears pmi_video_screenings.transcription for a specific video row and writes a pii_access_log row (context='lgpd_art_18_deletion_executed') with full deletion_artifacts jsonb evidence. PM-only (manage_member). Use IF the candidate requests Art. 18 §IV deletion within the response window. Validates video_id belongs to application_id + rejects idempotent no-op (already-NULL transcription) to keep audit clean. Drive file removal is a SEPARATE operator step — pass p_drive_deletion_ref (trash confirmation URL or Workspace audit ref) once you've deleted the Drive asset, so the chain stays complete. Destructive — returns a preview payload unless confirm=true is passed (ADR-0018 W1).
lgpd_record_retroactive_notificationRecords a retroactive Art. 18 §IV notification dispatch in pii_access_log (context='lgpd_art_18_retroactive_notification'). Use AFTER PM dispatches the notification email via official channel to anchor the audit chain. PM-only (manage_member). The RPC does NOT send the email — it logs the dispatch event. p_dispatched_at lets PM backdate to the actual send timestamp; defaults to now() if omitted. Returns pii_access_log_id of the created row + target_member_id resolved from applicant email. Pairs with notification template at docs/audit/lgpd-art11-remediation/ (interim_v1 PM-approved; angeline_v1 pending sibling #334).
list_invitations_for_my_initiativesList invitations (especially pending self-service requests) for initiatives where you are owner/coordinator. Admin sees all. Includes is_self_request flag distinguishing requests from owner-initiated invites. Logs PII access (#85 LGPD Onda C). Use to triage join requests before review_initiative_request.
list_invitations_sent_by_meList initiative invitations sent by you. Useful for owners/coordinators tracking who they've invited. Filter by status optionally.
list_my_initiative_invitationsList initiative invitations where you are the invitee. Filter by status (pending/accepted/declined/expired/revoked). Defaults to 'pending'. Stale-pending past expires_at are transitioned to 'expired' by hourly cron (`expire-stale-invitations-hourly`); admins can audit via `get_invitation_health`.
respond_to_initiative_invitationRespond to a pending initiative invitation as the invitee. response='accept' creates engagement automatically; response='decline' marks invitation declined with optional reason. Auto-expires invitations past their 72h expiry window.
audit_logDetalhe restritoInternal admin operation — full details available to authorized members on request.
get_audit_logDetalhe restritoInternal admin operation — full details available to authorized members on request.