Skip to main content
Glama

PureScript MCP Tools

npm version License: MIT

A Model Context Protocol (MCP) server that provides PureScript development tools for AI assistants like Claude.

Features

  • Code Analysis: Parse and analyze PureScript code structure without heavy IDE setup

  • PureScript IDE Integration: Start and manage PureScript IDE servers

  • Type Information: Look up types and find code usages

  • Dependency Graphs: Generate visual representations of module dependencies

  • AI-First: Built specifically for AI assistants using the Model Context Protocol

Related MCP server: WithSeismic MCP

Installation

npm install -g purescript-mcp-tools

From Source

# 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

Configuration

For Claude Desktop

  1. Find your Claude config file:

    • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%/Claude/claude_desktop_config.json

  2. Add this server configuration:

If installed via npm:

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

If installed from source:

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

For Other MCP Clients

Configure as a stdio MCP server:

  • Command: npx (or node if from source)

  • Arguments: ["purescript-mcp-tools"] (or ["/full/path/to/index.js"] if from source)

  • Protocol: stdio

Usage

Verify Installation

In your MCP client, try running:

get_server_status

You should see a response showing the server is running.

Available Tools

This MCP server provides the following tools:

Static Analysis (No IDE Required)

  • getModuleName - Extract module name from PureScript file

  • getImports - List all imports from a module

  • getAllFunctionNames - Get all function definitions

  • getExports - List exported values

  • getFunctionSignature - Get type signature for a function

  • getDependencyGraph - Generate module dependency graph

PureScript IDE Integration

  • start_purs_ide_server - Start a PureScript IDE server

  • stop_purs_ide_server - Stop the IDE server

  • pursIdeLoad - Load modules into IDE

  • pursIdeType - Get type information

  • pursIdeComplete - Get completion suggestions

  • pursIdeUsages - Find where a symbol is used

  • pursIdeCaseSplit - Generate case splits

  • pursIdeAddClause - Add function clause

  • pursIdeImport - Add imports

Basic Workflow

  1. Check status: get_server_status

  2. For simple analysis: Use static analysis tools directly

  3. For advanced features:

    • start_purs_ide_server with your project path

    • pursIdeLoad to load modules

    • Use pursIdeType, pursIdeUsages, etc.

Requirements

  • Node.js >= 14.0.0

  • PureScript compiler (purs) - Required only if using IDE features

  • Your PureScript project - With compiled output for IDE features

Troubleshooting

Server won't start: Check that Node.js is installed and dependencies are installed (npm install)

Tools not working: Run get_server_status to see what's available

Path errors: Ensure you use absolute paths in your MCP configuration

Multiple servers: Only run one PureScript IDE server at a time to avoid port conflicts

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Acknowledgments

This server implements the Model Context Protocol and provides comprehensive PureScript development assistance to AI tools.

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/avi892nash/purescript-mcp-tools'

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