PureScript MCP Server

Un servidor MCP que ofrece herramientas de desarrollo PureScript para asistentes de IA. Requiere Node.js y el compilador PureScript para su funcionalidad completa.

Documentación

Herramientas MCP de PureScript

npm version License: MIT

Un servidor de Model Context Protocol (MCP) que proporciona herramientas de desarrollo de PureScript para asistentes de IA como Claude.

PureScript Server MCP server

Características

  • Análisis de código: Analiza y examina la estructura del código PureScript sin necesidad de una configuración pesada de IDE
  • Integración con IDE de PureScript: Inicia y gestiona servidores de IDE de PureScript
  • Información de tipos: Consulta tipos y encuentra usos de código
  • Grafos de dependencias: Genera representaciones visuales de dependencias entre módulos
  • Diseñado para IA: Construido específicamente para asistentes de IA que usan el Model Context Protocol

Instalación

Mediante npm (Recomendado)

npm install -g purescript-mcp-tools

Desde el código fuente

# Clone this repository
git clone https://github.com/avi892nash/purescript-mcp-tools.git
cd purescript-mcp-tools

# Install dependencies
npm install

# Test that it works
npm test

Configuración

Para Claude Desktop

  1. Encuentra tu archivo de configuración de Claude:

    • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%/Claude/claude_desktop_config.json
  2. Añade esta configuración del servidor:

Si se instaló mediante npm:

{
  "mcpServers": {
    "purescript-tools": {
      "command": "npx",
      "args": ["purescript-mcp-tools"]
    }
  }
}

Si se instaló desde el código fuente:

{
  "mcpServers": {
    "purescript-tools": {
      "command": "node",
      "args": ["/FULL/PATH/TO/purescript-mcp-tools/index.js"]
    }
  }
}
  1. Reinicia Claude Desktop.

Para otros clientes MCP

Configúralo como un servidor MCP stdio:

  • Comando: npx (o node si es desde el código fuente)
  • Argumentos: ["purescript-mcp-tools"] (o ["/full/path/to/index.js"] si es desde el código fuente)
  • Protocolo: stdio

Uso

Verificar la instalación

En tu cliente MCP, intenta ejecutar:

get_server_status

Deberías ver una respuesta que indique que el servidor está en funcionamiento.

Herramientas disponibles

Este servidor MCP proporciona las siguientes herramientas:

Análisis estático (sin necesidad de IDE)

  • getModuleName - Extrae el nombre del módulo de un archivo PureScript
  • getImports - Lista todas las importaciones de un módulo
  • getAllFunctionNames - Obtiene todas las definiciones de funciones
  • getExports - Lista los valores exportados
  • getFunctionSignature - Obtiene la firma de tipo de una función
  • getDependencyGraph - Genera el grafo de dependencias del módulo

Integración con IDE de PureScript

  • start_purs_ide_server - Inicia un servidor de IDE de PureScript
  • stop_purs_ide_server - Detiene el servidor de IDE
  • pursIdeLoad - Carga módulos en el IDE
  • pursIdeType - Obtiene información de tipos
  • pursIdeComplete - Obtiene sugerencias de autocompletado
  • pursIdeUsages - Encuentra dónde se usa un símbolo
  • pursIdeCaseSplit - Genera divisiones de casos
  • pursIdeAddClause - Añade cláusulas de función
  • pursIdeImport - Añade importaciones

Flujo de trabajo básico

  1. Comprueba el estado: get_server_status
  2. Para análisis simples: Usa directamente las herramientas de análisis estático
  3. Para funciones avanzadas:
    • start_purs_ide_server con la ruta de tu proyecto
    • pursIdeLoad para cargar módulos
    • Usa pursIdeType, pursIdeUsages, etc.

Requisitos

  • Node.js >= 14.0.0
  • Compilador de PureScript (purs) - Solo necesario si usas funciones del IDE
  • Tu proyecto PureScript - Con salida compilada para funciones del IDE

Solución de problemas

El servidor no se inicia: Comprueba que Node.js esté instalado y que las dependencias estén instaladas (npm install)

Las herramientas no funcionan: Ejecuta get_server_status para ver qué está disponible

Errores de ruta: Asegúrate de usar rutas absolutas en tu configuración de MCP

Varios servidores: Ejecuta solo un servidor de IDE de PureScript a la vez para evitar conflictos de puertos

Contribuciones

¡Las contribuciones son bienvenidas! Consulta CONTRIBUTING.md para las pautas.

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para más detalles.

Soporte

Agradecimientos

Este servidor implementa el Model Context Protocol y proporciona asistencia integral de desarrollo de PureScript para herramientas de IA.