MCP Language Server, MCP destekli istemcilerin get definition, references, rename ve diagnostics gibi semantik araçlara erişim sağlayarak kod tabanlarında daha kolay gezinmesine yardımcı olur.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"isaacphi-mcp-language-server": {
"command": "node",
"args": [
"~/.mcp/mcp-language-server/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/isaacphi/mcp-language-server.git ~/.mcp/mcp-language-server
cd ~/.mcp/mcp-language-server Bu, MCP sunucusu çalıştıran ve LLM'lere bir language server ortaya çıkaran bir sunucudur. MCP için bir language server değildir, o da ne olurdu.
mcp-language-server, MCP etkin istemcilere definition alma, referanslar, yeniden adlandırma ve diagnostikler gibi semantik araçlara erişim sağlayarak kod tabanlarında daha kolay gezinmelerine yardımcı olur.

go install github.com/isaacphi/mcp-language-server@latestgopls'i yükleyin: go install golang.org/x/tools/gopls@latest
MCP istemcinizi yapılandırın: Bu her istemci için farklı ama benzer olacaktır. Claude Desktop için, aşağıdakileri ~/Library/Application\ Support/Claude/claude_desktop_config.json dosyasına ekleyin
{
"mcpServers": {
"language-server": {
"command": "mcp-language-server",
"args": ["--workspace", "/Users/you/dev/yourproject/", "--lsp", "gopls"],
"env": {
"PATH": "/opt/homebrew/bin:/Users/you/go/bin",
"GOPATH": "/users/you/go",
"GOCACHE": "/users/you/Library/Caches/go-build",
"GOMODCACHE": "/Users/you/go/pkg/mod"
}
}
}
}
Not: Tüm istemciler bu ortam değişkenlerine ihtiyaç duymayacaktır. Claude Desktop için yukarıdaki ortam değişkenlerini makinenize ve kullanıcı adınıza göre güncellemeniz gerekecektir:
PATH, go ve gopls yolunu içermelidir. Bunu echo $(which go):$(which gopls) ile alabilirsinizGOPATH, GOCACHE ve GOMODCACHE makinenizde farklı olabilir. Bunlar varsayılanlarıdır.rust-analyzer'ı yükleyin: rustup component add rust-analyzer
MCP istemcinizi yapılandırın: Bu her istemci için farklı ama benzer olacaktır. Claude Desktop için, aşağıdakileri ~/Library/Application\ Support/Claude/claude_desktop_config.json dosyasına ekleyin
{
"mcpServers": {
"language-server": {
"command": "mcp-language-server",
"args": [
"--workspace",
"/Users/you/dev/yourproject/",
"--lsp",
"rust-analyzer"
]
}
}
}
pyright'ı yükleyin: npm install -g pyright
MCP istemcinizi yapılandırın: Bu her istemci için farklı ama benzer olacaktır. Claude Desktop için, aşağıdakileri ~/Library/Application\ Support/Claude/claude_desktop_config.json dosyasına ekleyin
{
"mcpServers": {
"language-server": {
"command": "mcp-language-server",
"args": [
"--workspace",
"/Users/you/dev/yourproject/",
"--lsp",
"pyright-langserver",
"--",
"--stdio"
]
}
}
}
typescript-language-server'ı yükleyin: npm install -g typescript typescript-language-server
MCP istemcinizi yapılandırın: Bu her istemci için farklı ama benzer olacaktır. Claude Desktop için, aşağıdakileri ~/Library/Application\ Support/Claude/claude_desktop_config.json dosyasına ekleyin
{
"mcpServers": {
"language-server": {
"command": "mcp-language-server",
"args": [
"--workspace",
"/Users/you/dev/yourproject/",
"--lsp",
"typescript-language-server",
"--",
"--stdio"
]
}
}
}
clangd'yi yükleyin: Önceden derlenmiş ikili dosyaları resmi LLVM yayınlar sayfasından indirin veya sisteminizin paket yöneticisi aracılığıyla yükleyin (örn. apt install clangd, brew install clangd).
MCP istemcinizi yapılandırın: Bu her istemci için farklı ama benzer olacaktır. Claude Desktop için, aşağıdakileri ~/Library/Application\\ Support/Claude/claude_desktop_config.json dosyasına ekleyin
{
"mcpServers": {
"language-server": {
"command": "mcp-language-server",
"args": [
"--workspace",
"/Users/you/dev/yourproject/",
"--lsp",
"/path/to/your/clangd_binary",
"--",
"--compile-commands-dir=/path/to/yourproject/build_or_compile_commands_dir"
]
}
}
}
<p><strong>Not</strong>:</p>
<ul>
<li><code>/path/to/your/clangd_binary</code> yerine clangd yürütülebilir dosyasının gerçek yolunu koyun.</li>
<li><code>--compile-commands-dir</code>, <code>compile_commands.json</code> dosyanızı içeren dizini göstermelidir (örn. <code>./build</code>, <code>./cmake-build-debug</code>).</li>
<li>clangd'nin etkili bir şekilde çalışması için projeniz için <code>compile_commands.json</code> oluşturulduğundan emin olun.</li>
</ul>
Bu repo'yu yalnızca yukarıdaki sunucularla test ettim ama birçok başkasıyla uyumlu olmalıdır. Unutmayın:
-- sonrasındaki herhangi bir argüman language server'a argüman olarak gönderilir.definition: Kod tabanınızdan herhangi bir sembolün (function, type, constant, vb.) tam kaynak kodu tanımını alır.references: Sembolün kod tabanı genelinde tüm kullanımlarını ve referanslarını bulur.diagnostics: Uyarılar ve hatalar da dahil olmak üzere belirli bir dosya için tanı bilgileri sağlar.hover: Belirli bir konum için belgeleri, tip ipuçlarını veya diğer hover bilgilerini görüntüle.rename_symbol: Bir sembolü proje genelinde yeniden adlandırın.edit_file: Satır numaralarına göre bir dosyaya birden çok metin düzenlemesi yapılmasına izin verir. Arama ve değiştirme tabanlı düzenleme araçlarına kıyasla dosyaları düzeltmenin daha güvenilir ve bağlam açısından ekonomik bir yolunu sağlar.Bu kod tabanı, LSP iletişimini işlemek için gopls adresinden düzenlenmiş kodu kullanır. Ayrıntılar için ATTRIBUTION dosyasına bakın. Buradaki her şey izin verici BSD tarzı lisans tarafından kapsanmıştır.
mcp-go, MCP iletişimi için kullanılır. Hizmetiniz için teşekkürler.
Bu beta yazılımdır. Herhangi bir soruna çarptıysanız veya herhangi bir türde öneriniz varsa bir issue oluşturarak lütfen bana bildirin.
PR'leri küçük tutun ve önemli herhangi bir şey için önce Issues açın. AI slop sorun değildir, sürece test edilirse, kontrolleri geçerse ve çok kötü kokmazsa.
Repo'yu klonlayın:
git clone https://github.com/isaacphi/mcp-language-server.git
cd mcp-language-server
Kolaylık için bir justfile eklenmiştir:
just -l
Available recipes:
build # Build
check # Run code audit checks
fmt # Format code
generate # Generate LSP types and methods
help # Help
install # Install locally
snapshot # Update snapshot tests
test # Run tests
Claude Desktop'u (veya benzerini) yerel binary'yi kullanacak şekilde yapılandırın:
{
"mcpServers": {
"language-server": {
"command": "/full/path/to/your/clone/mcp-language-server/mcp-language-server",
"args": [
"--workspace",
"/path/to/workspace",
"--lsp",
"language-server-executable"
],
"env": {
"LOG_LEVEL": "DEBUG"
}
}
}
}
Değişiklik yaptıktan sonra yeniden derleyin.
LOG_LEVEL ortam değişkenini DEBUG olarak ayarlamak, language server'a ve language server'ın günlüklerine giden mesajler de dahil olmak üzere tüm bileşenler için stderr'e ayrıntılı logging'i etkinleştirir.
internal/lsp/methods.go bağlı language server'a çağrılar yapmak için oluşturulan kod içerir.internal/protocol/tsprotocol.go LSP türleri için oluşturulan kod içerir. Bunu gopls'in kaynak kodundan ödünç aldım. Hizmetiniz için teşekkürler.internal/protocol/interfaces.go dosyasında bazı çirkin workaround'lar vardır.Araçlardaki değişiklikleri denemeyi çok daha kolay hale getiren bir snapshot test paketi vardır. Bunlar mock workspaces'lerde gerçek language server'ları çalıştırır ve çıktı ve günlükleri yakalar.
Onları çalıştırmak için language server'ları yerel olarak yüklemeniz gerekecektir. Go, rust, python ve typescript için testler vardır.
integrationtests/
├── tests/ # Tests are in this folder
├── snapshots/ # Snapshots of tool outputs
├── test-output/ # Gitignored folder showing the final state of each workspace and logs after each test run
└── workspaces/ # Mock workspaces that the tools run on
Snapshot'ları güncellemek için UPDATE_SNAPSHOTS=true go test ./integrationtests/... komutunu çalıştırın
AI destekli geliştirme için yapay zeka tabanlı görev yönetim sistemi. PRD ayrıştırma, görev genişletme, çoklu provider desteği (Claude, OpenAI, Gemini, Perplexity, xAI) ve optimize edilmiş context kullanımı için seçmeli tool yükleme özelliklerine sahiptir.
Kodlama ajanlarına Figma verilerine doğrudan erişim sağlayarak tasarım implementasyonunu tek adımda tamamlamalarını sağlar.
Yüksek performanslı kod zekası MCP sunucusu. Codebase'leri kalıcı bir knowledge graph'e indeksler — ortalama repo milisaniyeler içinde. 66 dil desteği, sub-ms sorgular, %99 daha az token. Tek statik binary, hiç bağımlılık yok.
gitmcp.io, herhangi bir GitHub repository veya projeye bağlanıp belgelendirme yapabilen genel amaçlı bir remote MCP server'ıdır.
Android/iOS uygulamaları ve cihazların otomasyon, geliştirme ile app scraping işlemleri için MCP Server. iPhone, Google Pixel, Samsung gibi simülatör, emülatör ve fiziksel cihazları destekler.
21st.dev'in en iyi tasarım mühendislerinden ilham alarak özel olarak hazırlanmış UI bileşenleri oluşturun.