SSH MCP Server
Enables managing Ubuntu/Linux servers through natural language by establishing SSH connections and executing remote commands. Supports real-time command execution and output through Claude Desktop or Cursor IDE.
README
SSH MCP Server 🚀
Manage your Ubuntu/Linux servers from your Windows computer using natural language! This MCP (Model Context Protocol) server enables you to control your remote servers through conversation via Claude Desktop or Cursor IDE by establishing SSH connections.
TR: Windows bilgisayarınızdan Ubuntu/Linux sunucularınızı doğal dil ile yönetin! Bu MCP (Model Context Protocol) server, Claude Desktop veya Cursor IDE üzerinden SSH bağlantısı yaparak uzak sunucularınızı konuşarak kontrol etmenizi sağlar.
🎯 Neden Bu Proje?
Geleneksel SSH yönetimi yerine, AI asistanınıza "Ubuntu sunucuma bağlan ve disk kullanımını göster" diyerek işlerinizi halledebilirsiniz. MCP protokolü sayesinde AI, SSH komutlarını sizin için çalıştırır ve sonuçları gerçek zamanlı olarak size sunar.
✨ Özellikler
- 🔐 Güvenli SSH Bağlantısı - Şifre tabanlı kimlik doğrulama
- ⚡ Gerçek Zamanlı Çıktı - Komut çıktılarını anlık görün
- 🤖 AI Entegrasyonu - Claude Desktop ve Cursor IDE desteği
- 🎨 Doğal Dil Kontrolü - Komutları konuşarak çalıştırın
- 📦 Minimal Kurulum - Sadece 3 tool, sıfır karmaşıklık
📋 Gereksinimler
Node.js Kurulumu
Windows:
- nodejs.org adresinden LTS versiyonunu indirin
- İndirilen
.msidosyasını çalıştırın - Kurulum tamamlandıktan sonra terminal açın ve
node --versionyazın
macOS:
# Homebrew ile
brew install node
# Veya resmi site'den indirin
Linux (Ubuntu/Debian):
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
🚀 Kurulum
Otomatik Kurulum (Önerilen) ⭐
Sadece config dosyanıza ekleyin:
{
"mcpServers": {
"ssh": {
"command": "npx",
"args": [
"-y",
"git+https://github.com/mertcankaraoglu/ssh-mcp.git#main"
]
}
}
}
Gereksinimler:
- Node.js v18+ (İndir)
- Claude Desktop veya Cursor IDE
Manuel Kurulum
1. Projeyi İndirin
git clone https://github.com/mertcankaraoglu/ssh-mcp.git
cd ssh-mcp
2. Bağımlılıkları Yükleyin
npm install
3. MCP'yi Bağlayın
Kullandığınız uygulamaya göre aşağıdaki adımları izleyin:
🖥️ Claude Desktop için
Windows:
%APPDATA%\Claude\claude_desktop_config.json dosyasını açın ve ekleyin:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["C:\\Users\\KULLANICI_ADINIZ\\ssh-mcp\\index.js"]
}
}
}
macOS/Linux:
~/Library/Application Support/Claude/claude_desktop_config.json dosyasını açın:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/tam/yol/ssh-mcp/index.js"]
}
}
}
🎯 Cursor IDE için
Windows:
%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json dosyasını açın:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["C:\\Users\\KULLANICI_ADINIZ\\ssh-mcp\\index.js"]
}
}
}
macOS/Linux:
~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/tam/yol/ssh-mcp/index.js"]
}
}
}
4. Uygulamayı Yeniden Başlatın
Claude Desktop veya Cursor'ı kapatıp tekrar açın. MCP server otomatik olarak başlayacaktır.
5. Kurulumu Test Edin
Claude Desktop'ta şu komutu deneyin:
"SSH bağlantısı test et - 192.168.1.100 IP'li sunucuya bağlan"
Eğer MCP server çalışıyorsa, Claude size SSH bağlantı parametrelerini soracaktır.
💡 Kullanım
Mevcut Araçlar
| Araç | Açıklama |
|---|---|
ssh_connect |
SSH sunucusuna bağlantı kur |
ssh_exec |
Uzak sunucuda komut çalıştır |
ssh_disconnect |
SSH bağlantısını kapat |
Örnek Konuşmalar
Bağlantı Kurma:
Siz: "192.168.1.100 IP'li Ubuntu sunucuma bağlan. Kullanıcı adı: ubuntu, şifre: mypassword"
Claude: [ssh_connect aracını kullanarak bağlanır]
Komut Çalıştırma:
Siz: "Disk kullanımını göster"
Claude: [ssh_exec ile 'df -h' komutunu çalıştırır]
Siz: "Son 10 sistem logunu göster"
Claude: [ssh_exec ile 'tail -n 10 /var/log/syslog' çalıştırır]
Siz: "Docker container'larını listele"
Claude: [ssh_exec ile 'docker ps' çalıştırır]
Bağlantıyı Kapatma:
Siz: "SSH bağlantısını kapat"
Claude: [ssh_disconnect aracını kullanır]
🔧 Teknik Detaylar
Kullanılan Teknolojiler
- @modelcontextprotocol/sdk - MCP protokol implementasyonu
- ssh2 - SSH2 client kütüphanesi
Mimari
┌─────────────────┐
│ Claude/Cursor │
│ (AI Client) │
└────────┬────────┘
│ MCP Protocol
│ (stdio)
┌────────▼────────┐
│ MCP SSH Server │
│ (Bu Proje) │
└────────┬────────┘
│ SSH2
│
┌────────▼────────┐
│ Ubuntu Server │
└─────────────────┘
🛡️ Güvenlik Notları
- ⚠️ Şifreler düz metin olarak config dosyasında saklanmaz, sadece runtime'da kullanılır
- 🔒 SSH bağlantıları standart SSH2 protokolü ile şifrelenir
- 💡 Üretim ortamları için SSH key tabanlı kimlik doğrulama önerilir (gelecek sürümlerde eklenecek)
🗺️ Yol Haritası
- [ ] SSH key desteği
- [ ] Çoklu sunucu yönetimi
- [ ] SFTP dosya transferi
- [ ] Port forwarding
- [ ] Session kaydetme/yükleme
🤝 Katkıda Bulunma
Katkılarınızı bekliyoruz! Pull request göndermekten çekinmeyin.
- Fork edin
- Feature branch oluşturun (
git checkout -b feature/amazing) - Commit edin (
git commit -m 'feat: Add amazing feature') - Push edin (
git push origin feature/amazing) - Pull Request açın
📝 Lisans
MIT License - Detaylar için LICENSE dosyasına bakın.
🙏 Teşekkürler
- Anthropic - Claude ve MCP protokolü için
- Model Context Protocol - Harika dokümantasyon için
⭐ Projeyi beğendiyseniz yıldız vermeyi unutmayın!
ENG - English Documentation
🎯 Why This Project?
Instead of traditional SSH management, you can handle your tasks by simply telling your AI assistant "Connect to my Ubuntu server and show disk usage". Thanks to the MCP protocol, AI executes SSH commands for you and presents results in real-time.
✨ Features
- 🔐 Secure SSH Connection - Password-based authentication
- ⚡ Real-Time Output - See command outputs instantly
- 🤖 AI Integration - Claude Desktop and Cursor IDE support
- 🎨 Natural Language Control - Execute commands by speaking
- 📦 Minimal Setup - Only 3 tools, zero complexity
📋 Requirements
- Node.js v18 or higher
- Claude Desktop or Cursor IDE
- A Linux/Ubuntu server with SSH access
🚀 Installation
1. Clone the Project
git clone https://github.com/YOUR_USERNAME/ssh-mcp.git
cd ssh-mcp
2. Install Dependencies
npm install
3. Connect MCP
Follow the steps below according to your application:
🖥️ For Claude Desktop
Windows:
Open %APPDATA%\Claude\claude_desktop_config.json and add:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["C:\\Users\\YOUR_USERNAME\\local-mcp-ssh\\index.js"]
}
}
}
macOS/Linux:
Open ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/full/path/ssh-mcp/index.js"]
}
}
}
🎯 For Cursor IDE
Windows:
Open %APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["C:\\Users\\YOUR_USERNAME\\local-mcp-ssh\\index.js"]
}
}
}
macOS/Linux:
~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/full/path/ssh-mcp/index.js"]
}
}
}
4. Restart the Application
Close and reopen Claude Desktop or Cursor. The MCP server will start automatically.
💡 Usage
Available Tools
| Tool | Description |
|---|---|
ssh_connect |
Establish SSH connection to server |
ssh_exec |
Execute command on remote server |
ssh_disconnect |
Close SSH connection |
Example Conversations
Connecting:
You: "Connect to my Ubuntu server at 192.168.1.100. Username: ubuntu, password: mypassword"
Claude: [Connects using ssh_connect tool]
Running Commands:
You: "Show disk usage"
Claude: [Executes 'df -h' command via ssh_exec]
You: "Show last 10 system logs"
Claude: [Executes 'tail -n 10 /var/log/syslog' via ssh_exec]
You: "List Docker containers"
Claude: [Executes 'docker ps' via ssh_exec]
Disconnecting:
You: "Close SSH connection"
Claude: [Uses ssh_disconnect tool]
🔧 Technical Details
Technologies Used
- @modelcontextprotocol/sdk - MCP protocol implementation
- ssh2 - SSH2 client library
Architecture
┌─────────────────┐
│ Claude/Cursor │
│ (AI Client) │
└────────┬────────┘
│ MCP Protocol
│ (stdio)
┌────────▼────────┐
│ MCP SSH Server │
│ (This Project) │
└────────┬────────┘
│ SSH2
│
┌────────▼────────┐
│ Ubuntu Server │
└─────────────────┘
🛡️ Security Notes
- ⚠️ Passwords are not stored in config files as plain text, only used at runtime
- 🔒 SSH connections are encrypted with standard SSH2 protocol
- 💡 SSH key-based authentication is recommended for production environments (will be added in future versions)
🗺️ Roadmap
- [ ] SSH key support
- [ ] Multi-server management
- [ ] SFTP file transfer
- [ ] Port forwarding
- [ ] Session save/load
🤝 Contributing
We welcome your contributions! Feel free to send pull requests.
- Fork it
- Create your feature branch (
git checkout -b feature/amazing) - Commit your changes (
git commit -m 'feat: Add amazing feature') - Push to the branch (
git push origin feature/amazing) - Open a Pull Request
📝 License
MIT License - See LICENSE file for details.
🙏 Acknowledgments
- Anthropic - For Claude and MCP protocol
- Model Context Protocol - For excellent documentation
⭐ Don't forget to star the project if you like it!
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。