MCP Uptime
← MCP Reliability Index  /  Communication
M

Meta Council

com.meta-council/decision-intelligence
Multi-expert decision intelligence with transparent synthesis and auditable workflows.
healthy
status
119
tools exposed
2040ms
connect latency
4e31c76265c4
schema fingerprint

Tools (119)

run_council
Submit a question or decision to Meta Council. A panel of specialized AI agents will independently analyze it, then a synthesis step combines their opinions into a unified recommendation with full transparency. Starts asynchronously by default; use get_session with the returned session id.
list_panels
List all available expert panels with their descriptions and agent counts.
list_agents
List all available expert agents with their roles, domains, and specialties.
get_session
Get the full results of a previous Meta Council session, including all agent opinions and the synthesis.
get_visualization
Fetch a chart artifact generated by a council session or LOCUS determination. Returns the machine-readable spec (the data behind the chart) plus the stable SVG URL, or the raw SVG itself with include_svg=true. Artifact ids appear in session results as 'visualizations' / 'visualization' reference blo
list_workflows
List available multi-step workflow pipelines (composable bundles that chain several steps, each able to run on its own model/provider). Returns each workflow's slug, description, and per-step model.
run_workflow
Start a multi-step workflow pipeline and return its session id immediately by default. Poll get_workflow_session for each step's model/provider and output. synthesis. Steps run on YOUR configured provider keys, so a pipeline can chain models across providers. If a step is a human checkpoint, returns
get_workflow_session
Poll a previously started workflow run for its current step-by-step status and output (useful when run_workflow timed out or is awaiting a checkpoint). Requires authentication.
recommend_panel
Recommend the best expert panel for a query (semantic match with keyword fallback). Returns the top panel + confidence and the runner-up options — feed the result into run_council's panel argument. Requires authentication because the query may be sent to the configured embedding provider.
estimate_cost
Estimate what a panel or saved workflow would cost before running it: returns a per-agent/per-step price breakdown, the total for the requested number of runs, your remaining quota and platform credit, an honest list of any models the platform could not price, and a go/no-go decision. Reserves nothi
get_agent_detail
Full detail on one expert agent by slug (from list_agents): role, description, default model, domain, tags, and tools.
advance_workflow
Advance a workflow past a human checkpoint — approve or reject the paused step so the pipeline continues. Use the session id from run_workflow / get_workflow_session. Requires authentication.
get_settings
Get the authenticated user's Meta Council settings — preferred model, plan tier, and which provider/tool API keys are configured (booleans only, never the secret values). Requires authentication.
get_api_key_info
Report the scopes, plan tier, expiry and remaining quota of the API key making this call, so an agent can check what it is allowed to do before attempting it rather than by being refused. Requires API-key authentication.
rotate_api_key
Replace the API key making this call with a fresh one carrying the same scopes. WARNING: this IRREVERSIBLY deactivates the current key the moment it succeeds — every other caller using that key stops working immediately, so do not call it on a shared credential. The new key is returned exactly once
mint_child_api_key
Mint a short-lived child API key for a delegated subtask. The child can never exceed the calling key: requested scopes must be a subset of what the caller holds, its expiry is capped by the caller's, and it may never itself mint keys (delegation is exactly one level deep). A caller whose own scopes
list_outreach_campaigns
List the authenticated user's outreach campaigns with live lead / sent / reply counts. Requires authentication.
search_outreach_leads
Search the user's outreach leads — filter by a text query (company / contact / email), pipeline status, and/or campaign. Returns company, contact, status, pitch, and reply info. Requires authentication.
outreach_analytics
Outreach summary for the user — total leads, sent, replied, and reply rate. Requires authentication.
score_locus_case
Score an anonymized adult mental-health / addiction case against LOCUS. Convenes the LOCUS Assessment Panel (psychiatrist, addiction specialist, clinical social worker, utilization reviewer, peer specialist, safety officer); each reviewer independently rates all six LOCUS dimensions, then a DETERMIN
locus_determine_from_scores
Compute a LOCUS Level of Care from dimension ratings you already have. Deterministic — no LLM, instant: composite + Determination Grid + the inviolable override floors (e.g. Risk-of-Harm=4 → minimum Level 5), applied in code. Provide EITHER the seven flat D* ratings (1-5 each; Dimension IV splits in
ask_legal
Request fixed legacy Themis source/citation records and attach a proposed Laws & Regulations agent/source/synthesis plan whose routes are planned_not_run. Check the law uses fixed legacy provider-record retrieval, but returned records do not prove exact citation identity, relevance, authority, or co
campaign_pipeline_stats
Pipeline-stage breakdown for one outreach campaign — total / sent / active / won / lost, reply rate, and per-stage lead counts. Requires authentication.
list_campaign_triggers
List automation triggers (auto-reply rules, status updates, notifications) configured for an outreach campaign. Requires authentication.
list_campaign_replies
List sent / received emails for an outreach campaign, newest first — subject, body preview, and reply classification. Requires authentication.
create_outreach_campaign
Create a new outreach campaign owned by the authenticated user. Returns the new campaign id. Reversible (campaigns can be edited/deleted in the dashboard). Requires authentication.
add_outreach_lead
Add a single lead to the authenticated user's outreach book. Returns the new lead id. Provenance is stamped source="agent" server-side. Does not send any email. Requires authentication.
assign_leads_to_campaign
Assign one or more of the user's existing leads to one of the user's campaigns (both must be owned by the caller). Returns how many were assigned. Idempotent. Requires authentication.
update_outreach_lead_status
Advance a lead through the pipeline — set its status / pipeline stage and, optionally, a recorded reply, pitch, or notes. The core pipeline-drive action. Idempotent (setting the same status twice is a no-op). Requires authentication.
draft_outreach_email
Save a draft email subject and/or body onto one of the user's leads. This only stores the draft for human review — it does NOT send anything. A human sends from the dashboard. Requires authentication.
create_outreach_pitch
Create a reusable pitch template (subject + body templates, optional drafting prompt) owned by the user. Provenance is stamped source="agent" server-side. Returns the new pitch id. Requires authentication.
list_deals
List the caller's sales deals (newest first) together with a weighted pipeline forecast (open/weighted/won totals). Optionally filter by stage or lead_id. Deals are private to the API-key owner.
get_deal
Fetch one of the caller's deals by id with its full activity timeline (notes, calls, meetings, emails, tasks; newest first).
list_sales_tasks
List the caller's open sales tasks (activities of type 'task' not yet done), bucketed overdue / today / upcoming and ordered most-urgent-first with per-bucket counts. Close one with complete_sales_task.
get_sales_analytics
Sales pipeline analytics for the caller: probability-weighted forecast, per-stage $ rollup, win rate (won / decided, by count and by value), average sales-cycle days over won deals, and open-deal aging with a stale count. Read-only; computed from the caller's own deals. Requires authentication.
get_sales_recommendations
The caller's prioritized next-best sales actions: interested leads to convert, open deals gone stale enough to need a follow-up, and overdue tasks — each with a rationale and the exact governed tool to run next (convert_lead_to_deal / log_deal_activity / complete_sales_task) plus its arguments. Read
get_deal_health
Health scores for the caller's OPEN deals: each scored 0-100 on how likely it is to be slipping (healthy >= 70 / watch / at_risk), worst first, with plain-language reasons — days since last logged contact, whether it is past its own expected close date, and how its age compares to the caller's avera
create_deal
Create a sales deal owned by the caller. Provide a title, or a lead_id to inherit the lead's company/name as the title. The deal appears live on the owner's Sales board. No deletes are exposed over MCP.
update_deal
Update one of the caller's deals — most commonly to ADVANCE its stage (e.g. discovery -> proposal). Moving to closed_won/closed_lost stamps the close date; reopening to an open stage clears it. Only the fields you pass change; deal_id is required.
convert_lead_to_deal
Convert an owned outreach lead into a deal and advance the lead into the deal stage of the funnel (never downgrading an already-closed lead). Optional deal fields mirror create_deal; lead_id is required.
log_deal_activity
Log an activity on a deal (or lead) — a note/call/meeting/email, or a follow-up task with a due date. Pass deal_id and/or lead_id (each must be owned by the caller). type defaults to 'note'; for a task set type='task' and a due_date (YYYY-MM-DD). Tasks appear in list_sales_tasks.
complete_sales_task
Mark one of the caller's sales tasks/activities done (or reopen it with done=false). Stamps or clears the completion time; activity_id is required.
list_invoices
List the caller's invoices (newest first), optionally filtered by status (draft/sent/paid/void). Each entry includes its computed overdue flag.
get_invoice
Fetch one of the caller's invoices by id, including its line items.
get_invoice_aging
Summarize the caller's unpaid invoices by how long they have been past due. This owner-scoped, read-only report is computed live; an invoice is overdue only when its status is sent and its due_date is before today.
create_invoice
Create a draft invoice owned by the caller for a client, optionally seeded with line items and linked to an existing deal. Totals (subtotal/tax/total) are computed from the line items and tax_rate. The invoice starts in status 'draft' — call send_invoice to mark it sent.
update_invoice
Update a draft or sent invoice's header fields (client, terms, due date, tax rate, notes). Only the fields you pass change. Blocked once paid/void — void and re-issue instead. invoice_id is required.
add_invoice_line_item
Add a billable line item to a draft or sent invoice; totals are recomputed automatically. Blocked once paid/void. invoice_id is required.
send_invoice
Mark a draft invoice as sent (stamps issued_at). Re-sending an already-sent invoice is a harmless no-op. invoice_id is required.
mark_invoice_paid
Mark a draft or sent invoice as paid (stamps paid_at). Cannot be applied to a void invoice. invoice_id is required.
void_invoice
Void a draft or sent invoice. Cannot be applied to an already-paid invoice (issue a credit note instead). invoice_id is required. No delete tool is exposed over MCP — void is the terminal non-destructive state.
convert_deal_to_invoice
Create a draft invoice from one of the caller's deals: one line item for the deal's amount, client_name defaulted from the deal's company/title. deal_id is required.
create_accounting_run
Analyze supported textual accounting records with the pinned deterministic Writeoff engine and create a private, encrypted audit run owned by the caller. Accepted filenames end in .txt, .md, .text, .eml, .csv, .ofx, .qfx, or .qif. Returns estimates for review only: it does not file taxes, move money
list_accounting_runs
List only the caller's private Accounting-run audit metadata, newest first. Raw source text and analysis results are intentionally omitted.
get_accounting_run
Get one private Accounting run owned by the caller, including its deterministic estimates, disclaimer, engine revision, and audit timestamps. Source input stays omitted unless include_input=true is explicitly requested.
delete_accounting_run
Permanently delete one private Accounting audit run owned by the caller. This is the only Accounting MCP deletion; it never files taxes, moves money, or contacts an external service.
preview_accounting_ticket_sync
Preview, without writing, how one completed owned Accounting run's WRITEOff work plan would map to stable Meta Council tickets. Reports creates, updates, unchanged tickets, human-edited generated fields that will be preserved, and identity conflicts. Requires both accounting:read and tickets:read; t
sync_accounting_tickets
Commit a previously previewed completed Accounting run's WRITEOff work plan to stable owner-private Meta Council tickets. The expected_plan_hash from the preview is required, retries are idempotent, stable references prevent duplicate tickets across reprocessed runs, and human edits to generated con
ticket_plan
Preview or idempotently commit an owner-private ticket tree generated from a planning prompt or supplied structured plan. Requires tickets:write. A preview without a supplied plan invokes the planner model and additionally requires councils:run; supplied-plan preview and commit are provider-free and
ticket_batch_create
Preview or idempotently commit one atomic owner-private batch of structured tickets and nested subtickets. Preview is non-mutating and returns the normalized commit payload, exact preview_token, and deterministic predicted IDs as JSON. Commit requires that exact token: combine commit_payload with mo
ticket_list
Page through the caller's tickets on the Meta Council board. The opaque next_cursor is owner- and filter-bound; keep every filter unchanged on the next call. Immutable cursor ordering keeps a stable full-board traversal exact while returned tickets are edited or reordered. Filter by status, assignee
ticket_get
Full detail for one owned ticket: description, acceptance criteria, subticket progress, and the recent activity/comment trail. ticket_id is required.
get_ticket_projects
Projects overview of the caller's board: one entry per top-level epic with recursive descendant progress (done %, counts by status, blocked, points, sub-epics, last activity), plus a triage strip of unrouted work (backlog + unassigned root tickets). Read-only, recomputed live. Use this before planni
get_workspace_metrics
One cross-domain rollup of the caller's own workspace: council sessions (total, last 30 days, by status, tokens), feedback ratings, tickets (open/done), deals (count by stage, open pipeline value) and invoices (count by status, outstanding total, overdue count). Read-only, recomputed live, and scope
get_meta_council_platform_metrics
OPERATOR ONLY: cross-owner analytics for the META COUNCIL PLATFORM itself — every account added together, NOT the caller's workspace (use get_workspace_metrics for that). Requires both the platform:admin scope AND an ADMIN_EMAILS operator account; everyone else gets a permission error. Returns conte
get_ticket_burndown
Daily burndown series replayed from the append-only ticket ledger: per-day scope (existing, non-cancelled), remaining, done levels plus added/completed flows, with a summary. Optionally scope to one epic's current subtree via root_id. Backfill (legacy_snapshot) rows seed state but never count as add
ticket_validation_finalize
Finalize one immutable validation run for an exact owned ticket scenario revision. Requires the opt-in tickets:validate scope. The server derives owner and actor only from the authenticated API key. Evidence payloads are bounded opaque JSON objects; locator-looking strings are recorded but never ope
ticket_scenario_create
Author one Given/When/Then scenario on an owned ticket. This is the specification an epic must carry before it can be completed: record a passing run against it with ticket_validation_finalize, then transition the epic. The server owns revision 1 and returns current_version and current_definition_ha
ticket_scenario_revise
Replace an owned scenario's content, compare-and-swapping on expected_version. Revisions are append-only: validation runs already recorded keep naming the exact version and hash they were proven against, so revising never rewrites past evidence — it does mean the epic needs a fresh passing run again
ticket_scenario_list
List an owned ticket's scenarios with their exact current revisions, including the current_version and current_definition_hash that ticket_validation_finalize requires. Read-only. Use it before recording a run to confirm which revision is current, and to see why an epic still reports required_scenar
ticket_dependency_add
Record that an owned ticket cannot complete until another owned ticket is done. The edge is never erased: correct a mistake with ticket_dependency_remove, which marks the edge removed and appends to a ledger rather than deleting anything. Re-adding the same prerequisite reinstates that original edge
ticket_dependency_remove
Stop an owned ticket from waiting on a prerequisite. Removing the last unsatisfied edge can allow this ticket to close, so this is a gate-opening action. Nothing is deleted: the edge is retained, marked with who removed it and when, and the removal is appended to a ledger that survives everything af
ticket_dependency_list
List the prerequisites an owned ticket waits on. Read-only. Each edge reports satisfied, which is true only when the prerequisite is done, plus active/removed_at/removed_by_actor. Removed edges are omitted unless include_removed is true; they never gate completion, and are readable as history.
ticket_create
Create a ticket on the caller's board — optionally as a subticket via parent_id. Recommend degree of difficulty with effort (trivial|small|medium|large|epic) and the kind of work with action_type (strategy|implementation|research|validation|testing|coordination). The authenticated API-key UUID is st
ticket_update
Update fields on an owned ticket — status moves (each one is auto-logged to the ticket's audit trail), reassignment, priority/effort/action_type recommendations, title/description edits, safe reparenting, opaque session/workflow links, effort points, order, and user-owned external refs. Clear flags
ticket_archive
Retire an owned ticket from the working set, or restore one. Archiving is a different axis from status: the ticket keeps whatever status it had, so a done ticket stays done and a blocked one comes back still blocked — never use status 'cancelled' to mean 'archived'. An archived ticket disappears fro
ticket_comment
Add a comment to an owned ticket's activity trail. Use kind='progress' for work updates while a ticket is in progress. The authenticated API-key UUID is stamped as author; callers cannot supply or spoof it. Open the comment in plain language before any technical detail — these are read during escala
ticket_claim
Claim a ticket to work on: sets assignee to your agent name and moves it to in_progress in one step (the move is audit-logged). Refuses if another agent already has it in progress unless force=true. Follow up with ticket_comment progress updates and finish via ticket_update status='done'.
submit_meta_council_feedback
Report feedback about the META COUNCIL PLATFORM itself — a noticeable performance failure, a lacking/missing capability, a bug, or a UX/docs gap in Meta Council's tools, councils, workflows, or MCP surface. Platform feedback only: do NOT use this for anything about your own business, customers, deal
list_meta_council_feedback
ADMIN ONLY: list platform-feedback reports — feedback about Meta Council itself, never a tenant's own business data — across all users for triage (requires an ADMIN_EMAILS account; everyone else gets a permission error). Filter by status, category, or severity.
triage_meta_council_feedback
ADMIN ONLY: triage a platform-feedback report — set its status and/or admin notes (requires an ADMIN_EMAILS account; everyone else gets a permission error). Get the full feedback id from list_meta_council_feedback.
list_marketing_brands
List brand identities owned by the API-key account.
get_marketing_brand
Get one owned brand identity with its voice, value proposition, and guidelines.
list_marketing_audiences
List reusable marketing audiences owned by the API-key account.
get_marketing_audience
Get one owned audience definition with pain points and channels.
list_marketing_campaigns
List owned marketing campaigns. These are separate from Sales outreach campaigns.
get_marketing_campaign
Get one owned marketing campaign with its brand, audience, channels, and dates.
list_content_assets
List owned content assets and immutable revisions; content is never published by this tool.
get_content_asset
Get one owned content revision, including its review state and exact content hashes.
get_content_calendar
List scheduled owned content between optional ISO-8601 boundaries. Scheduling is planning metadata, not publishing.
create_marketing_brand
Create an owner-private brand identity. Requires marketing:agent_write.
update_marketing_brand
Update fields on one owned brand identity. No delete is exposed over MCP.
create_marketing_audience
Create an owner-private reusable audience definition.
update_marketing_audience
Update fields on one owned audience definition. No delete is exposed over MCP.
create_marketing_campaign
Create an owner-private marketing campaign linked only to owned brand/audience ids.
update_marketing_campaign
Update one owned marketing campaign. Campaign status never publishes content.
create_content_asset
Create a private draft content asset. There is no publish/send operation.
update_content_asset
Edit an owned draft. Submitted/approved/rejected revisions are immutable and must be revised.
create_content_asset_revision
Create a new owned draft revision from a frozen submitted/approved/rejected revision.
submit_content_asset
Submit an owned draft for review, freezing that exact revision and content hash.
approve_content_asset
Approve a submitted owned revision and attest to its exact content hash. Requires marketing:approve, separate from draft authority.
reject_content_asset
Reject a submitted owned revision with optional reviewer notes. Requires marketing:approve.
list_consulting_clients
List consulting clients owned by the API-key account.
create_consulting_client
Create an account-private consulting client.
update_consulting_client
Update mutable fields on an owned consulting client.
list_consulting_engagements
List consulting engagements owned by the API-key account.
create_consulting_engagement
Create an engagement for an owned consulting client.
update_consulting_engagement
Update mutable fields on an owned consulting engagement.
get_consulting_engagement
Get one owned engagement with its document revisions, milestones, and internal deliverables. Long document bodies are previewed.
create_consulting_document_revision
Create a revision-safe proposal or SOW draft on an owned engagement.
update_consulting_document_revision
Edit an unapproved proposal/SOW revision; approved revisions are immutable.
initialize_consulting_milestones
Idempotently initialize stable engagement milestones. Retries return the same ids and external refs.
update_consulting_milestone
Update an owned consulting milestone while preserving its stable ref.
create_consulting_deliverable
Create an internal draft deliverable on an owned engagement.
update_consulting_deliverable
Edit an internal draft deliverable; review/approval state is separate.
submit_consulting_deliverable
Submit an owned draft deliverable for internal review without publishing it.
reopen_consulting_deliverable
Return an unapproved review deliverable to editable draft status.
approve_consulting_document_revision
Approve and lock one exact proposal/SOW revision. Requires the separate consulting:approve scope and never publishes or shares it.
approve_consulting_deliverable
Approve one submitted internal deliverable and record approver evidence. Requires consulting:approve and never publishes or sends it.

Endpoint

https://meta-council.com/mcp
Category: Communication · Last checked: 2026-08-15T09:10:11Z

Monitor your own MCP server

Get alerted the moment yours goes down, a tool schema drifts, or an upstream silently breaks.

Get early access
How we measure →
What this means. This server responded to the MCP handshake and listed its tools without authentication. The schema fingerprint lets us flag if tool signatures silently change (schema drift) between checks.