The language-server-mcp
is a TypeScript-based server that provides language support for code editing via the Model Context Protocol (MCP).
It offers three main capabilities:
- Hover Information: Retrieve details for code symbols using
get_hover
- Code Completion: Get suggestions at specific positions with
get_completions
- Diagnostics: Fetch errors and warnings through
get_diagnostics
Each function requires parameters like languageId
, filePath
, content
, and projectRoot
. The server is primarily tested with TypeScript, with theoretical support for Python and potential for additional language integrations.
Theoretically provides language support for Python code editing, though it has only been tested with TypeScript.
Provides language support for TypeScript code editing with features like hover information, code completion, and diagnostics.
language-server-mcp MCP Server
A Model Context Protocol (MCP) server providing language support for code editing.
This is a TypeScript-based MCP server designed to enhance code editing experiences by providing features such as hover information, code completion, and diagnostics. It demonstrates core MCP concepts by providing:
- Language-specific tools for code analysis and manipulation
- Integration with the Model Context Protocol for seamless communication
Features
Language Support
- Provides hover information for symbols in code
- Offers code completion suggestions
- Reports diagnostic information (errors, warnings)
- Only tested with typescript, theoretically should support Python. Would love to add additional language servers or be more agnostic if possible.
MCP Integration
- Implements the MCP protocol for communication with clients
- Exposes language features as MCP tools
Tools
get_hover
: Get hover information for a position in a document- Takes languageId, filePath, content, line, and character as required parameters
get_completions
: Get completion suggestions for a position in a document- Takes languageId, filePath, content, line, and character as required parameters
get_diagnostics
: Get diagnostic information for a document- Takes languageId, filePath, and content as required parameters
Development
Install dependencies:
Build the server:
For development with auto-rebuild:
Installation
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
The Inspector will provide a URL to access debugging tools in your browser.
TypeScript-based MCP server designed to enhance code editing experiences by providing features such as hover information, code completion, and diagnostics.
Related MCP Servers
- AsecurityFlicenseAqualityThis TypeScript-based MCP server enables users to manage and summarize text notes, providing tools for note creation and summarization prompts.Last updated -131910TypeScript
- AsecurityAlicenseAqualityThis TypeScript-based MCP server enables users to manage a simple notes system with capabilities to create and summarize notes through structured prompts and resources.Last updated -50TypeScriptMIT License
- -securityFlicense-qualityThis TypeScript-based MCP server allows users to manage a simple notes system through creating and summarizing text notes using Model Context Protocol (MCP).Last updated -5447TypeScript
- AsecurityAlicenseAqualityThis TypeScript-based MCP server allows users to manage and interact with a note system through Model Context Protocol, enabling note creation and summarization with URIs and metadata.Last updated -1JavaScriptMIT License