Token导航 LogoToken导航TokenDH.com
Kemdicode MCP logo
开发工具stdio官方级别未说明来源级核验

Kemdicode MCP

MCP Server

kemdiCode MCP是一个支持持久化认知、多智能体编排和分布式集群通信的AI编码助手扩展服务,适用于复杂代码分析和团队协作场景。

工具数

63

提示词数

0

GitHub Stars

2

资源数

0
TypeScriptClaude多智能体系统ClaudeCursorWindsurfVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

kemdi-pl

提供方

kemdi-pl

最后核验

2026/5/17 20:22

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -d -p 6379:6379 redis:alpine

详细介绍

Persistent Cognition, Cluster Bus & Magistrale, Parallel Multi-Agent Orchestration with Live Monitoring for AI Coding Assistants

______________________________________________________________________

kemdiCode MCP 是一个 模型上下文协议 该服务器通过持久认知、多代理编排、分布式集群通信和上下文压缩扩展了AI编码助手。 63工具 跨15个类别,由Redis支持跨会话状态,8个LLM提供程序支持嵌入式AI执行。

洛伦兹启发的压实管道 --通过庞加莱截面进行相位检测,通过吸引子循环去重进行轨道压缩,以及CTC扰动影响评分——保持了跨上下文窗口边界的推理连续性。

集群巴士和Magistrale --两层总线(ClusterBus L3用于集群间Redis发布/订阅,GlobalEventBus L1用于进程内事件),具有18种信号类型、基于MetaRouter标签的路由、反放大桥和LLM Magistrale,用于跨集群的分布式快速执行(4种策略:先赢、n中最佳、共识、回退链)。

33个测试文件中的741个测试。适用于Claude Code、Cursor、Windsurf、VS Code、Zed和任何兼容MCP的客户端。

______________________________________________________________________

安装

bun install -g kemdicode-mcp

Claude Code

claude mcp add kemdicode-mcp -- kemdicode-mcp --stdio

Cursor — ~/.cursor/mcp.json

{
  "mcpServers": {
    "kemdicode-mcp": {
      "command": "kemdicode-mcp",
      "args": ["--stdio"]
    }
  }
}

Windsurf — ~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "kemdicode-mcp": {
      "command": "kemdicode-mcp",
      "args": ["--stdio"]
    }
  }
}

VS Code (GitHub Copilot) — .vscode/mcp.json

{
  "mcp": {
    "servers": {
      "kemdicode-mcp": {
        "command": "kemdicode-mcp",
        "args": ["--stdio"]
      }
    }
  }
}

Zed — ~/.config/zed/settings.json

{
  "context_servers": {
    "kemdicode-mcp": {
      "command": {
        "path": "kemdicode-mcp",
        "args": ["--stdio"]
      }
    }
  }
}

KiroCode / RooCode — .kiro/settings/mcp.json

{
  "mcpServers": {
    "kemdicode-mcp": {
      "command": "kemdicode-mcp",
      "args": ["--stdio"]
    }
  }
}

HTTP Transport (multi-session)

kemdicode-mcp --port 3100

Redis (required for persistence)

没有Redis,只有无状态工具(代码智能、AI调用)才能发挥作用。

# Docker (recommended)
docker run -d -p 6379:6379 redis:alpine

# macOS
brew install redis && brew services start redis

# Debian/Ubuntu
sudo apt install redis-server && sudo systemctl start redis

Build from Source

git clone https://github.com/kemdi-pl/kemdicode-mcp.git
cd kemdicode-mcp
bun install && bun run build && bun run start

______________________________________________________________________

配置

大语言模型提供商

kemdiCode支持8个LLM提供商,具有统一的 provider:model:thinking 语法。

别名提供者SDK身份验证
oOpenAI原生OPENAI_API_KEY
a人类学本土ANTHROPIC_API_KEY
g双子座原住民GEMINI_API_KEY
q格鲁克OpenAI-compatGROQ_API_KEY
dDeepSeekOpenAI兼容DEEPSEEK_API_KEY
lOllamaOpenAI同胞(无)
rOpenRouterOpenAI兼容OPENROUTER_API_KEY
p困惑OpenAI兼容PERPLEXITY_API_KEY

思考令牌控制:

o:o3:high                     # OpenAI reasoning effort (low/medium/high)
a:claude-sonnet-4-6:4k        # Anthropic thinking budget (4096 tokens)
g:gemini-2.5-flash:8k         # Gemini thinking budget (8192 tokens)

自定义端点(运行时热重新加载):

ai-config --action add-custom --name minimax --baseURL https://api.minimax.io/v1 --apiKey sk-...
# Then use: custom:minimax:MiniMax-M2.5

CLI标志

kemdicode-mcp [options]

  --stdio                 Stdio transport (subprocess mode for MCP clients)
  -m, --model       Primary AI model (provider:model:thinking)
  -f, --fallback    Fallback model on quota/error
  --port               HTTP server port (default: 3100)
  --host            Bind address (default: 127.0.0.1)
  --redis-host      Redis host (default: 127.0.0.1)
  --redis-port         Redis port (default: 6379)
  --no-context            Disable Redis context sharing
  --compact               Minimal output

______________________________________________________________________

工具参考

15个类别的63个工具。整合工具使用 action 参数(例如。, task action=create|get|list|update|delete).

类别工具
核心AIask-ai plan build brainstorm batch pipeline
代码智能find-definition find-references semantic-search
多LLMmulti-prompt consensus-prompt enhance-prompt mind-chain
认知decision-journal confidence-tracker mental-model intent-tracker error-pattern self-critique smart-handoff context-budget
代理agent agent-comm monitor
上下文shared-thoughts get-shared-context feedback
看板task task-multi board workspace
记忆memory checkpoint
递归invoke-tool invoke-batch invocation-log agent-orchestrate
会话session
思考thinking-chain
知识图谱graph-query graph-find-path loci-recall sequence-recommend
集群总线cluster-bus-status cluster-bus-topology cluster-bus-send cluster-bus-magistrale cluster-bus-flow cluster-bus-routing cluster-bus-inspect cluster-bus-file-read audit-scheduler
MCP客户端client-sampling client-elicit client-roots
系统env-info memory-usage ai-config ai-models tool-health config ping help

______________________________________________________________________

建筑

事件总线(2层)

L3  ClusterBus     Redis Pub/Sub cross-process signaling
                   18 signal types, 4 send modes (unicast/broadcast/routed/multicast)
                   HMAC auth, bloom filter dedup, backpressure, circuit breaker
    ----bridges--> hop limit 5, source prefix guard
L1  GlobalEventBus In-process async events, namespaced, max chain depth 8
                   Redis bridge for cross-session propagation

洛伦兹语境压缩

在压缩边界上保持推理连续性的三种算法:

  1. 相位检测 --庞加莱截面分析。连续的Jensen Shannon分歧确定了话题转换。阶段边界携带了关于推理轨迹的最大信息。
  1. 轨道压缩 --洛伦兹吸引子循环检测。具有贪婪循环搜索的NxN TF-IDF余弦相似性矩阵(长度2-10,最小2次重复)。保留第一个循环,修剪重复。
  1. 扰动影响 --JSD(full_context,context_without_item)量化每个项目的贡献。高冲击项目是压实后幸存的因果锚。

九种思维

九种专门的认知主体,每种都有不同的思维方式。受启发于 衔尾蛇 哈里·蒙罗:

思维模式核心问题
socratic质疑“你在假设什么?”
ontologist分类“这到底是什么?”
seed-architect结晶“这是完整和明确的吗?”
evaluator验证“我们建造了正确的东西吗?”
contrarian对抗“如果相反的情况属实呢?”
hacker横向“哪些约束是真实的?”
simplifierReductive“最简单可行的方法是什么?”
researcher证据“我们实际上有什么证据?”
architect结构性“如果我们重新开始,我们会这样建造吗?”

使用任何头脑作为 agent 参数: ask-ai --agent socratic --prompt "...".为多角度分析撰写它们:苏格拉底→ 本体论者→ 种子建筑师(辩证推进)。

能动循环

自主代理执行,子代理生成(最大深度2,全局预算10),通过以下方式注入文件上下文 @path 语法和完整的编排ID可追溯性。

并行代理 --通过并行方式启动2-10个代理 agent-orchestrate --parallel每个人都有一个独特的 orchestrationId,通过Redis和内存缓存实时跟踪。通过以下方式汇总结果 Promise.allSettled.

实时监控 --代理运行时查询编排状态(MCP在工具调用期间阻塞,因此使用HTTP):

# List all active orchestrations
curl http://localhost:3100/orchestrations

# Get specific orchestration status
curl http://localhost:3100/orchestrations/

# Or via MCP tool (when not blocked)
monitor --view orchestrations

编排ID可追溯性 --每个代理循环都会得到一个UUID。子代理通过以下方式向母公司推荐 parentOrchestrationId所有认知记录(决策、信心、意图、错误、批评、交接)都带有 orchestrationId 以实现嵌套代理层次结构的完全可追溯性。

工具访问 --默认情况下,所有kemdiCode工具都可供代理使用(只读、看板、思维链——无需shell/文件写入)。使用 allowedToolsblockedTools 为每个代理定制。

并发模型

  • 通过以下方式进行每次会话隔离 AsyncLocalStorage (通过异步链传播)
  • 用于任务状态突变的Redis事务(MULTI/EXEC、Lua脚本)
  • 具有SET NX PX、Lua CAS释放、3次重试退避的分布式锁

______________________________________________________________________

实际使用情况

kemdiCode工具在三个层次上工作。以下是开发人员每天遇到的实际场景。

第一级:无状态工具(无AI代理)

Claude Code(或Cursor等)直接调用kemdiCode工具——没有嵌入式AI,只有结构化认知和代码智能。

场景:“我在各个项目中都遇到了相同的Redis超时错误”

# 1. Check if you've seen this before
error-pattern action=match errorType="redis-timeout"
# → Returns: "Pattern found: connection pool exhaustion under load.
#    Fix: set maxRetriesPerRequest=3, enable enableOfflineQueue=false"

# 2. It's a new variant — record it
error-pattern action=record \
  errorType="redis-timeout" \
  pattern="ETIMEDOUT after 200 concurrent writes in bull queue" \
  fix="Switch from ioredis default to pooled connection with family=6 on k8s"

# 3. Track the decision
decision-journal action=record \
  question="How to handle Redis under Bull queue load?" \
  options='["connection pool","Redis Cluster","separate Redis instance"]' \
  chosen="connection pool" \
  reasoning="Cluster adds ops complexity, separate instance adds cost"

场景:“Sprint计划——在3个开发人员中组织15个任务”

# Create workspace + board
workspace action=create name="Q1 Auth Rewrite"
board action=create name="Sprint 12" workspaceId=

# Batch create tasks
task action=create boardId= title="Migrate session store to Redis" priority=high labels='["backend"]'
task action=create boardId= title="Add PKCE flow to OAuth" priority=high labels='["security"]'
task action=create boardId= title="Write E2E tests for login" priority=medium labels='["testing"]'
# ... more tasks

# Assign and track
task action=assign taskId= assignee="alice"
task action=update taskId= status="in-progress"
board action=status boardId=
# → Shows kanban: 3 todo, 2 in-progress, 1 done

场景:“加入团队后浏览不熟悉的代码库”

# Find where auth middleware is defined
find-definition --symbol "authMiddleware" --path "@src/"

# Find all places it's used
find-references --symbol "authMiddleware" --path "@src/"

# Search by concept, not just text
semantic-search --query "rate limiting per user" --path "@src/"

# Persist findings for next session
memory action=write name="auth-architecture" \
  content="authMiddleware in src/middleware/auth.ts, used in 14 routes. Rate limiting in src/middleware/rateLimit.ts uses sliding window with Redis MULTI."

第二级:AI代理(嵌入式LLM执行)

kemdiCode在内部调用外部LLM进行推理、分析和生成。你的IDE的AI不做这项工作——kemdiCode自己的代理做。

场景:“调试API响应时间从50ms变为3秒的原因”

# Start structured reasoning with the plan agent
agent-orchestrate \
  --agent plan \
  --task "Analyze why GET /api/users went from 50ms to 3s. Check @src/routes/users.ts and @src/services/userService.ts for N+1 queries, missing indexes, or unnecessary joins." \
  --sessionId "debug-perf" \
  --maxIterations 10 \
  --enableCognition true

# The agent autonomously:
# 1. Reads the files via find-definition / find-references
# 2. Identifies: userService.getAll() does 3 sequential DB calls
# 3. Records in error-pattern: "N+1 query in user list endpoint"
# 4. Records in decision-journal: "Consolidate to single JOIN query"
# 5. Returns: "Root cause: 3 sequential queries per user (N+1). Fix: replace
#    with single LEFT JOIN on user_roles and user_preferences."

场景:“我们提出的微服务拆分是个好主意吗?”

使用 mind-chain --连续的思维切换,每个思维都建立在前一个思维的基础上:

# One call — 4 Minds analyze in sequence, each seeing previous outputs
mind-chain \
  --composition custom \
  --minds '["architect", "contrarian", "researcher", "simplifier"]' \
  --prompt "Evaluate splitting the monolith at @src/ into auth-service, user-service, and notification-service. We have 3 developers and 45 shared models."

# Or use a predefined composition:
mind-chain --composition adversarial \
  --prompt "Should we split the monolith into microservices? @src/"

# Full review with 6 Minds + synthesis:
mind-chain --composition full-review \
  --prompt "Architecture decision: monolith vs microservices for @src/"

链运行:建筑师建议→ 逆向挑战→ 研究人员事实核查→ Simplifier找到了务实的道路→ 综合结合了所有观点。

场景:“让3名LLM审查关键的安全更改”

# Send to GPT-4o, Claude, and Gemini in parallel
multi-prompt \
  --prompt "Review this OAuth implementation for security vulnerabilities: @src/auth/oauth.ts" \
  --models '["o:gpt-4.1", "a:claude-sonnet-4-6", "g:gemini-2.5-pro"]' \
  --agent evaluator

# Or use CEO-and-Board consensus
consensus-prompt \
  --prompt "Is this PKCE implementation correct and secure? @src/auth/pkce.ts" \
  --boardModels '["o:gpt-4.1", "g:gemini-2.5-pro", "d:deepseek-v3"]' \
  --ceoModel "a:claude-sonnet-4-6"
# → Board votes + CEO synthesizes a final verdict with reasoning

第三级:集群总线和Magistrale(分布式LLM编排)

多个LLM节点通过Redis Pub/Sub进行通信。当您需要更广泛的上下文时,请使用此方法——将同一问题分派给具有不同专业化的多个模型。

场景:“设计一个速率限制器——从3个模型中获得最佳答案”

# Dispatch to all registered clusters, pick the best response
cluster-bus-magistrale \
  --prompt "Design a distributed rate limiter for a REST API with 10K req/s. Must handle multi-region, be Redis-backed, and support per-user and per-IP limits. Include TypeScript implementation." \
  --strategy "best-of-n"

# Magistrale:
# 1. Sends the prompt to Cluster A (GPT-4.1), Cluster B (Claude), Cluster C (Gemini)
# 2. Each cluster runs PassController (multi-pass refinement)
# 3. Scores responses: quality 0.45, detail 0.25, relevance 0.15, latency -0.15
# 4. Returns the highest-scoring implementation

场景:“架构决策——需要共识,而不仅仅是一种意见”

# Require agreement between models
cluster-bus-magistrale \
  --prompt "For a real-time collaboration feature (like Google Docs), should we use CRDTs, OT, or a simpler last-write-wins approach? Team has 2 backend devs, deadline is 6 weeks." \
  --strategy "consensus"

# Consensus strategy:
# 1. All clusters generate independent responses
# 2. TF-IDF cosine similarity scoring between responses (threshold 0.3)
# 3. If agreement: returns consensus answer
# 4. If disagreement: returns all positions with similarity scores

场景:“生产事故——需要最快的答案”

# First model to respond wins
cluster-bus-magistrale \
  --prompt "Our PostgreSQL replication lag jumped to 30s. WAL sender is active, network is fine. What should we check first?" \
  --strategy "first-wins"

# Returns in ~1s from whichever model responds fastest

场景:“深度代码分析——让集群产生自己的代理”

# Each cluster spawns an autonomous agent with tool access
cluster-bus-magistrale \
  --prompt "Find potential race conditions in the authentication module" \
  --strategy "first-wins" \
  --orchestrate true \
  --orchestrateAgent "plan" \
  --orchestrateMaxIterations 8 \
  --orchestrateAllowedTools '["find-definition", "find-references", "semantic-search"]'

# Orchestration:
# 1. Magistrale dispatches to clusters with orchestrate payload
# 2. Each cluster spawns a full agentic loop (not just an LLM call)
# 3. Agent reasons, calls tools (find-definition, semantic-search), iterates
# 4. Returns structured analysis with tool call evidence

______________________________________________________________________

发展

bun install                    # Install dependencies
bun run build                  # Compile TypeScript
bun run dev                    # Hot reload
bun run test                   # Run 741 tests
bun run typecheck              # Type check
bun run lint                   # ESLint
bun run format                 # Prettier

添加工具

  1. 在中创建文件 src/tools//
  2. 定义Zod模式 .describe() 每个字段
  3. 实施 UnifiedTool 接口
  4. 通过注册 registerLazyTool()src/tools/index.ts
  5. 在中添加注释 src/tools/annotations-map.ts

______________________________________________________________________

文档

______________________________________________________________________

许可证

GNU通用公共许可证v3.0

作者

大卫 Irzykdawid@kemdi.plKemdi Sp. z o.o.

目录标签

目录标签

TypeScriptClaude多智能体系统AI编码辅助本地部署分布式计算认知持久化代码分析工具

支持客户端

ClaudeCursorWindsurfVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

63

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP