mythic-mcp
mythic-mcp
Stellt das Mythic C2-Framework als MCP-Server bereit, sodass LLMs (Claude, usw.) Agenten bedienen, Aufgaben erteilen und Plattformdaten konversationell abfragen können.
Funktionen
Agentenverwaltung — aktive Callbacks mit vollständigen Details auflisten, einzelne Agenten inspizieren, Agenten beenden, Schlaf-Timer ändern
Aufgabenausführung — Shell-Befehle, Dateien lesen/herunterladen/hochladen, Mimikatz, make_token sowie ein generischer Dispatcher für beliebige Mythic-Befehle
Plattformdaten — Anmeldeinformationsspeicher, Artefaktprotokoll, Ereignisprotokoll, Dateibrowser, Payload-Liste, C2-Profilstatus
Strukturierte Antworten — jedes Tool gibt
{"status":"ok","data":...}oder{"status":"error","message":...}zurück, zuverlässiges Parsen durch LLMsIntegrierte Prompts — Prompt-Vorlagen
start_pentestundstart_recon
Related MCP server: caldera-mcp
Anforderungen
Python 3.10+
uv-Paketmanager
Ein laufender Mythic-Server (v3.x+)
Installation
git clone <this-repo>
cd mythic-mcp
uv syncAusführung
Positionsargumente
uv run main.py <username> <password> [host] [port]uv run main.py mythic_admin mythic_admin_password localhost 7443Umgebungsvariablen
export MYTHIC_USERNAME=mythic_admin
export MYTHIC_PASSWORD=mythic_admin_password
export MYTHIC_HOST=localhost
export MYTHIC_PORT=7443
uv run main.pyOhne TLS
uv run main.py mythic_admin password localhost 7443 --no-sslWenn der Server ohne Ausgabe startet, funktioniert er – er wartet auf stdio auf MCP-Nachrichten.
Verbindung zu Claude Desktop
Konfigurationsdatei finden:
Betriebssystem | Pfad |
Linux |
|
macOS |
|
Zunächst den uv-Pfad ermitteln:
which uvEinen Eintrag unter mcpServers hinzufügen:
{
"mcpServers": {
"mythic_mcp": {
"command": "/home/user/.local/bin/uv",
"args": [
"--directory",
"/path/to/mythic-mcp",
"run",
"main.py"
],
"env": {
"MYTHIC_USERNAME": "mythic_admin",
"MYTHIC_PASSWORD": "mythic_admin_password",
"MYTHIC_HOST": "localhost",
"MYTHIC_PORT": "7443"
}
}
}
}Claude Desktop vollständig beenden und neu starten. Das Werkzeugsymbol in der Chat-Oberfläche listet alle registrierten Tools auf, sobald der Server verbunden ist.
Tools
Agenten- / Callback-Verwaltung
Tool | Beschreibung |
| Alle aktiven Callbacks mit vollständigen Details auflisten (Betriebssystem, Architektur, PID, IP, Schlaf, Prozess, Payload-Typ usw.) |
| Vollständige Details für einen einzelnen Agenten nach Anzeige-ID |
| Agenten in Mythic als inaktiv markieren |
| Schlafintervall (Sekunden) und Jitter (%) ändern |
Aufgabenausführung
Tool | Beschreibung |
| Shell-Befehl über den Standardinterpreter des Agenten ausführen |
| Datei vom Ziel lesen (verwendet |
| Datei herunterladen und als Base64 zurückgeben |
| Base64-kodierte Datei auf das Ziel hochladen |
|
|
| Mimikatz ausführen (z.B. |
| Generischer Dispatcher — beliebiger Mythic-Befehl nach Name |
Plattformdaten
Tool | Beschreibung |
| Alle Anmeldeinformationen im Mythic-Anmeldeinformationsspeicher |
| Artefaktprotokoll (Dateien, Registrierungsschlüssel, erstellte Prozesse) |
| Betriebs-Ereignisprotokoll |
| Dateibrowsereinträge für ein Verzeichnis auf einem Ziel |
| Alle nicht gelöschten Payloads mit Build-Status und C2-Profil |
| Alle C2-Profile mit Ausführungsstatus |
Prompts
Prompt | Beschreibung |
| Claude darauf vorbereiten, einen bestimmten Bedrohungsakteur in Richtung eines Ziels zu emulieren |
| Claude darauf vorbereiten, eine erste Aufklärung über alle aktiven Agenten hinweg durchzuführen |
Beispielverwendung in Claude
Use the start_recon prompt.List all active agents, then run whoami on agent 1.Download /etc/passwd from agent 2 and show me its contents.Run mimikatz sekurlsa::logonpasswords on agent 3.Use execute_command to run 'ps' on agent 1 with parameters {"host": "."}.Architektur
Claude Desktop
│ MCP stdio
▼
main.py (FastMCP tools + prompts)
│
▼
lib/mythic_api.py (MythicAPI class)
├─ mythic Python library → Mythic GraphQL/REST API
└─ httpx (raw GraphQL) → Mythic GraphQL endpointAlle Aufgabenaufrufe verwenden asyncio.wait_for mit einem 60-Sekunden-Timeout. GraphQL-Anfragen überspringen die TLS-Überprüfung (verify=False), um das selbstsignierte Zertifikat von Mythic zu handhaben.
Referenz der Umgebungsvariablen
Variable | Standard | Beschreibung |
| — | Mythic-Benutzername (erforderlich) |
| — | Mythic-Passwort (erforderlich) |
|
| Mythic-Server-Hostname oder IP |
|
| Mythic-Server-Port |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- MIT
- AlicenseAqualityDmaintenanceConnects MCP-compatible AI clients to a MITRE Caldera adversary emulation platform, enabling natural language construction of attack scenarios, agent inspection, and operation management.18Apache 2.0
- Alicense-qualityDmaintenanceA full-featured MCP server providing seamless access to CustomGPT.ai APIs, enabling agent and conversation management through MCP-compatible clients.5MIT
- Alicense-qualityDmaintenanceExposes internal tools from agent harnesses (Claude Code, Codex, etc.) as a standard MCP server by intercepting LLM API calls.1MIT
Related MCP Connectors
MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.
MCP server exposing the Backtest360 engine API as tools for AI agents.
MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kyawthiha7/mythic-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server