Skip to main content
Glama

mythic-mcp

Expone el framework Mythic C2 como un servidor MCP para que los LLM (Claude, etc.) puedan manejar agentes, enviar tareas y consultar datos de la plataforma de forma conversacional.

Características

  • Gestión de agentes — lista de callbacks activos con detalle completo, inspección de agentes individuales, eliminación de agentes, cambio de temporizadores de sueño

  • Ejecución de tareas — comandos de shell, lectura/descarga/subida de archivos, mimikatz, make_token y un despachador genérico para cualquier comando de Mythic

  • Datos de la plataforma — almacén de credenciales, registro de artefactos, registro de eventos, explorador de archivos, lista de payloads, estado de perfiles C2

  • Respuestas estructuradas — cada herramienta devuelve {"status":"ok","data":...} o {"status":"error","message":...} para un análisis fiable por parte del LLM

  • Plantillas de aviso integradas — plantillas de aviso start_pentest y start_recon

Related MCP server: caldera-mcp

Requisitos

  • Python 3.10+

  • Gestor de paquetes uv

  • Un servidor Mythic en ejecución (v3.x+)

Instalación

git clone <this-repo>
cd mythic-mcp
uv sync

Ejecución

Argumentos posicionales

uv run main.py <username> <password> [host] [port]
uv run main.py mythic_admin mythic_admin_password localhost 7443

Variables de entorno

export MYTHIC_USERNAME=mythic_admin
export MYTHIC_PASSWORD=mythic_admin_password
export MYTHIC_HOST=localhost
export MYTHIC_PORT=7443
uv run main.py

Sin TLS

uv run main.py mythic_admin password localhost 7443 --no-ssl

Si el servidor se inicia silenciosamente sin salida, está funcionando — espera en stdio mensajes MCP.

Conexión a Claude Desktop

Encuentra el archivo de configuración:

SO

Ruta

Linux

~/.config/Claude/claude_desktop_config.json

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Obtén primero la ruta de uv:

which uv

Añade una entrada bajo mcpServers:

{
  "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"
      }
    }
  }
}

Cierra y reinicia completamente Claude Desktop. El icono de herramientas en la interfaz de chat listará todas las herramientas registradas una vez que el servidor se conecte.

Herramientas

Gestión de agente / Callback

Herramienta

Descripción

get_all_agents()

Lista todos los callbacks activos con detalle completo (SO, arquitectura, PID, IP, sueño, proceso, tipo de payload, etc.)

get_agent_details(agent_id)

Detalle completo para un solo agente por ID de visualización

kill_agent(agent_id)

Marca un agente como inactivo en Mythic

set_sleep(agent_id, interval, jitter)

Cambia el intervalo de sueño (segundos) y la fluctuación (%)

Ejecución de tareas

Herramienta

Descripción

run_shell_command(agent_id, command_line)

Ejecuta un comando de shell mediante el intérprete por defecto del agente

read_file(agent_id, file_path)

Lee un archivo del objetivo (usa cat)

download_file(agent_id, file_path)

Descarga un archivo y lo devuelve en base64

upload_file(agent_id, file_name, remote_path, content_b64)

Sube un archivo codificado en base64 al objetivo

run_as_user(agent_id, username, password)

make_token — autentica para llamadas de red como otro usuario

execute_mimikatz(agent_id, mimikatz_arguments)

Ejecuta mimikatz (ej. sekurlsa::logonpasswords)

execute_command(agent_id, command_name, parameters)

Despachador genérico — cualquier comando de Mythic por nombre

Datos de la plataforma

Herramienta

Descripción

get_credentials()

Todas las credenciales en el almacén de credenciales de Mythic

get_artifacts(limit)

Registro de artefactos (archivos, claves de registro, procesos creados)

get_event_log(limit)

Registro de eventos de la operación

browse_files(agent_id, path)

Entradas del explorador de archivos para un directorio en un objetivo

list_payloads()

Todos los payloads no eliminados con estado de compilación y perfil C2

list_c2_profiles()

Todos los perfiles C2 con estado de ejecución

Avisos

Aviso

Descripción

start_pentest(threat_actor, objective)

Prepara a Claude para emular un actor de amenaza específico hacia un objetivo

start_recon()

Prepara a Claude para realizar reconocimiento inicial en todos los agentes activos

Ejemplo de uso en 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": "."}.

Arquitectura

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 endpoint

Todas las llamadas de tareas usan asyncio.wait_for con un tiempo de espera de 60 segundos. Las solicitudes GraphQL omiten la verificación TLS (verify=False) para manejar el certificado autofirmado de Mythic.

Referencia de variables de entorno

Variable

Valor por defecto

Descripción

MYTHIC_USERNAME

Nombre de usuario del operador de Mythic (obligatorio)

MYTHIC_PASSWORD

Contraseña del operador de Mythic (obligatorio)

MYTHIC_HOST

localhost

Hostname o IP del servidor Mythic

MYTHIC_PORT

7443

Puerto del servidor Mythic

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

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

View all MCP Connectors

Latest Blog Posts

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