consensus-mcp
ai-consensus-mcp
Consensus Validation Protocol을 단일
consensus도구로 노출하는 최소한의 stdio Model Context Protocol 서버입니다. Claude Code, Cursor, Windsurf 또는 모든 MCP 호스트에 실제 다중 모델 원탁 회의 기능을 제공하세요.
ai-consensus-core를 감싸는 얇은 래퍼입니다. 하나의 도구, 하나의 설정 파일, 번거로움은 없습니다.
제공 기능
하나의 MCP 도구:
consensus. 모델 및 페르소나 목록을 지정하고 다중 라운드 토론을 실행하세요.OpenAI 호환 제공업체 지원. xAI Grok, Anthropic(OpenAI 호환 엔드포인트 사용), OpenAI, Groq, Together, Fireworks 또는 개인 게이트웨이. 참가자별로 구성 가능한 단일 어댑터.
실시간 진행 상황. 모든 구조화된 엔진 이벤트는 MCP 진행 상황 알림으로 전달되며, 호스트는 실시간 라운드/참가자/의견 불일치/점수 상태를 렌더링합니다.
가벼운 의존성.
@modelcontextprotocol/sdk,zod,ai-consensus-core. SSE 파싱은 네이티브fetch를 사용하며, 별도의 제공업체 SDK가 필요 없습니다.
Related MCP server: Claude Code AI Collaboration MCP Server
프로토콜
실제 프로토콜(라운드, 단계, 프롬프트, 채점)에 대해서는 ai-consensus-core 프로토콜 다이어그램을 참조하세요. 이 README는 서버 인터페이스만 다룹니다.
설치
npm 사용:
# Globally, for use as a binary
npm install -g ai-consensus-mcp
# Or as a project dependency
npm install ai-consensus-mcp또는 복제 후 실행:
git clone https://github.com/entropyvortex/ai-consensus-mcp.git
cd ai-consensus-mcp
npm install
npm run build구성
예제를 복사하여 편집하세요:
cp consensus.config.example.json ./consensus.config.json최소 형태:
{
"providers": {
"xai": {
"baseUrl": "https://api.x.ai/v1",
"apiKeyEnv": "GROK_API_KEY"
},
"anthropic": {
"baseUrl": "https://api.anthropic.com/v1",
"apiKeyEnv": "ANTHROPIC_API_KEY"
}
},
"participants": [
{ "id": "grok", "provider": "xai", "modelId": "grok-4", "personaId": "pessimist" },
{ "id": "domain", "provider": "anthropic", "modelId": "claude-sonnet-4-6", "personaId": "domain-expert" },
{ "id": "devil", "provider": "xai", "modelId": "grok-4", "personaId": "devils-advocate" }
],
"judge": {
"provider": "xai",
"modelId": "grok-4"
}
}구성 참조
providers.<id>.baseUrl string OpenAI-compatible base URL. No trailing /chat/completions.
providers.<id>.apiKeyEnv string Name of the env var holding the API key.
providers.<id>.extraHeaders object? Static headers sent on every request (rarely needed).
participants[].id string Stable participant id (appears in events + progress).
participants[].provider string Key into providers.
participants[].modelId string Opaque model id the provider accepts.
participants[].personaId enum One of: pessimist, first-principles, vc-specialist,
scientific-skeptic, optimistic-futurist,
devils-advocate, domain-expert.
participants[].label string? Optional display label.
judge.provider string? Key into providers.
judge.modelId string? Opaque judge model id.
judge.temperature number? Defaults to 0.3.
judge.maxOutputTokens number? Defaults to 1500.
defaults.maxRounds int? 1–10, defaults 4.
defaults.earlyStop bool? Defaults true.
defaults.convergenceDelta number? Defaults 3.
defaults.disagreementThreshold number? Defaults 20.
defaults.blindFirstRound bool? Defaults true.
defaults.randomizeOrder bool? Defaults true.
defaults.participantTemperature number? Defaults 0.7.
defaults.maxOutputTokens int? Defaults 1500.
defaults.useJudge bool? Defaults true if `judge` is declared, else false.이 목록에 없는 모든 필드는 구성 로더에 의해 거부됩니다. 오타가 발생하면 조용히 넘어가지 않고 명확하게 실패합니다.
독립 실행형 실행
export GROK_API_KEY=xai-...
export ANTHROPIC_API_KEY=sk-ant-...
ai-consensus-mcp --config ./consensus.config.json서버는 stdio를 통해 JSON-RPC로 통신합니다. 시작 시 다음과 같은 준비 완료 라인이 stderr에 기록됩니다:
ai-consensus-mcp ready — 3 participant(s) from 2 provider(s), judge=grok-4 (config: /abs/consensus.config.json)stdout은 MCP 프로토콜 스트림을 위해 예약되어 있습니다.
MCP 호스트에 등록
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS) 또는 Windows 해당 파일을 편집하세요:
{
"mcpServers": {
"consensus": {
"command": "ai-consensus-mcp",
"args": ["--config", "/absolute/path/to/consensus.config.json"],
"env": {
"GROK_API_KEY": "xai-...",
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
}
}(전역으로 설치하지 않은 경우, "command": "ai-consensus-mcp"를 "command": "node"로 바꾸고 args가 /path/to/ai-consensus-mcp/dist/index.js를 가리키도록 하세요.)
Claude Desktop을 다시 시작하세요. consensus 도구를 사용할 수 있게 됩니다.
Claude Code
claude mcp add consensus \
--scope user \
-- ai-consensus-mcp --config /absolute/path/to/consensus.config.json또는 동일한 command / args / env 형태로 ~/.claude.json을 직접 편집하세요.
Cursor, Windsurf 및 기타 호스트
환경에 관련 제공업체 API 키를 설정하고 ai-consensus-mcp --config <path>/consensus.config.json을 가리키도록 하세요. Stdio 전송만 지원합니다.
consensus 도구
입력
{
"prompt": "Should an early-stage startup adopt microservices from day one?",
"maxRounds": 4, // optional, 1–10
"participantIds": ["grok", "domain"], // optional — subset of configured participants
"earlyStop": true, // optional
"judge": true, // optional — defaults to config.defaults.useJudge
"blindFirstRound": true, // optional
"randomizeOrder": true, // optional
"convergenceDelta": 3, // optional
"disagreementThreshold": 20, // optional
"participantTemperature": 0.7, // optional
"maxOutputTokens": 1500, // optional
"randomSeed": 42 // optional — deterministic round-order shuffle
}prompt만 필수입니다. 나머지는 모두 구성의 defaults로 대체되며, 그 다음 엔진의 기본값으로 대체됩니다.
출력
성공적인 호출마다 두 가지 아티팩트가 생성됩니다:
content[0].text— 사람이 읽을 수 있는 마크다운 요약:최종 점수, 소요 시간, 중단 이유
라운드별 점수 표
페르소나 + 모델별 최종 라운드 응답
심사위원 종합 의견 (
judge: true인 경우)
structuredContent— 프로그래밍 방식으로 소비하기 위한 JSON 형태의 전체ConsensusResult.
진행 상황 알림
모든 구조화된 엔진 이벤트는 MCP notifications/progress 메시지로 전달됩니다. 토큰 수준의 스트리밍 이벤트는 채널 과부하를 방지하기 위해 의도적으로 제외되었습니다.
엔진 이벤트 | 진행 상황 메시지 예시 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
progress는 roundComplete 및 synthesisComplete 시 단조 증가하며, total은 maxRounds + (judge ? 1 : 0)입니다.
오류
구성 로드 오류는 시작 시 치명적이며, 문제가 발생한 필드 경로와 함께 stderr에 출력됩니다.
도구 입력 오류는
{ isError: true, content: [{ type: "text", text: "…" }] }를 반환합니다. 호스트는 이를 확인하지만 서버는 계속 실행됩니다.제공업체 오류 (HTTP 2xx 이외의 응답, 빈 스트림)는 참가자별
response.error필드에 캡처되며, 실행은 나머지 참가자와 함께 계속됩니다. 오류는 진행 상황 스트림과 최종 구조화된 결과 모두에서 확인할 수 있습니다.취소. 호스트가 도구 호출을 취소하면
AbortSignal이 진행 중인 모든fetch로 전파되며, 엔진은stopReason: "aborted"가 포함된ConsensusResult를 반환합니다.
제한 사항 및 비목표
지속성 없음. 모든 도구 호출은 새로운 실행입니다. 기록이 필요하면 호스트 측에서
structuredContent를 기록하세요.HTTP 전송 없음. Stdio만 지원합니다. HTTP/SSE가 필요한 경우
ai-consensus-core를 직접 래핑하세요.토큰 예산 강제 없음.
maxOutputTokens는 호출당 권장 사항일 뿐입니다. 제공업체 대시보드에서 사용량 알림을 설정하세요.다중 실행 스케줄링 없음. 호출당 한 번의 실행이며, 호스트가 큐에 넣으면 순차적으로 실행됩니다.
이 중 가장 필요한 기능이 있다면 핵심 라이브러리에 추가하는 것이 좋습니다. 이 서버는 의도적으로 작게 유지됩니다.
개발
git clone https://github.com/entropyvortex/ai-consensus-mcp.git
cd ai-consensus-mcp
npm install
npm run test # vitest — config loader + MCP handshake integration
npm run build
npm start -- --config ./consensus.config.json철학
핵심 라이브러리는 Next.js, CLI, 워커, Durable Object, 다른 MCP 서버 등 어디에서나 실행될 수 있어야 합니다. 이것이 LLM 제공업체가 무엇인지 알지 못하는 이유입니다.
이 패키지는 대부분의 사람들이 가장 먼저 필요로 하는 "어디서나" 실행 가능한 stdio MCP 서버입니다. Claude Code, Cursor, Windsurf 또는 프로토콜을 지원하는 모든 호스트에 바로 사용할 수 있습니다. 의도적으로 작게 설계되어 구성을 로드하고 이벤트를 전달하는 역할만 수행합니다. 더 많은 기능이 필요하다면 핵심 라이브러리를 사용하세요.
참고
ai-consensus-core— 기반 라이브러리입니다. HTTP 전송, 사용자 정의 스케줄러 또는 더 깊은 통합이 필요한 경우 직접 사용하세요.
라이선스
MIT
entropyvortex 스택의 일부 — Marcelo Ceccon이 만든 실용적이고 군더더기 없는 AI 오픈 소스.
브라질에서 ❤️를 담아 제작.
MIT 라이선스 • 배포용으로 제작됨.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables collaborative debates between multiple AI agents, allowing them to discuss and reach consensus on user prompts.1MIT
- AlicenseBqualityDmaintenanceAn MCP server that enables multi-provider AI collaboration using models like DeepSeek, OpenAI, and Anthropic through strategies such as parallel execution and consensus building. It provides specialized tools for side-by-side content comparison, quality review, and iterative refinement across different AI providers.41MIT
- AlicenseAqualityCmaintenanceAn MCP server that enables users to query, compare, and synthesize responses from multiple local and cloud LLMs simultaneously using existing subscriptions. It provides tools for parallel model evaluation, consensus polling with an LLM-as-judge, and response synthesis across different model providers.81515MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that orchestrates multiple AI agents in parallel to get diverse perspectives on a single topic, supporting debate, review, and quick modes.341Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/entropyvortex/ai-consensus-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server