适合谁
- 需要长期维护、代码量很大(数百万行以上)的企业级或多语言代码库
- 希望嵌入与索引数据完全留在本机、不外传的隐私敏感团队
- 已在使用 Claude Code、Cursor、VS Code Copilot 或 Gemini CLI,想让 AI 助手更少读文件、更多用语义搜索和依赖图的开发者
- 多个 AI 代理或多人协作、共享同一份代码索引的团队
SocratiCode 是一个功能较为完整的本地代码库智能 MCP 服务器,提供混合语义搜索、多语言依赖图和符号级影响分析等能力,默认在本机 Docker 容器中运行、无需 API key,适合大型多语言代码库的深度探索场景。使用前需要接受运行本地 Docker 容器、按需配置云端嵌入 API 密钥,以及 AGPL-3.0 许可证的约束;文档明确说明了调用图基于静态分析、对动态派发和框架魔法存在盲区,团队应结合人工审查使用其影响分析结果。
最强项 · 文档质量 18/20 最弱项 · 可靠性 9/20
静态评测 · 未实际运行收录于 2026-08-06
查看 FMRS 评分方法 →运行环境:Node.js 18+ · Docker
OPENAI_API_KEY
仅当 EMBEDDING_PROVIDER=openai 时需要,在 platform.openai.com 获取。
GOOGLE_API_KEY
仅当 EMBEDDING_PROVIDER=google 时需要,在 aistudio.google.com/apikey 获取。
QDRANT_API_KEY
external 模式下远程 Qdrant 的 API 密钥。
LMSTUDIO_API_KEY
LM Studio 启用鉴权时使用的 API 密钥。
LITELLM_API_KEY
LiteLLM 代理的 master/虚拟密钥,LiteLLM 模式下必填。
EMBEDDING_PROVIDER
嵌入提供方:ollama(默认)、openai、google、lmstudio 或 litellm;可选。
OLLAMA_URL
外部 Ollama 服务地址(默认自动检测,如 http://localhost:11434)。
OLLAMA_MODE
设为 external 可使用本机原生或远程 Ollama,默认 auto。
EMBEDDING_MODEL
嵌入模型名,各提供方有默认值;LM Studio/LiteLLM 模式下必填。
EMBEDDING_DIMENSIONS
嵌入向量维度;LM Studio/LiteLLM 模式下必填。
QDRANT_MODE
managed(默认 Docker 托管)或 external(用户自建实例)。
QDRANT_URL
external 模式下远程/云端 Qdrant 的完整地址。
LMSTUDIO_URL
LM Studio 本地服务器地址,默认 http://localhost:1234/v1。
LITELLM_URL
LiteLLM 代理地址,默认 http://localhost:4000/v1。
LITELLM_SEND_DIMENSIONS
是否向代理转发 dimensions 参数,仅对 Matryoshka 感知的后端安全。
SOCRATICODE_LOG_LEVEL
结构化日志的日志级别。
SOCRATICODE_PROJECT_ID
跨目录/git worktree 共享同一索引的项目 ID。
SOCRATICODE_LINKED_PROJECTS
逗号分隔的关联项目路径,用于跨项目搜索。
SOCRATICODE_BRANCH_AWARE
设为 true 时按 git 分支维护独立索引。
RESPECT_GITIGNORE
设为 false 可禁用 .gitignore 处理。
INCLUDE_DOT_FILES
设为 true 可包含点目录(如 .agent)。
EXTRA_EXTENSIONS
包含非标准文件扩展名(如 .tpl),按纯文本索引。
EXTENSION_LANGUAGE_MAP
把自定义扩展名映射为真实语言(如 .inc:php)以启用 AST 处理。
SEARCH_MIN_SCORE
搜索结果最低分数阈值(默认 0.10),跨项目搜索时可能需调低。
1) 确保本地已安装并启动 Docker,以及 Node.js 18 及以上版本。2) 最简单方式:在支持 MCP 的客户端配置中加入 npx 启动命令 {"command":"npx","args":["-y","socraticode"]}(如 Claude Desktop、Windsurf、Cline、Roo Code 等的 mcpServers 配置,或 VS Code 项目内 .vscode/mcp.json 的 servers 配置)。3) Claude Code 用户推荐安装官方插件以自动获得配套技能:claude plugin marketplace add giancarloerra/socraticode 后 claude plugin install socraticode@socraticode,或在 Claude Code 内执行 /plugin marketplace add giancarloerra/socraticode 与 /plugin install socraticode@socraticode。4) VS Code/Cursor 用户也可在扩展市场搜索 SocratiCode 安装官方扩展或插件。5) 首次使用时服务器会自动拉取 Docker 镜像并启动 Qdrant 与 Ollama 容器、下载嵌入模型,大约耗时 5 分钟;之后启动只需数秒。6) 如需使用云端嵌入(OpenAI/Google)或外部 Qdrant,可在配置的 env 字段中设置 EMBEDDING_PROVIDER、OPENAI_API_KEY、GOOGLE_API_KEY、QDRANT_MODE、QDRANT_URL、QDRANT_API_KEY 等环境变量。7) 首次在项目中使用时,让 AI 执行“索引这个代码库”触发 codebase_index,之后用 codebase_status 查看索引进度。
{"mcpServers":{"socraticode":{"command":"npx","args":["-y","socraticode"]}}}
以 Claude Code 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。
{
"servers": {
"socraticode": {
"command": "npx",
"args": [
"-y",
"socraticode"
]
}
}
}
写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。
claude mcp add socraticode -- npx -y socraticode
在终端运行;先把 <…> 占位符换成你自己的值。
启动后查看 MCP 客户端的工具列表,应出现 codebase_index、codebase_search 等工具;首次运行时对项目说“索引这个代码库”,然后用 codebase_status 确认索引完成,即证明连接成功。
连接成功后,可以直接对 AI 助手这样说:
没有匹配的工具
依据项目文档列出,未经本站实测。
SocratiCode 是一个开源 MCP 服务器,为 AI 助手提供代码库的深度语义理解。它基于 Qdrant 向量数据库和 Ollama(默认本地、也可切换到 OpenAI 或 Google 云端嵌入)构建混合语义+BM25(RRF 融合)搜索,并使用 ast-grep 对 18 种以上语言做 AST 感知分块与多语言依赖关系图分析,支持符号级影响分析(blast radius)、调用流追踪、循环依赖检测、交互式 HTML 图谱查看器,以及跨项目、按分支索引和数据库/API/基础设施等非代码知识的检索。README 声称在 VS Code(245 万行代码)基准测试中比基于 grep 的探索减少 61% 的上下文、减少 84% 的工具调用、快 37 倍。默认在 Docker 中本地运行,不需要 API key,代码不出本机;也可配置云端嵌入服务和外部 Qdrant 实例。项目以 AGPL-3.0 许可发布,并提供尚处私测阶段的付费云端版本(SocratiCode Cloud)。
Upstash 官方维护,为 AI 编码助手提供实时更新的第三方库文档
基于 AI 的 NPM 包分析 MCP 服务器
为 AI 编码代理提供预算、验证与回滚的治理控制层
GitHub 官方 MCP Server,用自然语言管理仓库、Issue、PR 与工作流
源版本 4aa6fc23ae69 数据同步于 2026-11-04 查看 FMRS 评分方法