cclsp is a Model Context Protocol (MCP) server designed to bridge the gap between Large Language Model (LLM)-based coding agents and traditional Language Server Protocol (LSP) servers. It specifically addresses common frustrations where LLMs struggle with precise line/column numbers in LSP requests, employing intelligent position resolution and robust symbol handling to ensure accurate code navigation and refactoring. The current stable version is 0.7.0, indicating active development. While no explicit release cadence is provided, its iteration suggests regular updates. Key differentiators include its specialized handling of LLM positional ambiguities, an AI-friendly interface for MCP, and broad language support through configurable LSP servers (e.g., `typescript-language-server`, `pylsp`, `gopls`). It requires Node.js 18+ and a compatible TypeScript peer dependency for full functionality.
npm install cclspVerified import paths — ran on the pinned version, not inferred.
Initializes cclsp with an interactive setup wizard and demonstrates how to start the MCP server ready for requests.
Upgrade your Node.js installation to version 18 or higher (e.g., using `nvm install 18` and `nvm use 18`).
Install the required language servers using their respective package managers (e.g., `npm install -g typescript-language-server`, `pip install 'python-lsp-server[all]'`).
Install TypeScript: `npm install typescript@^5.8.3` in your project or `npm install -g typescript@^5.8.3` globally.
Ensure your LLM or client generates MCP requests strictly according to the MCP specification expected by cclsp. Refer to the 'MCP Tools' section in the documentation.
Install the missing language server (e.g., `npm install -g typescript-language-server`) and ensure it's in your system's PATH.
Install 'typescript' as a dependency: `npm install typescript` or `npm install -g typescript`.
Upgrade your Node.js installation to version 18 or higher.
Verify that the MCP request payload is well-formed JSON and adheres to the required fields and types for the specific MCP method being called.