mcpbeat Sign in

Socraticode MCP Server

local only

Socraticode runs on your own machine — the client starts it, so there is no endpoint to ping. 2 582 installs a week from npm. Last commit 24 Oct 2026.

MCP server for enterprise local codebase indexing, semantic search, and code dependency graphs.

Installs per day peak 2 067 · avg 822 · -48% w/w
a month agotoday
2 582
Installs / week
npm · socraticode
3 363
Stars
1 open issue
24 Oct 2026
Last commit
10 releases in 90 days
AGPL-3.0
License
TypeScript

What the code does

We read the source, 21 h ago · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Builds a file path from a variable src/services/ignore.ts:329, src/services/lock.ts:53
    const dirPath = path.join(currentPath, dirName);
      execSync(`taskkill /F /PID ${pid}`, { stdio: "ignore" });

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.

run in your terminal
claude mcp add socraticode -- npx -y socraticode
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "socraticode": {
      "command": "npx",
      "args": [
        "-y",
        "socraticode"
      ]
    }
  }
}
~/.codex/config.toml
[mcp_servers.socraticode]
command = "npx"
args = ["-y", "socraticode"]
.cursor/mcp.json
{
  "mcpServers": {
    "socraticode": {
      "command": "npx",
      "args": [
        "-y",
        "socraticode"
      ]
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "socraticode": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "socraticode"
      ]
    }
  }
}

Optional settings from the registry entry, left out of the block above: EMBEDDING_PROVIDER (Embedding provider to use: ollama (default), openai, google, lmstudio, or litellm), OPENAI_API_KEY (API key for OpenAI embeddings (required only when EMBEDDING_PROVIDER=openai)), GOOGLE_API_KEY (API key for Google embeddings (required only when EMBEDDING_PROVIDER=google)), OLLAMA_URL (URL of the Ollama server (default: auto-detected; Docker-managed or http://localhost:11434)), EMBEDDING_MODEL (Embedding model name (defaults per provider; required for lmstudio and litellm)), EMBEDDING_DIMENSIONS (Embedding vector dimensions (defaults per provider; required for lmstudio and litellm)), OLLAMA_MODE (Ollama mode: auto (default), docker, or external), OLLAMA_API_KEY (Optional API key for authenticated Ollama proxies), LMSTUDIO_URL (LM Studio OpenAI-compatible base URL (default: http://localhost:1234/v1)), LMSTUDIO_API_KEY (Optional API key when LM Studio authentication is enabled), LMSTUDIO_ALLOW_MISSING_MODEL_LISTING (Allow compatible embedding servers without a models endpoint to be probed directly), LITELLM_URL (LiteLLM OpenAI-compatible base URL (default: http://localhost:4000/v1)), LITELLM_API_KEY (LiteLLM master or virtual API key (required when EMBEDDING_PROVIDER=litellm)), LITELLM_SEND_DIMENSIONS (Forward the dimensions parameter through LiteLLM when explicitly enabled), QDRANT_MODE (Qdrant mode: managed (default, Docker-managed) or external (user-provided instance)), QDRANT_URL (Full URL for remote/cloud Qdrant (e.g. https://xyz.cloud.qdrant.io:6333). Only needed when QDRANT_MODE=external), QDRANT_API_KEY (API key for remote Qdrant instance. Only needed when QDRANT_MODE=external).

Alternatives to Socraticode

same job, measured the same way
Deepcontext
by wild-card

Advanced codebase indexing and semantic search MCP server

94 installs/wk local only
Flyto Indexer
by flytohub

Code intelligence MCP server — impact analysis, semantic search, dependency graphs

350 installs/wk local only
Filesift
by roshunsunder

Local file search for AI agents — semantic + keyword indexing over your codebase.

44 installs/wk local only
Infimium
by aryankumar06

Private AI context layer for semantic code search, dependency graphs, memory, and workspaces.

67 installs/wk local only
Graphlens MCP
by neko1313

Semantic code graph MCP server for coding agents

134 installs/wk local only
Agentmako
by drhalto

Local-first codebase intelligence MCP server for AI coding agents.

50 installs/wk local only
Code Pathfinder
by codepathfinder

Code intelligence MCP server: call graphs, type inference, and symbol search for Python/Go.

295 installs/wk local only
Flyto Indexer
by chesterhsu

Code intelligence MCP server: impact analysis, dependency graphs, dead code detection.

local only

Socraticode — questions

Answers built from our own checks of this server.

Why is there no uptime for Socraticode?
Socraticode runs on your own machine over stdio — there is no network address to reach, so uptime cannot be measured for it by anyone. What can be measured is adoption: the npm package socraticode was installed 2 582 times last week.
How do I connect Socraticode?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It runs locally, so the command pulls socraticode straight from npm; nothing to host, nothing to sign up for.
How many people use Socraticode?
The npm package socraticode was installed 2 582 times in the last week. Week over week that is -48%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Socraticode open source?
Yes — it is published under the AGPL-3.0 licence, written in TypeScript, 3 363 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.