
language-server-mcp MCP Server

2024.12.27
0
HTML代码编辑支持语言服务器开发效率
language-server-mcp 是一个基于 TypeScript 的 Model Context Protocol (MCP) 服务器,旨在通过提供悬停信息、代码补全和诊断等功能来增强代码编辑体验。它展示了核心 MCP 概念,提供语言特定的代码分析和操作工具,并与 MCP 协议集成以实现无缝通信。
View on GitHub
Overview
基本能力
产品定位
language-server-mcp 是一个为代码编辑提供语言支持的 MCP 服务器,专注于提升开发者的编码效率和体验。
核心功能
- 语言支持
- 提供代码中符号的悬停信息
- 提供代码补全建议
- 报告诊断信息(错误、警告)
-
目前主要测试支持 TypeScript,理论上也支持 Python
-
MCP 集成
- 实现 MCP 协议与客户端通信
- 将语言功能作为 MCP 工具暴露
适用场景
- 代码编辑器的语言支持增强
- 开发环境中的代码分析和操作
- 需要与 MCP 协议集成的开发工具
工具列表
get_hover
: 获取文档中某个位置的悬停信息- 需要参数: languageId, filePath, content, line, character
get_completions
: 获取文档中某个位置的补全建议- 需要参数: languageId, filePath, content, line, character
get_diagnostics
: 获取文档的诊断信息- 需要参数: languageId, filePath, content
常见问题解答
- 调试困难:由于 MCP 服务器通过 stdio 通信,建议使用 MCP Inspector 进行调试
- 语言支持有限:目前主要支持 TypeScript,未来可能扩展更多语言
使用教程
使用依赖
npm install
安装教程
- 构建服务器
npm run build
- 为开发环境配置自动重建
npm run watch
- 在 Claude Desktop 中添加服务器配置
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"language-server-mcp": {
"command": "/path/to/language-server-mcp/build/index.js"
}
}
}
调试方式
使用 MCP Inspector 进行调试:
npm run inspector
Inspector 将提供一个 URL 用于在浏览器中访问调试工具。