Codebase Memory MCP vs Python Exec Sandbox

A side-by-side look at the Codebase Memory MCP and Python Exec Sandbox MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Codebase Memory MCP logoCodebase Memory MCPKnowledge & Memory · Local subprocess (stdio)Code-intelligence engine that indexes a repo into a persistent knowledge graph — functions, classes, call chains, HTTP routes, cross-service links. 159 languages via tree-sitter + Hybrid LSP, sub-ms structural queries, 99% fewer tokens than grep. Single static binary, zero dependencies, 100% local. npx codebase-memory-mcp73GreatAuth: no auth requiredPython Exec Sandbox logoPython Exec SandboxCode Execution · Local subprocess (stdio)Sandboxed Python execution for AI agents. PEP 723 inline deps, multi-version Python, zero pollution.52GoodAuth: not declared

Verdict: choose Codebase Memory MCP for knowledge & memory work as a local process; choose Python Exec Sandbox for code execution as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Codebase Memory MCP logoChoose Codebase Memory MCP when

  • You need dedicated capabilities in the Knowledge & Memory domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like index_repository, search_graph, query_graph.
Explore Codebase Memory MCP

Python Exec Sandbox logoChoose Python Exec Sandbox when

  • You need dedicated capabilities in the Code Execution domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like execute_python, check_environment, validate_script.
Explore Python Exec Sandbox

Feature & specification comparison

Rows where the two servers differ are marked.

SpecCodebase Memory MCP logoCodebase Memory MCPPython Exec Sandbox logoPython Exec Sandbox
CategoryKnowledge & MemoryCode Execution
Quality signal73/100 · Great52/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNo auth requiredNot declared
PricingFreeNot declared
Required env varsNone listedNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars47,2361
Directory activity 8 views 1 installs 1 upvotes 2 views 0 installs 0 upvotes
Tools173

Tools & capabilities

Codebase Memory MCP tools 17

  • index_repositoryIndex a repository. full/moderate add semantics; fast omits them; cross-repo-intelligence links services. Reports coverage gaps.
  • search_graphFind symbols via BM25 query, regex name/qn filters, or semantic_query. Rows keep qn/file/lines and in/out over CALLS/USAGE/CALL_REFERENCE/INHERITS/IMPLEMENTS.
  • query_graphRead-only Cypher for multi-hop, aggregation, complexity, or cross-service analysis. Default: 200 visible rows with exact/lower-bound totals and truncation; continue safely with next_cursor. graph=missed is a file tree of flagged coverage gaps; absence is not proof of completeness. Use get_graph_schema(diagnostics=full) for properties.
  • trace_pathTrace callers/callees, data flow, or cross-service paths. Defaults exclude tests and resolver evidence. Rows keep qn/hop with explicit totals, relations, and continuations.
  • get_code_snippetRead a search_graph symbol. auto bounds source and outlines large containers; full restores up to 500 lines. Source/outline pages continue; coverage_note marks gaps.
  • get_file_outlineDeclaration outline of one exact repository-relative file: optional exact label filter, source order, exact total/offset/limit paging; file/folder/container nodes excluded.
  • get_graph_schemaGet node-label and edge-type counts. diagnostics=full also lists queryable properties.
  • compare_graphsCompare two indexed snapshots: deterministic target-only additions and base-only removals of stable node/edge identities; each set capped by limit and a 512 KiB budget with exact totals and truncation reasons.
  • get_architectureCompact counts, languages, packages, entry points. Request structure, dependencies, routes, hotspots, boundaries, layers, clusters, cycles, or file_tree; path scopes a directory.
  • search_codeGraph-ranked text search: compact symbols, full bounded source, or file paths.
  • list_projectsList projects with stable paging. Identity is lean; stats adds graph sizes.
  • delete_projectDelete a project from the index
  • +5 more on the listing page

Python Exec Sandbox tools 3

  • execute_pythonExecute a Python script with automatic dependency management. The script can include PEP 723 inline metadata (# /// script blocks) for declaring dependencies. Additional dependencies can also be passed via the dependencies parameter and will be merged. Args: script: Python source code to execute. May include PEP 723 metadata. dependencies: Extra PEP 508 dependency specifiers to make available. timeout_seconds: Maximum execution time (1-300, default 30). Returns: Formatted output with stdout, stderr, exit code, and duration. Example - simple script: execute_python(script="print('hello')") Example - with dependencies parameter: execute_python( script="import requests; print(requests.get('https://example.com').status_code)", dependencies=["requests>=2.32"] ) Example - with inline dependency metadata (preferred for multiple deps): execute_python(script=''' # /// script # dependencies = ["pandas>=2.2", "numpy>=1.26"] # /// import pandas as pd import numpy as np print(pd.DataFrame({"a": np.arange(5)}).describe()) ''') Always pin dependency versions (e.g. "pandas>=2.2" instead of "pandas") for reproducible results. The inline metadata block (# /// script ... # ///) is the recommended way to declare dependencies directly in the script (see PEP 723: https://peps.python.org/pep-0723/). The dependencies parameter is a simpler alternative when you just need to add a few packages. Both accept standard pip-style version specifiers like "requests>=2.28" or "pandas" (see PEP 508: https://peps.python.org/pep-0508/).
  • check_environmentCheck the execution environment and report status. Returns information about Python version, uv version, platform, sandbox configuration, and cache status.
  • validate_scriptValidate a Python script's PEP 723 metadata and dependencies without executing it. Checks metadata syntax, dependency format, and requires-python compatibility. Args: script: Python source code to validate. May include inline dependency metadata (# /// script blocks, see https://peps.python.org/pep-0723/). dependencies: Extra dependency specifiers to validate, using standard pip-style format like "requests>=2.28" (see https://peps.python.org/pep-0508/). Returns: Validation result with metadata details or error information.

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Codebase Memory MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "deusdata-codebase-memory-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "codebase-memory-mcp"
      ]
    }
  }
}

Python Exec Sandbox

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "python-exec-sandbox": {
      "command": "uvx",
      "args": [
        "mcp-python-exec-sandbox"
      ]
    }
  }
}

Frequently asked questions

Codebase Memory MCP is categorized under Knowledge & Memory and uses a local stdio subprocess. Python Exec Sandbox belongs to Code Execution and uses a local stdio subprocess. Pick Codebase Memory MCP for knowledge & memory work and Python Exec Sandbox for code execution.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Codebase Memory MCP is listed as free. Auth: no auth required. Python Exec Sandbox has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add deusdata-codebase-memory-mcp and python-exec-sandbox as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Codebase Memory MCP has a quality signal of 73/100 (Great) with 8 views, 1 installs and 47,236 GitHub stars. Python Exec Sandbox has 52/100 (Good) with 2 views, 0 installs and 1 GitHub stars.