Skip to main content
Glama
chelslava

ContextTree MCP

by chelslava

ContextTree MCP 🌳

Búsqueda semántica profunda de código para asistentes de IA — impulsada por análisis de AST y embeddings locales. 100 % offline.

Python License: MIT MCP README (RU)

ContextTree MCP es un servidor local de Model Context Protocol que proporciona a tu asistente de codificación una comprensión estructural de la base de código. Combina dos mundos:

  • tree-sitter analiza los archivos fuente en un AST y extrae bloques lógicos —funciones, métodos, firmas de clases con docstrings—.

  • sentence-transformers (all-MiniLM-L6-v2) incrusta cada bloque —enriquecido con la ruta del archivo, la clase contenedora, el nombre del método y el docstring— en un almacén vectorial local de ChromaDB.

El resultado: tu asistente encuentra código por significado, no solo por palabras clave, y cada resultado de búsqueda llega con la ruta exacta del archivo y los números de línea.

🔒 La privacidad es lo primero. Todo se ejecuta en tu máquina: análisis sintáctico, modelo de embeddings e índice vectorial. Sin llamadas a la nube, sin telemetría; el código nunca sale del disco en el que reside.


¿Por qué no usar una búsqueda de texto plano?

grep y la búsqueda de texto completo buscan cadenas coincidentes. Fallan justo donde más se necesita ayuda:

Tarea

Búsqueda de texto

ContextTree MCP

"¿Dónde validamos los tokens JWT?"

❌ requiere adivinar la palabra exacta

✅ encuentra AuthService.verify_token() aunque «validar» no aparezca nunca en el código

Encontrar un método cuyo nombre fue refactorizado

❌ se rompe por el renombrado

✅ el docstring y el contexto circundante siguen transmitiendo el significado

Distinguir definición frente a uso

❌ imposible sin malabares con regex

✅ separación a nivel del AST entre declaraciones y lugares de llamada

Devolver ubicaciones precisas

⚠️ solo la línea coincidente

✅ metadatos ⏰ file, class, method, start_line, end_line

Ignorar el ruido de comentarios, cadenas e imports

✅ solo se indexan unidades lógicas reales

Related MCP server: CodeGrok MCP

Características

  • 🌲 Fragmentación consciente del AST — indexa funciones, métodos y firmas de clases mediante tree-sitter, no a través de ventanas arbitrarias de texto.

  • 🧩 Bloques lógicos enriquecidos con contexto — cada documento indexado contiene su ruta de archivo, clase propietaria, nombre de método, docstring y cuerpo, de modo que consultas como "lógica de reintento de pago" den con el método correcto.

  • Indexación incremental — hashes SHA-256 de contenido por archivo; solo se reprocesan los archivos modificados, nuevos o eliminados.

  • 🔍 Búsqueda semántica — consulta de lengua natural → fragmentos de código clasificados con intervalos de línea exactos.

  • 📞 Localización de usos AST — encuentra los lugares reales de llamada o instanciación de una función o clase, filtrando falsos positivos como cadenas explicativas o comentarios.

  • 🗄️ Índice local persistente — ChromaDB guarda en .chroma/, sobrevive a reinicios y nunca se envía al repositorio Git.

  • 🔌 Transporto MCP de stdio — compatible con Claude Desktop, OpenCode, Cursor, Cline o cualquier cliente a aceptar MCP.

Pila tecnológica

Capa

Tecnología

Lenguaje

Python 3.12+

Protocolo

SDK oficial de mcp (transporte stdio)

Análisis AST

tree-sitter junto a enlaces para Python, TypeScript, JavaScript

Base de datos vectorial

chromadb (modo local persistente)

Embeddings

sentence-transformers · all-MiniLM-L6-v2

Instalación

Se requiere Python 3.12+. Se recomienda uv como gestor de paquetes rápido y moderno:

git clone https://github.com/<your-org>/mcp-context-tree.git
cd mcp-context-tree

# Option A — uv (recommended): resolves dependencies from pyproject.toml, locks uv.lock
uv sync

# Option B — classic pip + venv
python -m venv venv && source venv/bin/activate   # Windows: venv\Scripts\activate
pip install -r requirements.txt

💡 La primera vez en ejecución descarga el modelo de embeddings (~90 MB). PyTorch se instala como dependencia de sentence-transformers; la versión CPU es suficiente — no se necesita GPU.

Alta en un cliente MCP

Ejemplo de configuración (Claude Desktop / cualquier cliente compatible con servidores stdio):

{
  "mcpServers": {
    "context-tree": {
      "command": "<path-to-venv>/bin/python",
      "args": ["-m", "context_tree"],
      "env": {}
    }
  }
}

(En Windows usa <ruta-al-venv>\Scripts\python.exe).

Herramientas expuestas a la IA

Herramienta

Función

Descripción

index_workspace

(directory_path: str)

Recorre el proyecto, detecta archivos cambiados mediante hash y actualiza de forma incremental la colección de ChromaDB.

semantic_search

(query: str, limit: int = 5)

Búsqueda del lenguaje natural en el código indexado. Devuelve fragmentos enriquecidos con file, class, start_line, end_line.

find_ast_usages

(symbol_name: str)

Consulta basada en AST de los lugares reales de llamada e instanciación de una función o clase.

Proceso de uso típico:

1. index_workspace("D:/projects/my-app")
2. semantic_search("where do we handle payment retries", limit=8)
3. find_ast_usages("PaymentGateway.retry")

Lenguajes compatibles

Lenguaje

Estado

Python

✅ soportado desde el lanzamiento

TypeScript / TSX

✅ soportado desde el lanzamiento

JavaScript / JSX

✅ soportado desde el lanzamiento

Go, Java, Rust...

🗺️ en mapa de ruta — el registro de analizadores está diseñado para extenderse

Documentación

  • 🏛️ ARCHITECTURE.md — estructura del proyecto, esquema de datos de ChromaDB, lógica de extracción de AST y diseño de indexación incremental.

  • 🇷🇺 README.ru.md — documentación en ruso.

Hoja de ruta

  • Modo watch: reindexado automático al cambiar archivos (fs watcher)

  • Más lenguajes mediante enlaces tree-sitter

  • Búsqueda híbrida (BM25 + rerank de vectores)

  • Clasificación con grafo de llamadas (“¿quién llama esto?”)

  • Publicación en PyPI (context-tree-mcp)

Contribuciones

Las incidencias y las PRs son bienvenidas. Por favor, mantén los cambios coherentes con ARCHITECTURE.md.

Licencia

MIT — consulta LICENSE.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
<1hResponse time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    Provides intelligent semantic code search using local AI embeddings, enabling natural language queries to find relevant code by meaning rather than exact keywords. Indexes codebases in the background with smart project detection and privacy-first local processing.
    6
    56
    199
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables semantic code search for AI assistants by indexing codebases with embeddings and Tree-sitter, returning relevant snippets via natural language queries.
    15
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides AI coding assistants with deep, semantic understanding of local codebases via AST-aware chunking, cross-repo symbol graphs, and architectural memory, enabling context-aware code search and dependency tracing.
    10
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to perform intelligent semantic code search across codebases using local AI embeddings for meaning-based retrieval.
    56
    MIT

View all related MCP servers

Related MCP Connectors

  • Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.

  • Give your AI agent a persistent map of your project's structure, dependencies, and bugs.

  • Persistent memory and knowledge graph for AI assistants — keyword + vector + graph search.

View all MCP Connectors

Latest Blog Posts

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/chelslava/mcp-context-tree'

If you have feedback or need assistance with the MCP directory API, please join our Discord server