Skip to main content
Glama
32n1

EVE Online Companion MCP Server

by 32n1

EVE Online Companion — Servidor MCP

Un servidor MCP (Model Context Protocol) para Claude Code que sirve como tu compañero personal de EVE Online. Proporciona a Claude acceso directo a datos de personajes, precios de mercado, inteligencia de killboards, conocimiento de la wiki y más, todo mediante lenguaje natural.

¿Qué puede hacer?

"¿Puedo volar el Ishtar?" — Comprueba tus habilidades y muestra las que faltan junto con el tiempo de entrenamiento.

"¿Cuánto cuesta un Warp Disruptor II en Jita?" — Obtiene datos de mercado en vivo desde ESI.

"¿Qué tan peligroso es el piloto XY?" — Comprueba las estadísticas de zKillboard, el nivel de peligro y las naves principales.

"Muéstrame mis equipamientos para el Vexor" — Lista los equipamientos guardados en formato EFT.

"Explícame las mecánicas de los agujeros de gusano" — Busca en la wiki de EVE University.

Las 29 herramientas

Categoría

Herramientas

Descripción

Auth

eve_auth_login

Inicio de sesión SSO (bloqueado hasta el callback)

eve_auth_start

Inicio de sesión SSO (no bloqueante, abre localhost:8834)

eve_auth_status

Estado de autenticación + Información del personaje

Character

eve_character_info

Nombre, Corp, Alianza, Cartera, SP, Ubicación, Nave

eve_character_skills

Filtrar habilidades por grupo o nombre

eve_character_skillqueue

Cola de habilidades actual con tiempos

eve_character_implants

Implantes equipados

Location

eve_location_current

Sistema, Estación, Nave, Estado en línea

eve_route_plan

Calcular ruta (más corta/segura/insegura)

eve_set_destination

Establecer destino del piloto automático en el juego

Fittings

eve_fitting_list

Equipamientos guardados (formato EFT)

eve_fitting_save

Guardar equipamiento desde una cadena EFT

eve_fitting_analyze

Análisis de equipamiento (Tanque, DPS, Cap — basado en Dogma)

Market

eve_market_price

Comprobación de precios (Jita por defecto, otras regiones posibles)

eve_market_appraise

Valorar lista de objetos (copiar y pegar desde el juego)

eve_market_orders

Órdenes de compra/venta activas propias

Intel

eve_intel_character

Intel del piloto: Corp, Kills, Nivel de peligro, Naves principales

eve_intel_corporation

Intel de la Corp: Miembros, Alianza, Estadísticas de killboard

eve_intel_system

Intel del sistema: Kills, Saltos, Kills de NPC, Ratting

eve_killmail_analyze

Desglosar killmail: Equipamiento, Atacante, Daño

Assets

eve_assets_search

Buscar activos por nombre/tipo

eve_wallet_balance

Saldo de la cartera

eve_wallet_journal

Entradas recientes de la cartera

Universe

eve_type_info

Detalles de objeto/nave con atributos Dogma

eve_system_info

Detalles del sistema: Sec, Región, Estaciones

eve_search

Búsqueda universal (Personajes, Corps, Sistemas, Objetos)

Wiki

eve_wiki_search

Buscar en la wiki de EVE University

eve_wiki_article

Leer artículo de la wiki (como Markdown)

Fleet

eve_fleet_info

Estado de la flota (si está en una)


Configuración

1. Aplicación de desarrollador de EVE

  1. Ve a https://developers.eveonline.com/

  2. "Create New Application"

  3. Tipo de aplicación: Authentication & API Access

  4. URL de callback: http://localhost:8834/callback

  5. Selecciona todos los alcances (scopes) de la lista a continuación

  6. Anota el Client ID (Secret Key opcional, solo para aplicaciones confidenciales)

esi-skills.read_skills.v1
esi-skills.read_skillqueue.v1
esi-clones.read_implants.v1
esi-assets.read_assets.v1
esi-wallet.read_character_wallet.v1
esi-fittings.read_fittings.v1
esi-fittings.write_fittings.v1
esi-characters.read_standings.v1
esi-killmails.read_killmails.v1
esi-location.read_location.v1
esi-location.read_ship_type.v1
esi-location.read_online.v1
esi-fleets.read_fleet.v1
esi-markets.read_character_orders.v1
esi-contracts.read_character_contracts.v1
esi-mail.read_mail.v1
esi-ui.open_window.v1
esi-ui.write_waypoint.v1
esi-search.search_structures.v1
esi-universe.read_structures.v1

2. Instalación

git clone <repo>
cd eve
npm install
npm run build

3. Configuración

mkdir -p ~/.eve-mcp

Crea ~/.eve-mcp/config.json:

{
  "clientId": "deine-client-id-von-ccp",
  "callbackUrl": "http://localhost:8834/callback",
  "userAgent": "eve-mcp-companion/1.0 (dein-character-name)"
}

Opcional con Secret Key (solo para aplicaciones confidenciales):

{
  "clientId": "deine-client-id",
  "secretKey": "dein-secret-key",
  "callbackUrl": "http://localhost:8834/callback",
  "userAgent": "eve-mcp-companion/1.0 (dein-character-name)"
}

Alternativamente mediante variables de entorno:

export EVE_MCP_CLIENT_ID="deine-client-id"
export EVE_MCP_CALLBACK_URL="http://localhost:8834/callback"
export EVE_MCP_USER_AGENT="eve-mcp-companion/1.0"

4. Integración con Claude Code

Añade el servidor MCP a tus ajustes de Claude Code.

Opción A — settings.json (recomendado):

Archivo: ~/.claude/settings.json

{
  "mcpServers": {
    "eve-online": {
      "command": "node",
      "args": ["/absoluter/pfad/zu/eve/dist/index.js"],
      "env": {
        "EVE_MCP_TOKEN_PASSPHRASE": "ein-sicheres-passwort"
      }
    }
  }
}

Opción B — Alcance del proyecto (.mcp.json en el directorio del proyecto):

{
  "mcpServers": {
    "eve-online": {
      "command": "node",
      "args": ["./dist/index.js"],
      "env": {
        "EVE_MCP_TOKEN_PASSPHRASE": "ein-sicheres-passwort"
      }
    }
  }
}

5. Primer inicio de sesión

Inicia Claude Code y di:

"Conéctame con EVE Online"

Claude llamará a eve_auth_start e iniciará un servidor de autenticación local. Abre http://localhost:8834 en el navegador; allí aparecerá una página de inicio de sesión al estilo EVE. Haz clic en "Authenticate via EVE SSO", inicia sesión en CCP y serás redirigido a una página de éxito con el retrato de tu personaje. Cierra la ventana, listo.


Arquitectura

eve/
├── src/
│   ├── index.ts                 # Server-Entry, registriert alle Tools
│   ├── config.ts                # Laedt ~/.eve-mcp/config.json
│   ├── auth/
│   │   ├── scopes.ts            # ESI Scope-Definitionen
│   │   ├── sso.ts               # OAuth2 PKCE Flow, Callback-Server
│   │   ├── tokens.ts            # Token-Persistence (AES-256-GCM)
│   │   └── pages.ts             # HTML-Seiten fuer Auth-Flow
│   ├── clients/
│   │   ├── esi.ts               # ESI API Client (Auth, Rate-Limiting, Cache)
│   │   ├── zkillboard.ts        # zKillboard Client (10 req/s Throttle)
│   │   ├── evetycoon.ts         # EVE Tycoon Markt-Client
│   │   └── wiki.ts              # EVE University Wiki (MediaWiki API)
│   ├── tools/
│   │   ├── auth.ts              # Login, Status
│   │   ├── character.ts         # Character Info, Skills, Queue, Implants
│   │   ├── location.ts          # Location, Route, Autopilot
│   │   ├── fitting.ts           # Fittings, EFT, Analyse
│   │   ├── universe.ts          # Type Info, System Info, Search
│   │   ├── market.ts            # Preise, Appraisal, Orders
│   │   ├── killboard.ts         # Character/Corp/System Intel, Killmails
│   │   ├── assets.ts            # Assets, Wallet
│   │   ├── wiki.ts              # Wiki Search, Article
│   │   └── fleet.ts             # Fleet Info
│   └── utils/
│       ├── cache.ts             # In-Memory Cache mit TTL
│       ├── errors.ts            # Error-Klassen + formatToolError()
│       ├── formatting.ts        # ISK, Zeit, EVE-Time Formatierung
│       ├── eft.ts               # EFT-Format Parser + Generator
│       └── sde.ts               # Type/System Name-Resolution (ESI-backed)
├── package.json
├── tsconfig.json
└── README.md

Clientes API

Cliente

URL base

Auth

Límite de tasa

Caché

ESI

esi.evetech.net/latest

OAuth2 Bearer

Cabecera Error-Limit

Cabecera Expires + TTL personalizado

zKillboard

zkillboard.com/api

ninguna

10 req/s

10 minutos

EVE Tycoon

evetycoon.com/api/v1

ninguna

Cabecera Expires

5 minutos

Wiki

wiki.eveuniversity.org/api.php

ninguna

ninguna

1 hora

Caché

Todas las respuestas de la API se almacenan en caché en memoria:

Tipo de dato

TTL

Ubicación / Nave / En línea

30 segundos

Saldo de la cartera

2 minutos

Cola de habilidades

5 minutos

Precios de mercado / Órdenes

5 minutos

Estadísticas de zKillboard

10 minutos

Activos

30 minutos

Habilidades del personaje

1 hora

Artículos de la wiki

1 hora

Información de tipo / sistema

24 horas

Resolución de nombre a ID

24 horas

Límite de tasa de ESI

El cliente ESI rastrea las cabeceras X-ESI-Error-Limit-Remain y X-ESI-Error-Limit-Reset. Si el límite de error cae por debajo de 20, las solicitudes se bloquean hasta el reinicio. Los errores 420 (límite de error) se lanzan como RateLimitError.

Seguridad de tokens

  • Los tokens se guardan en ~/.eve-mcp/tokens.json

  • Si EVE_MCP_TOKEN_PASSPHRASE está configurado: cifrado AES-256-GCM con derivación de clave scrypt

  • Sin frase de contraseña: almacenamiento en texto plano (con advertencia en stderr)

  • El token de acceso se actualiza automáticamente 2 minutos antes de caducar

  • El token de actualización se renueva en cada actualización (patrón de token volátil PKCE)


Desarrollo

# Dev-Mode (tsx, kein Build noetig)
npm run dev

# Build
npm run build

# Ausfuehren
npm start

Añadir una nueva herramienta

  1. Inserta el manejador en el archivo correspondiente en src/tools/

  2. Usa el patrón server.tool(name, description, zodSchema, handler)

  3. Devuelve siempre los errores con formatToolError(err)

  4. Realiza llamadas ESI mediante esi.get() / esi.publicGet() con el TTL de caché adecuado

  5. Resuelve IDs de tipo con resolveTypeName() / resolveTypeId()

Solución de problemas

"Config not found" — Crea ~/.eve-mcp/config.json o establece EVE_MCP_CLIENT_ID.

"Authentication required" — Llama a eve_auth_login o eve_auth_start.

"Token refresh failed" — El token de actualización ha caducado. Inicia sesión de nuevo.

"ESI error limit reached" — Demasiadas solicitudes erróneas. Espera automáticamente.

Puerto 8834 ocupado — Establece otro puerto en config.json y ajusta la URL de callback en CCP.

Install Server
F
license - not found
A
quality
Not graded
maintenance - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer

  • Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.

  • MCP server giving Claude AI access to 22+ NYC public-record databases for real estate due diligence

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/32n1/eveMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server