easyshell
Model Context Protocol server for EasyShell: manage hosts, execute scripts, orchestrate multi-host tasks, schedule AI inspections, and access infrastructure operations from AI assistants.
README
<p align="center"> <img src="docs/images/logo.png" alt="EasyShell Logo" width="200" /> </p>
EasyShell
AI-Native Server Operations Platform
Let AI write your scripts, orchestrate multi-host tasks, and analyze your infrastructure — while you focus on what matters.
Language: English | 简体中文 | 繁體中文 | 한국어 | Русский | 日本語
Why EasyShell?
Traditional server management tools expect you to write every script, SSH into every box, and interpret every output yourself. EasyShell flips that model: AI is the operator, you are the decision-maker.
- Describe what you need in plain language → AI writes production-ready shell scripts with diff review
- Set a goal across multiple hosts → AI plans the execution steps, runs them, and synthesizes the results
- Schedule automated inspections → AI analyzes output and decides whether to alert your team via bot channels
- Connect via Web SSH → Full terminal with file manager, multi-tab, search — no local client needed
Core Features
1. AI Script Assistant
Describe what you want. AI writes the script. Review the diff. One click to apply.
The AI Script Workbench is a split-panel editor where you describe requirements in natural language, and AI generates (or modifies) shell scripts targeting your chosen OS. Real-time streaming shows the script being written. A built-in diff view highlights exactly what changed. A summary tab explains the modifications in your language.
<p align="center"> <img src="docs/images/AI%20Script%20helper.png" alt="AI Script Assistant — live code generation with diff review" width="90%" /> </p>
How it works:
- Describe — write your requirements in natural language, choose the target OS
- Generate — AI streams a production-ready script in real time
- Review — built-in diff view highlights every change; summary tab explains modifications
- Apply — one click to save the script to your library or dispatch it immediately
2. AI Task Orchestration
"Check disk and memory on all hosts, flag anything over 80%, and suggest fixes." — Done.
The AI Chat interface lets you issue high-level operational goals. AI decomposes them into a multi-step execution plan (explore → analyze → report), dispatches scripts to target hosts, collects results, and delivers a structured analysis with risk assessment and actionable recommendations — all in a single conversation turn.
<p align="center"> <img src="docs/images/AI%20task%20orchestration.png" alt="AI Task Orchestration — multi-step execution plan with analysis" width="90%" /> </p>
How it works:
- Instruct — describe a high-level goal in the AI Chat (e.g. "check disk on all hosts")
- Plan — AI decomposes the goal into a multi-step execution plan (explore → analyze → report)
- Execute — scripts are dispatched to target hosts in parallel; results collected automatically
- Report — AI delivers a structured analysis with risk assessment and actionable recommendations
3. AI Scheduled Inspections
Cron → Script → AI Analysis → Intelligent Alert — AI analyzes output and decides whether to alert your team.
Schedule inspection tasks with cron expressions and select scripts from the built-in script library. EasyShell dispatches them to agents on schedule, collects output (disk, memory, services, logs), sends it to your AI model for intelligent analysis, and lets AI decide whether the results warrant an alert — pushing notifications only when they matter.
<p align="center"> <img src="docs/images/schedule_task.png" alt="AI Scheduled Inspections — cron-based tasks with AI-powered output analysis and intelligent alerting" width="90%" /> </p>
How it works:
- Configure — cron expression + script (from library or custom) + AI analysis prompt + notification rules
- Execute — EasyShell dispatches to target agents on schedule
- Analyze — Output sent to AI model (OpenAI / Gemini / GitHub Copilot / Custom) for intelligent analysis
- Notify — AI determines severity and pushes alerts via bot channels when action is needed
Notification modes: Always push, push on failure, push on warning, or AI decides — the AI model evaluates the output and autonomously determines if an alert is necessary.
Supported Bot Channels (Configuration Guide):
| Bot | Status |
|---|---|
| Telegram | ✅ Supported |
| Discord | ✅ Supported |
| Slack | ✅ Supported |
| DingTalk (钉钉) | ✅ Supported |
| Feishu (飞书) | ✅ Supported |
| WeCom (企业微信) | ✅ Supported |
4. Fully Functional Web SSH
Real terminal. Real file manager. No SSH client required.
A production-grade web terminal with multi-tab sessions, integrated file manager (upload, download, create, delete, navigate), full-text search within terminal buffer, and persistent connections via WebSocket. Manage files and run commands side by side.
<p align="center"> <img src="docs/images/Fully%20functional%20web%20SSH.png" alt="Web SSH — terminal with file manager and multi-tab" width="90%" /> </p>
5. Host Management & Monitoring
Unified view of all servers with real-time status, batch operations, and agent lifecycle management.
Manage hosts individually or in bulk — add via form or CSV import, organize into clusters, monitor connection status, and deploy/upgrade agents with one click. The unified dashboard shows health metrics at a glance.
<p align="center"> <img src="docs/images/host-management.png" alt="Host Management — unified server dashboard with batch operations" width="90%" /> </p>
6. Real-Time Streaming Logs
Watch script execution unfold live across all target hosts.
When you dispatch a script, EasyShell streams output from every agent in real time. Color-coded logs, timestamps, and per-host filtering help you spot issues instantly — no more waiting for batch jobs to complete.
<p align="center"> <img src="docs/images/realtime-logs.png" alt="Real-Time Logs — live streaming output from multiple hosts" width="90%" /> </p>
7. Security & Risk Controls
Built-in safeguards: approval workflows, audit trails, and operation restrictions.
Configure which operations require approval before execution. All actions are logged for compliance. Role-based access control limits who can do what, and sensitive commands can be flagged or blocked entirely.
<p align="center"> <img src="docs/images/security-controls.png" alt="Security Controls — approval workflows and audit logging" width="90%" /> </p>
Quick Start
git clone https://github.com/easyshell-ai/easyshell.git
cd easyshell
cp .env.example .env # Edit .env if needed
docker compose up -d
No local build required — pre-built images are pulled automatically from Docker Hub.
Open http://localhost:18880 → login with easyshell / easyshell@changeme.
Want to use GHCR instead? Set in
.env:EASYSHELL_SERVER_IMAGE=ghcr.io/easyshell-ai/easyshell/easyshell-server:latest EASYSHELL_WEB_IMAGE=ghcr.io/easyshell-ai/easyshell/easyshell-web:latest
Developer? Build from source:
docker compose -f docker-compose.build.yml up -d
Full Feature Set
| Category | Features |
|---|---|
| AI Intelligence | AI Script Assistant (generate / modify / diff / summary), AI Task Orchestration (multi-step plans, parallel execution, analysis), AI Scheduled Inspections (cron-based, AI output analysis, intelligent alert decisions, multi-channel bot push), AI Chat, Inspection Reports, Operation Approvals |
| Operations | Script library, batch execution, real-time streaming logs, Web SSH terminal with file manager |
| Infrastructure | Host management, real-time monitoring, cluster grouping, agent auto-deployment |
| Administration | User management, system config, AI model settings (OpenAI / Gemini / Copilot / Custom), risk control |
| Platform | i18n (EN / ZH), dark/light theme, responsive design, audit logging |
Architecture
┌──────────────┐ HTTP/WS ┌──────────────────┐
│ EasyShell │◄─────────────────────►│ EasyShell │
│ Agent │ register / heartbeat │ Server │
│ (Go 1.24) │ script exec / logs │ (Spring Boot 3.5)│
└──────────────┘ └────────┬─────────┘
│
┌────────┴─────────┐
│ EasyShell Web │
│ (React + Ant Design)│
└──────────────────┘
Tech Stack
| Component | Technology |
|---|---|
| Server | Java 17, Spring Boot 3.5, Gradle, JPA/Hibernate, Spring AI, Spring Security |
| Agent | Go 1.24, single binary, zero runtime dependencies |
| Web | React 19, TypeScript, Vite 7, Ant Design 6 |
| Database | MySQL 8.0 |
| Cache | Redis 7 |
Project Structure
easyshell/
├── easyshell-server/ # Central management server (Java / Spring Boot)
├── easyshell-agent/ # Agent client (Go, single binary)
├── easyshell-web/ # Web frontend (React + Ant Design)
├── docker-compose.yml # Production deployment (pulls pre-built images)
├── docker-compose.build.yml # Development (local build from source)
├── Dockerfile.server # Server + Agent multi-stage build
├── Dockerfile.web # Web frontend multi-stage build
├── .github/workflows/ # CI/CD: build & publish Docker images
└── .env.example # Environment configuration template
Documentation
Visit docs.easyshell.ai for:
- Installation & deployment guide
- Getting started walkthrough
- Configuration reference
- Development guide
Community
Join our Discord community for support, discussions, and updates: https://discord.gg/akQqRgNB6t
License
This project is licensed under the MIT License.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.