{"name":"Synero AI Council","description":"Ask up to four leading AI models (GPT, Claude, Gemini, Grok) the same question and get one consensus answer plus an agreement analysis of where they agree and split. Use as a verification layer when you need high-confidence, multi-perspective answers.","version":"2.1.1","remotes":[{"transport_type":"streamable-http","url":"https://synero.ai/api/mcp","authentication":{"type":"oauth2","authorization_server":"https://synero.ai/.well-known/oauth-authorization-server","alternative":"Authorization: Bearer sk_live_... (API key from https://synero.ai/app/api-keys)"}}],"server":{"command":"npx","args":["-y","@syneroai/mcp"],"env":{"SYNERO_API_KEY":{"description":"Your Synero API key (get one at https://synero.ai/app/api-keys)","required":true}}},"tools":[{"name":"query_council","title":"Ask the AI council","description":"Ask Synero's council: up to four leading models (GPT, Claude, Gemini, Grok) answer the same question independently. You get one consensus answer plus an agreement analysis: what every model agreed on, and exactly where they split, with each model's stance named. Choose models with `models` (one per provider) or `preset` (solo, duel, council, deep, or auto to let Synero pick per question); with neither you get the balanced four-model council. Set synthesis: false for a cheaper raw mode that returns each model's answer for you to reconcile. Each result carries a queryId: pass it as parent_query_id to ask a follow-up with full context. Typically about a minute, longer for deep or web_search; the agreement analysis adds roughly 4 seconds (up to 20) after the answers, including in raw mode. The call streams progress and is bounded by a server-side deadline of a few minutes.","annotations":{"title":"Ask the AI council","readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true},"outputSchema":{"type":"object","properties":{"queryId":{"type":["string","null"],"description":"Saved query id; pass it as parent_query_id to follow up. Null when private or not saved."},"url":{"type":["string","null"],"description":"Link to the saved query in the Synero app."},"tier":{"type":["string","null"]},"cappedFrom":{"type":"string","description":"Set when an explicit high tier ran as medium."},"webSearchAuto":{"type":"boolean","description":"Web search was turned on automatically because the question looked time-sensitive."},"consensusAnswer":{"type":["string","null"],"description":"Server-side consensus answer; null in raw mode, for one model, or when synthesis failed."},"synthesisError":{"type":"string"},"synthesisSkipReason":{"type":"string","description":"Why no consensus answer was produced on purpose: requested_off, single_model or other_models_failed."},"failedAdvisors":{"type":"array","description":"Models that were asked but did not answer.","items":{"type":"object","properties":{"slotId":{"type":"string"},"modelId":{"type":"string"},"error":{"type":"string"}},"required":["slotId","modelId","error"]}},"consensus":{"type":["object","null"],"description":"Agreement analysis across models, named by model.","properties":{"score":{"type":"number","description":"0-100; 100 means the models fully agree."},"unanimous":{"type":"array","items":{"type":"string"}},"contested":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"positions":{"type":"array","items":{"type":"object","properties":{"model":{"type":"string"},"stance":{"type":"string"}},"required":["model","stance"]}}},"required":["topic","positions"]}},"dissenter":{"type":["string","null"]},"resolution":{"type":"string"},"takeaway":{"type":"string"}},"required":["score","unanimous","contested","dissenter"]},"answers":{"type":"array","items":{"type":"object","properties":{"model":{"type":"string","description":"Model id."},"name":{"type":"string","description":"Display name."},"response":{"type":"string","description":"Present with detail: full or when no consensus answer was produced."},"truncated":{"type":"boolean"},"searched":{"type":"boolean"},"sources":{"type":"array","items":{}}},"required":["model","name"]}}},"required":["queryId","url","tier","consensusAnswer","consensus","answers"]},"inputSchema":{"type":"object","required":["prompt"],"properties":{"prompt":{"type":"string","description":"The question to ask the council (max 10,000 characters)"},"models":{"type":"array","maxItems":4,"uniqueItems":true,"items":{"type":"string","enum":["gpt-6.1-sol","gpt-6-luna","gpt-6-astra","gpt-5.6-sol","gpt-5.6-terra","gpt-5.6-luna","claude-opus-5-5","claude-sonnet-5-5","claude-fable-5-1","claude-opus-5","claude-sonnet-5","claude-haiku-5-5","gemini-3.8-flash","gemini-3.5-flash","gemini-3.5-flash-lite","gemini-3.1-pro-preview","grok-4.7","grok-4.6","grok-4.5","grok-4.3"]},"description":"1 to 4 model ids, at most one per provider (openai, anthropic, google, xai). Overrides preset's default pick. With one model it is a normal chat; with two or more you get the consensus answer and agreement analysis."},"preset":{"type":"string","enum":["solo","duel","council","deep","auto"],"description":"solo (one model), duel (two), council (up to four, balanced for speed; the default), deep (up to four flagship models, slower and costlier) or auto (Synero picks the preset and models for the question: solo when simple, duel for some judgment, council when experts would disagree, deep when stakes are high). Without models, the preset's default models run."},"web_search":{"type":"boolean","description":"Let each model search the web before answering. Omit it and search turns on automatically for time-sensitive questions (news, prices, \"latest\", this year, a URL), reported as webSearchAuto. true forces it on, false forces it off. Search is slower and adds search fees."},"synthesis":{"type":"boolean","default":true,"description":"Default true: Synero's server-side consensus answer plus the agreement analysis. Set false for the cheaper raw mode: each model's answer plus instructions for you to reconcile them (no consensus answer; the agreement analysis is still included)."},"detail":{"type":"string","enum":["synthesis","full"],"default":"synthesis","description":"'synthesis' (default) returns the consensus answer, the agreement analysis and the model roster, keeping your context small. 'full' adds each model's complete answer. Raw mode (synthesis: false) always returns every answer."},"context":{"type":"array","maxItems":20,"description":"Attach documents, text, or images. All models see attached images. Text: max 50k chars per item, 100k total, at most 20 items. Images: base64 data URLs (png/jpeg/webp/gif), max 3, 5MB each.","items":{"type":"object","required":["name","content"],"properties":{"name":{"type":"string","maxLength":300,"description":"Label for this context (e.g. filename)"},"content":{"type":"string","description":"The actual text, inlined. File paths and URLs are not readable by the API: paste the file's contents here. For type 'image', a base64 data URL (data:image/png;base64,...)"},"type":{"type":"string","enum":["file","text","image"],"default":"text"}}}},"parent_query_id":{"type":"string","description":"The queryId of a previous result (yours only). The server rebuilds that conversation so the council answers a follow-up with context."},"thread_id":{"type":"string","description":"Optional thread id to group queries in the Synero history. Sent without parent_query_id, the query is filed as the newest turn of that thread (one chat in history), but the models get no earlier context: pass parent_query_id for that. Follow-ups inherit the parent's thread automatically (a first follow-up starts one)."},"private":{"type":"boolean","default":false,"description":"Do not save this query to the user's history. Private queries return no queryId and cannot be followed up."},"template":{"type":"string","description":"Built-in council template slug: code-review, architecture-decision, debugging, tech-stack, deep-research, literature-review, due-diligence, strategy-brief, product-decision, investment-analysis, brainstorm, devils-advocate, content-strategy, legal-review. With models or preset, only the template's synthesis instructions apply."},"config":{"type":"object","description":"Legacy persona-slot overrides (the four-persona council). Prefer models or preset. Ignored if template, models or preset is provided.","properties":{"advisorModels":{"type":"object","properties":{"architect":{"type":"string"},"philosopher":{"type":"string"},"explorer":{"type":"string"},"maverick":{"type":"string"}}},"synthesizerModel":{"type":"string"},"councilTier":{"type":"string","enum":["auto","instant","low","medium","high","custom"],"description":"auto sizes the council per question (setting advisorModels or synthesizerModel runs a custom council instead); instant = one fast model; low ~30s; medium ~45s. Via this API the council is capped at medium (a request for high runs the medium bench, reported as cappedFrom) and bounded by a server-side deadline."}}}}}}],"links":{"homepage":"https://synero.ai/agent","apiDocs":"https://synero.ai/developers","openapi":"https://synero.ai/openapi.json","pricing":"https://synero.ai/pricing","authorization":"https://synero.ai/.well-known/oauth-protected-resource/api/mcp"}}