language-server-mcp

language-server-mcp is an MCP server designed for code editing, built on TypeScript. It offers hover information, code completion suggestions, and diagnostic information, utilizing the MCP protocol for seamless communication with clients. Currently focused on TypeScript, it aims to expand support for other languages like Python in the future.

GitHub Stars

25

User Rating

Not Rated

Favorites

0

Views

24

Forks

8

Issues

1

README
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:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch
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

{
  "mcpServers": {
    "language-server-mcp": {
      "command": "/path/to/language-server-mcp/build/index.js"
    }
  }
}
Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Author Information
Alex Wohletz

I am a cloud data engineer with a focus on bringing devops methodologies to data engineering the cloud.

Castle Rock, CO

3

Followers

45

Repositories

5

Gists

0

Total Contributions