Claude gibi yapay zeka sistemlerinin VS Code çalışma alanındaki dizin yapısını okuymasını, linter ve language server tarafından tespit edilen sorunları görmesini, kod dosyalarını okumasını ve düzenlemeler yapmasını sağlayan bir MCP Server.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"juehang-vscode-mcp-server": {
"command": "node",
"args": [
"~/.mcp/vscode-mcp-server/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/juehang/vscode-mcp-server.git ~/.mcp/vscode-mcp-server
cd ~/.mcp/vscode-mcp-server Visual Studio Code uzantısı (Marketplace'de mevcuttur), Claude ve diğer MCP istemcilerinin VS Code'da doğrudan kod yazmasını sağlar! Serena'dan esinlenmiş, ancak VS Code'un yerleşik yeteneklerini kullanır. Mevcut kodlama ajanlarını (Claude Code gibi) VS Code'a özgü yeteneklerle (sembol arama, belge ana hatları) genişletmek için idealdir; zaten sahip oldukları araçları tekrarlamadan. Bu uzantının streamable HTTP API'sini kullandığını, SSE API'sini değil.
Bu uzantı kabuk komutlarının yürütülmesine izin verebilir. Bu, potansiyel bir güvenlik riski anlamına gelir, bu nedenle dikkat ile kullanın ve kullandığınız MCP istemcisine güvendiğinizden ve port'un herhangi bir şeye maruz kalmadığından emin olun. Kimlik doğrulama yardımcı olabilir, ancak MCP kimlik doğrulama spec'i hala değişim halinde olduğundan, şu an için bu uygulanmamıştır.
PR'ler hoş geldiniz!
https://github.com/user-attachments/assets/20b87dfb-fc39-4710-a910-b9481dde1e90
npm install ve npm run compile komutlarını çalıştırarak derleyin.Claude Desktop, bu uzantıyı bir MCP sunucusu olarak kullanacak şekilde yapılandırılabilir. Bunu yapmak için claude_desktop_config.json dosyanız şu şekilde görünmelidir:
{
"mcpServers": {
"vscode-mcp-server": {
"command": "npx",
"args": ["mcp-remote@next", "http://localhost:3000/mcp"]
}
}
}
Ayrıca bu uzantıyı bir Claude projesinde kullanmayı da seviyorum, çünkü Claude için ek talimatlar belirtmeme izin veriyor. Aşağıdaki prompt'un iyi çalıştığını buldum:
You are working on an existing codebase, which you can access using your tools. These code tools interact with a VS Code workspace.
WORKFLOW ESSENTIALS:
1. Always start exploration with list_files_code on root directory (.) first
2. CRITICAL: Run get_diagnostics_code after EVERY set of code changes before completing tasks
3. For small edits (≤10 lines): use replace_lines_code with exact original content
4. For large changes, new files, or uncertain content: use create_file_code with overwrite=true
EXPLORATION STRATEGY:
- Start: list_files_code with path='.' (never recursive on root)
- Understand structure: read key files like package.json, README, main entry points
- Find symbols: use search_symbols_code for functions/classes, get_document_symbols_code for file overviews
- Before editing: read_file_code the target file to understand current content
EDITING BEST PRACTICES:
- Small modifications: replace_lines_code (requires exact original content match)
- If replace_lines_code fails: read_file_code the target lines, then retry with correct content
- Large changes: create_file_code with overwrite=true is more reliable
- After any changes: get_diagnostics_code to check for errors
PLANNING REQUIREMENTS:
Before making code modifications, present a comprehensive plan including:
- Confidence level (1-10) and reasoning
- Specific tools you'll use and why
- Files you'll modify and approach (small edits vs complete rewrites)
- How you'll verify the changes work (diagnostics, testing, etc.)
ERROR HANDLING:
- Let errors happen naturally - don't add unnecessary try/catch blocks
- For tool failures: follow the specific recovery guidance in each tool's description
- If uncertain about file content: use read_file_code to verify before making changes
APPROVAL PROCESS:
IMPORTANT: Only run code modification tools after presenting a plan and receiving explicit approval. Each change requires separate approval.
Do not add tests unless specifically requested. If you believe testing is important, explain why and let the user decide.
Kod tabanlarını keşfederken bağlam verimliliği için bunu CLAUDE.md dosyanıza eklemeyi göz önünde bulundurun:
## VS Code Symbol Tools for Context Efficiency
Use VS Code symbol tools to reduce context consumption:
- `get_document_symbols_code` for file structure overview instead of reading entire files
- `search_symbols_code` to find symbols by name across the project
- `get_symbol_definition_code` for type info and docs without full file context
- Workflow: get outline → search symbols → get definitions → read implementation only when needed
Bu uzantı, bir Model Context Protocol (MCP) sunucusu olarak hizmet verir ve VS Code'un dosya sistemi ve düzenleme yeteneklerini MCP istemcilerine açığa çıkarır.
VS Code MCP Server uzantısı, yapay zeka modelleri ve diğer MCP istemcilerinin aşağıdakileri yapmasına olanak tanıyan MCP uyumlu bir sunucu uygular:
Bu uzantı, yapay zeka asistanlarının ve diğer araçların standartlaştırılmış MCP protokolü aracılığıyla VS Code çalışma alanınızla etkileşim kurmasını sağlar.
Uzantı, aşağıdakileri yapan bir MCP sunucusu oluşturur:
list_files_code: Çalışma alanınızdaki dosyaları ve dizinleri listeler
path: Dosyaları listelemek için yolrecursive (isteğe bağlı): Dosyaları özyinelemeli olarak listeleread_file_code: Dosya içeriğini okur
path: Okunacak dosyanın yoluencoding (isteğe bağlı): Dosya kodlaması (varsayılan: utf-8)maxCharacters (isteğe bağlı): Maksimum karakter sayısı (varsayılan: 100.000)move_file_code: Bir dosya veya dizini VS Code'un WorkspaceEdit API'sini kullanarak yeni bir konuma taşır
sourcePath: Taşınacak dosya veya dizinin mevcut yolutargetPath: Dosya veya dizinin taşınacağı yeni yoloverwrite (isteğe bağlı): Hedef zaten varsa üzerine yazılsın mı (varsayılan: false)rename_file_code: Bir dosya veya dizini VS Code'un WorkspaceEdit API'sini kullanarak yeniden adlandırır
filePath: Yeniden adlandırılacak dosya veya dizinin mevcut yolunewName: Dosya veya dizinin yeni adıoverwrite (isteğe bağlı): Aynı ada sahip bir dosya zaten varsa üzerine yazılsın mı (varsayılan: false)copy_file_code: Bir dosyayı VS Code'un dosya sistemi API'sini kullanarak yeni bir konuma kopyalar
sourcePath: Kopyalanacak dosyanın yolutargetPath: Kopyanın oluşturulacağı yoloverwrite (isteğe bağlı): Hedef zaten varsa üzerine yazılsın mı (varsayılan: false)create_file_code: VS Code'un WorkspaceEdit API'sini kullanarak yeni bir dosya oluşturur
path: Oluşturulacak dosyanın yolucontent: Dosyaya yazılacak içerikoverwrite (isteğe bağlı): Dosya zaten varsa üzerine yazılsın mı (varsayılan: false)ignoreIfExists (isteğe bağlı): Dosya zaten varsa yok sayılsın mı (varsayılan: false)replace_lines_code: Bir dosyadaki belirli satırları değiştirir
path: Değiştirilecek dosyanın yolustartLine: Başlangıç satırı numarası (1 tabanlı, kapsayıcı)endLine: Bitiş satırı numarası (1 tabanlı, kapsayıcı)content: Satırları değiştirecek yeni içerikoriginalCode: Doğrulama için orijinal kodget_diagnostics_code: Çalışma alanınızda uyarıları ve hataları kontrol eder
path (isteğe bağlı): Kontrol edilecek dosya yolu (sağlanmadığında tüm çalışma alanını kontrol eder)severities (isteğe bağlı): Eklenecek önem seviyeleri dizisi (0=Hata, 1=Uyarı, 2=Bilgi, 3=İpucu). Varsayılan: [0, 1]format (isteğe bağlı): Çıkış biçimi ('text' veya 'json'). Varsayılan: 'text'includeSource (isteğe bağlı): Tanılama kaynağını ekle. Varsayılan: trueBu araç özellikle kullanışlıdır:
search_symbols_code: Çalışma alanında semboller arar
query: Sembol adları için arama sorgusumaxResults (isteğe bağlı): Döndürülecek maksimum sonuç sayısı (varsayılan: 10)Bu araç kullanışlıdır:
get_symbol_definition_code: Bir dosyadaki sembolün tanım bilgisini alır
path: Sembolü içeren dosyanın yoluline: Sembolün satır numarasısymbol: Belirtilen satırda aranacak sembol adıBu araç sağlar:
Özellikle kullanışlıdır:
get_document_symbols_code: Bir dosyadaki tüm semboller için ana hatlar alır, hiyerarşik yapıyı gösterir
path: Analiz edilecek dosyanın yolu (çalışma alanına göre)maxDepth (isteğe bağlı): Gösterilecek maksimum iç içe geçme derinliğiBu araç sağlar:
Özellikle kullanışlıdır:
execute_shell_command_code: VS Code entegre terminalinde kabuk entegrasyonu ile bir kabuk komutu yürütür
command: Yürütülecek kabuk komutucwd (isteğe bağlı): Komut için isteğe bağlı çalışma dizini (varsayılan: '.')Bu araç kullanışlıdır:
Şu anda yalnızca bir çalışma alanı desteklenmektedir. Uzantı da sadece yerel olarak çalışır, VS Code örneğinizi bağlı olabileceğiniz herhangi bir ağa maruz bırakmaktan kaçınmak için.
vscode-mcp-server.port: MCP sunucusu için port numarası (varsayılan: 3000)vscode-mcp-server.host: MCP sunucusu için host adresi (varsayılan: 127.0.0.1)vscode-mcp-server.defaultEnabled: MCP sunucusu VS Code başlangıcında varsayılan olarak etkinleştirilsin mivscode-mcp-server.enabledTools: Hangi araç kategorilerinin etkinleştirildiğini yapılandırın (file, edit, shell, diagnostics, symbol)Seçmeli Araç Konfigürasyonu: Zaten belirli yeteneklere sahip kodlama ajanları için kullanışlıdır. Örneğin, Claude Code ile dosya/düzenleme araçlarını devre dışı bırakabilir ve araç çoğaltmasından kaçınmak için sadece VS Code'a özgü sembol araması eklemek için sembol araçlarını etkinleştirebilirsiniz.
MCP istemcilerini bu sunucuya bağlanmak için yapılandırın:
http://localhost:3000/mcp
Veya özel bir host yapılandırdıysanız:
http://[your-host]:3000/mcp
Sunucuyu ilk olarak durum çubuğu öğesine tıklayarak etkinleştirmeniz gerektiğini unutmayın!
Katkılar hoş geldiniz! Sorun bildir veya çekme istekleri gönder.
Dil sunucularını kullanarak sembolik kod işlemleri gerçekleştiren, tam özellikli bir kodlama ajanı.
Yerel kodu bir graf veritabanına indeksleyen ve AI asistanlarına bağlam sağlayan, insanlar için grafik kod görselleştirmeleri sunan bir MCP sunucusu.
Temel okuma, yazma ve komut satırı araçlarıyla donatılmış bir kodlama ajanı.
Erişilebilirlik API'lerini kullanarak masaüstü GUI otomasyonu. Vision modelleri veya ekran görüntüleri olmadan Windows, macOS ve Linux uygulamalarını kontrol edin. İş akışı kaydı, yapılandırılmış veri çıkarma ve tarayıcı DOM incelemesini destekler.
MCP kullanarak çoklu ajan sistemleri oluşturmak için bir framework'tür. Koordine edilmiş AI işbirliğini sağlayan görev yönetimi, paylaşılan context ve RAG yetenekleriyle gelir.
Max için bir kodlama aracısı. Max/MSP/Jitter, müzik ve multimedya için görsel bir programlama dilidir.