clj-kondo-MCP

Linter de Clojure

Documentación

Servidor MCP clj-kondo npm version

Un servidor de Model Context Protocol (MCP) que proporciona capacidades de linting de clj-kondo para archivos Clojure/ClojureScript/EDN. Útil para Claude code y escritorio donde no hay capacidades de linting integradas. Puede que quieras considerar editar tu CLAUDE.md pidiéndole que haga linting después de editar.

Características

  • Lint de archivos Clojure mediante llamadas a herramientas MCP
  • Soporta todas las capacidades de análisis de clj-kondo
  • Soporte opcional de directorio de configuración explícito

Instalación

Instalación rápida

npx clj-kondo-mcp

o configuración del IDE

{
  "mcpServers": {
    "clj-kondo": {
      "command": "npx",
      "args": ["clj-kondo-mcp"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Instalación manual

  1. Instala clj-kondo: Asegúrate de tener clj-kondo instalado y disponible en tu PATH del sistema. Consulta las instrucciones de instalación para tu plataforma.

  2. Instala las dependencias:

npm install
  1. Compila el servidor:
npm run build

Uso

Ejecutar el servidor

node build/index.js

Llamadas a herramientas MCP

El servidor proporciona una herramienta:

lint_clojure - Lint de contenido Clojure/ClojureScript/EDN

Parámetros:

{
  "file": "/absolute/path/to/file.clj", // Must be absolute path - can be a file, directory, or classpath
  "configDir": "/absolute/path/to/config/dir", // Optional, must be absolute path if provided
  "level": "warning" // Optional, defaults to error level
}

El parámetro file acepta:

  • Una ruta de archivo única (por ejemplo, "/path/to/src/my_file.clj")
  • Una ruta de directorio (por ejemplo, "/path/to/src") - hará lint de todos los archivos .clj, .cljs y .cljc recursivamente
  • Una cadena de classpath - hará lint de todos los archivos Clojure en el classpath
    • Para proyectos Leiningen: Usa la salida de lein classpath
    • Para proyectos deps.edn: Usa la salida de clojure -Spath

Nota: Tanto los parámetros file como configDir deben ser rutas absolutas ya que el servidor MCP se ejecuta como un proceso separado. Las rutas relativas no funcionarán correctamente.

Por defecto, clj-kondo buscará automáticamente configuración en el directorio .clj-kondo en los directorios actual y padre. Puedes anular esto especificando el parámetro configDir para apuntar a un directorio de configuración específico.

Para más información sobre la configuración de clj-kondo, consulta la documentación oficial.

Configuración

Añade a tu archivo de configuración de MCP (para Cline, ubicado en ~/Library/Application Support/Code - Insiders/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):

{
  "mcpServers": {
    "clj-kondo": {
      "command": "npx",
      "args": ["clj-kondo-mcp"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Para compilaciones manuales, usa:

{
  "mcpServers": {
    "clj-kondo": {
      "command": "node",
      "args": ["build/index.js"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Compilación

npm run build

Modo de vigilancia

npm run dev