Skip to main content
Glama

@mempalace/mcp-dev

Un servidor MCP (Model Context Protocol) que proporciona a los asistentes de codificación de IA un contexto fundamentado y con alcance de rama sobre su base de código. Ofrece búsqueda semántica de código a través de MemPalace, seguimiento de cambios de git, un registro de cambios persistente, herramientas de ciclo de vida de desarrollo de TypeScript/Jest y una metodología integrada de Project Tracks (Conductor) para el trabajo estructurado de funciones.

Características

Característica

Descripción

Búsqueda semántica de código

Consultas en lenguaje natural sobre su base de código indexada mediante incrustaciones de MemPalace

Contexto de rama

Rama actual, SHA, commits recientes: siempre orientado

Registro de cambios

Registro JSONL de solo adición de cada cambio asistido por IA con procedencia completa

Ciclo de vida de desarrollo

Ejecute tsc (verificación de tipos) y pruebas de Jest desde el cliente MCP

Git diff

Salida de diff completa o con alcance de archivo

Project Tracks

Cree y gestione pistas de funciones basadas en markdown (plan/spec/index/metadata)


Requisitos previos

  • Node.js ≥ 18

  • Python ≥ 3.9 con MemPalace instalado

  • Un repositorio git al cual apuntar

Instalar MemPalace

pip install mempalace
# or from the fork with exclude-patterns support:
pip install git+https://github.com/2loch-ness6/mempalace@feat/exclude-patterns-config

Inicio rápido

1. Instalar el servidor MCP

npm install -g @mempalace/mcp-dev

O utilícelo sin instalar mediante npx:

npx @mempalace/mcp-dev

2. Configurar variables de entorno

export MCP_REPO_DIR=/path/to/your/repo        # defaults to process.cwd()
export MCP_PALACE_DIR=~/.mempalace/active      # MemPalace data directory
export MCP_PALACE_WING=code                    # wing name (namespace) for your repo
export MEMPALACE_PYTHON=python3                # python binary with mempalace installed

3. Indexar su base de código

mempalace --palace ~/.mempalace/active mine /path/to/your/repo --wing code --mode projects

4. Añadir a la configuración de su cliente MCP

Para Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "mempalace-mcp-dev": {
      "command": "npx",
      "args": ["@mempalace/mcp-dev"],
      "env": {
        "MCP_REPO_DIR": "/path/to/your/repo",
        "MCP_PALACE_DIR": "/home/you/.mempalace/active",
        "MCP_PALACE_WING": "code",
        "MEMPALACE_PYTHON": "python3"
      }
    }
  }
}

Variables de entorno

Variable

Predeterminado

Descripción

MCP_REPO_DIR

process.cwd()

Ruta absoluta a la raíz de su repositorio git

MCP_PALACE_DIR

~/.mempalace/active

Directorio de datos de MemPalace

MCP_PALACE_WING

code

Nombre del ala (espacio de nombres) dentro del palacio

MCP_LEDGER_PATH

<repo>/.mcp-dev/ledger.jsonl

Ruta al archivo de registro de cambios

MCP_TRACKS_DIR

<repo>/conductor/tracks

Directorio que contiene las carpetas de pistas del proyecto

MEMPALACE_PYTHON

python3

Binario de Python (debe tener mempalace instalado)


Referencia de herramientas MCP

Búsqueda de código

Herramienta

Descripción

search_code

Búsqueda semántica sobre la base de código indexada. Acepta query (cadena) y opcionalmente scope (nombre de sala) y limit (entero, predeterminado 10)

mine_changed_files

Reindexar archivos cambiados desde el último commit de git. Llame después de editar para mantener la búsqueda actualizada

Rama y Git

Herramienta

Descripción

get_branch_context

Devuelve la rama actual, SHA, SHA corto y los últimos 5 mensajes de commit

get_changed_files

Archivos cambiados frente a HEAD~1 (o una referencia base especificada) con estado de añadir/modificar/eliminar

get_git_diff

Salida de diff completa. Referencia base opcional y filePath para el alcance

Registro de cambios

Herramienta

Descripción

record_change

Añadir una entrada al registro (archivos afectados, descripción, motivo, etiquetas, enlace de pista opcional)

read_ledger

Leer entradas recientes del registro. limit opcional (predeterminado 20) y filtro de branch

Ciclo de vida de desarrollo

Herramienta

Descripción

run_typecheck

Ejecutar tsc --noEmit en un directorio de servicio. Devuelve errores estructurados con archivo/línea/columna/código

run_tests

Ejecutar Jest en un directorio de servicio. Devuelve recuentos de aprobado/fallido y detalles de fallos estructurados

Project Tracks (Conductor)

Herramienta

Descripción

list_tracks

Listar todas las pistas activas (directorios que contienen plan.md)

get_track_plan

Leer plan.md para una pista

update_track_plan

Sobrescribir plan.md para una pista

get_track_spec

Leer spec.md para una pista

update_track_spec

Sobrescribir spec.md para una pista

get_track_index

Leer index.md para una pista

update_track_index

Sobrescribir index.md para una pista

create_track

Crear la estructura de un nuevo directorio de pista con los cuatro archivos


Metodología de Project Tracks (Conductor)

Project Tracks es un sistema de gestión de funciones ligero basado en archivos. Cada pista es un directorio que contiene hasta cuatro archivos:

conductor/tracks/
└── my-feature-20260501/
    ├── plan.md       ← living task list; the status source of truth
    ├── spec.md       ← technical spec, design decisions, acceptance criteria
    ├── index.md      ← short summary and linked resources
    └── metadata.json ← machine-readable metadata (id, owner, status, dates)

Reglas:

  • Un directorio es una pista activa solo si contiene plan.md.

  • plan.md siempre se lee/escribe en vivo desde el disco (nunca a través de MemPalace, sin obsolescencia).

  • Los slugs de pista deben coincidir con [a-zA-Z0-9][a-zA-Z0-9_-]* (máximo 100 caracteres).

Arranque de pistas en un nuevo proyecto:

# Create the tracks directory
mkdir -p conductor/tracks

# Use the MCP tool to scaffold a track
# (or copy from templates/track/ in this package)

Los archivos de plantilla se incluyen en templates/track/ para la creación manual de la estructura.


Configuración de MemPalace (mempalace.yaml)

Coloque un mempalace.yaml en la raíz de MCP_REPO_DIR para controlar cómo se indexan los archivos. Se proporciona un ejemplo genérico en mempalace.yaml.example.

Secciones clave:

  • wing — debe coincidir con MCP_PALACE_WING

  • exclude_patterns — patrones de sintaxis gitignore para omitir durante la minería

  • rooms — reglas de enrutamiento semántico (palabra clave → nombre de sala) para el alcance de la búsqueda


Desarrollo

git clone https://github.com/your-org/mempalace-mcp-dev
cd mempalace-mcp-dev
npm install
npm run build
npm test

Consulte CONTRIBUTING.md para conocer las pautas de contribución.


Licencia

MIT — consulte LICENSE.

Install Server
A
license - permissive license
A
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/2loch-ness6/mempalace-mcp-dev'

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