# Servonaut

Servonaut lets an agent manage AWS, Hetzner, OVH, and SSH servers, including checking status and logs, browsing CloudWatch, and blocking IPs.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 31
- Author: zb-ss
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/zb-ss/servonaut
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/servonaut

## What it does

Servonaut connects an agent to server management features. It brings AWS EC2, Hetzner Cloud, OVHcloud, and custom SSH hosts into one view, with tools for checking status and logs, inspecting CloudWatch, blocking IPs, and running commands safely.

In Claude Code, the server runs with `uvx servonaut`. Add it using the command below, then configure access to the providers and SSH hosts you use. AWS and SSH require your credentials; OVHcloud and Hetzner need API credentials. Without access configured for a host, the agent cannot manage it.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add servonaut -- uvx servonaut
```
uvx runs the command named after the package; if the README names another one, use uvx --from servonaut <command>

### Codex

**Platform CLI**
```bash
codex mcp add servonaut -- uvx servonaut
```
uvx runs the command named after the package; if the README names another one, use uvx --from servonaut <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "servonaut": {
            "command": "uvx",
            "args": [
                "servonaut"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from servonaut <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "servonaut": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "servonaut"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from servonaut <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add servonaut uvx servonaut
```
uvx runs the command named after the package; if the README names another one, use uvx --from servonaut <command>

## When to use it
- check the status of AWS and Hetzner servers
- inspect CloudWatch logs for an IP
- block an IP through WAF or Security Groups
- run a command on an SSH server

## Example prompts
- Check the status of my AWS and Hetzner servers.
- Find CloudWatch logs related to this IP.
- Block this IP on the server using an available method.

## Similar
- [setting-up-ec2-instance-profiles](https://affpapa.org/en/nevibecode/skills/setting-up-ec2-instance-profiles.md) — skill · 6200 installs
- [setting-up-cloudtrail-multi-region](https://affpapa.org/en/nevibecode/skills/setting-up-cloudtrail-multi-region.md) — skill · 6100 installs
- [aws-cloudtrail](https://affpapa.org/en/nevibecode/skills/aws-cloudtrail.md) — skill · 340 installs
- [dt-obs-aws](https://affpapa.org/en/nevibecode/skills/dt-obs-aws.md) — skill · 2500 installs
- [aws-cost-operations](https://affpapa.org/en/nevibecode/skills/aws-cost-operations.md) — skill · 863 installs
- [hf-cloud-sagemaker-production-defaults](https://affpapa.org/en/nevibecode/skills/hf-cloud-sagemaker-production-defaults.md) — skill · 549 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
