# askacharge.com — EV charging network [Health: Active]

**Category:** 🏭 Industrial & IoT  
**Repository:** https://github.com/javierojan/askacharge-mcp  
**GitHub Stars:** 0  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/askacharge-com-ev-charging-network

## Description
Operate a network of EV charge points over OCPP: status, sessions, tariffs, prices, remote commands

## Tools
Capabilities this server exposes over MCP:

- **askacharge_listar_cargadores** — Lista los cargadores de la marca con su estado OCPP, ubicación y último heartbeat. Empieza por aquí para saber qué hay y qué está caído. En una red grande filtra (estado, q) o pagina (limit, offset) en vez de traerla entera; para solo contar, el recuento está en GET /api/brand/charge-points/resumen.
- **askacharge_ver_cargador** — Detalle de un cargador concreto: conectores, potencia, modo de acceso y estado.
- **askacharge_estado_en_vivo** — Foto del momento: cargadores conectados, sesiones activas y potencia que se está entregando ahora mismo. Para diagnosticar, mejor esto que el histórico.
- **askacharge_resumen** — Devuelve los KPIs agregados de un periodo —energía, facturado, margen neto, sesiones y clientes— y la variación respecto al periodo anterior. Solo lee, no cambia nada. Para el detalle sesión a sesión usa askacharge_listar_sesiones; para lo que está pasando ahora mismo, askacharge_estado_en_vivo.
- **askacharge_listar_sesiones** — Historial de sesiones de carga con energía, ingresos y coste. Úsalo para analizar consumo, facturación o detectar cargas anómalas.
- **askacharge_listar_incidencias** — Incidencias abiertas por cargador (averías reportadas).
- **askacharge_listar_tarifas** — Lista los grupos de tarifa de la marca —por kWh, por hora, por sesión, combinado, margen sobre PVPC o mercado, por franjas horarias (con sus periods), coste de la luz + margen o gratis— con su precio, y la tarifa por defecto en primer lugar. Solo lee, no cambia nada. Para crear una nueva usa askacharge_crear_tarifa; para el precio horario del mercado, askacharge_precio_pvpc_hoy.
- **askacharge_precio_pvpc_hoy** — Precio PVPC hora a hora de hoy (mercado regulado español). Úsalo para decidir cuándo conviene cargar o para fijar un margen sobre el precio real.
- **askacharge_listar_clientes** — Lista los clientes activos de la marca con su tarifa asignada y su consumo del mes. Solo lee, no cambia nada; devuelve todos de una vez (sin filtros ni paginación) y deja fuera a los dados de baja. Para dar de alta uno nuevo usa askacharge_crear_cliente; para sus cargas, askacharge_listar_sesiones.
- **askacharge_limites_de_potencia** — Límite de kW por ubicación y estrategia de reparto. Consúltalo antes de arrancar cargas en sitio con potencia contratada justa.
- **askacharge_traza_de_actividad** — Lista lo que han hecho las API keys de la marca, de lo más reciente a lo más antiguo: escrituras e intentos rechazados, con método, ruta, código de respuesta, IP y duración. Las lecturas correctas NO se registran, y la traza se borra a los 90 días. Solo lee, no cambia nada. Es la herramienta de auditoría de credenciales: para la actividad de carga usa askacharge_listar_sesiones.
- **askacharge_estado_comando** — Estado de un comando OCPP por su job_id (lo devuelve cada herramienta que manda un comando). Un comando tiene dos tiempos: la respuesta inmediata es solo el acuse del cargador; el efecto real llega después. Estados: 'acked' = aceptado y esperando el efecto (expected_event dice cuál: session.started tras arrancar, charger.online tras reiniciar, connector.status tras cambiar disponibilidad); 'confirmed' = el efecto llegó (en event); 'timeout' = no llegó en 5-10 minutos, algo falló en el cargador; 'rejected' = el cargador dijo que no; 'failed' = ni se pudo enviar. Sin job_id lista los últimos comandos de la marca. Úsala en vez de repetir el comando: repetirlo es arrancar dos cargas o reiniciar dos veces.
- **askacharge_arrancar_carga** — Arranca una carga en remoto (OCPP RemoteStartTransaction). El cargador debe estar conectado y el id_tag autorizado en la marca. CUIDADO: entrega energía real y genera un cobro.
- **askacharge_parar_carga** — Para una carga en curso (OCPP RemoteStopTransaction). CUIDADO: corta la carga de un conductor que puede estar esperándola.
- **askacharge_reiniciar_cargador** — Reinicia el cargador (OCPP Reset). 'Soft' reinicia el software y 'Hard' es un corte completo. Deja el punto fuera de servicio unos minutos y aborta las sesiones en curso: comprueba antes que no haya ninguna activa.
- **askacharge_cambiar_disponibilidad** — Pone un cargador operativo o fuera de servicio (OCPP ChangeAvailability). Úsalo para retirar de servicio un punto averiado sin desconectarlo.
- **askacharge_desbloquear_conector** — Libera el bloqueo del cable en un conector (OCPP UnlockConnector). Es lo que hay que mandar cuando un conductor no puede sacar el cable al terminar. Si hay sesión en curso, el cargador la para antes. Devuelve Unlocked, UnlockFailed o NotSupported; para un conector que sigue en Faulted, usa askacharge_reiniciar_cargador.
- **askacharge_refrescar_estado** — Pide al cargador que envíe ya un mensaje concreto (OCPP TriggerMessage): StatusNotification para refrescar el estado del conector, Heartbeat para comprobar que responde, MeterValues para una lectura del contador. Úsalo tras un comando para verificar el resultado sin esperar al siguiente latido. No cambia nada en el cargador; el estado nuevo llega por webhook connector.status y se ve en askacharge_ver_cargador.
- **askacharge_diagnosticos** — Pide al cargador que suba su fichero de diagnóstico (OCPP GetDiagnostics). Es el primer paso razonable ante un cargador que falla y no dice por qué.
- **askacharge_crear_cargador** — Da de alta un cargador. El charge_point_id es el identificador de fábrica y solo tiene que ser único dentro de esta marca. Tras crearlo, el cargador debe apuntar su OCPP a wss://askacharge.com/askacharge/ocpp/{slug}/{charge_point_id}.
- **askacharge_cargadores_simulados** — Da de alta cargadores simulados en la marca para probar sin hardware: conectan por OCPP en menos de un minuto, laten, cargan solos unas veces al día y responden a todos los comandos (un Reset los desconecta de verdad 20 s y vuelven). Cada uno trae una tarjeta RFID <PREFIJO>-TARJETA-nn. Máximo 10 por marca; si ya están todos devuelve 409. Se quitan con DELETE /api/brand/sandbox (askacharge_llamar_api). Úsalo para ensayar comandos y webhooks antes de tocar un cargador real.
- **askacharge_crear_tarifa** — Crea un grupo de tarifa y devuelve el grupo creado con su id. Rellena solo el precio del modo elegido: per_kwh usa price_per_kwh, per_hour usa price_per_hour, per_session usa price_per_session, combined suma los de kWh y hora, pvpc_margin suma pvpc_margin al PVPC (solo España), market_margin suma pvpc_margin al mercado diario de la zona de la marca (solo zonas con precio y marcas que cobran en EUR; si no, 400), tou cobra por franjas horarias que defines en periods (hora local de la marca; price_per_kwh es el precio de las horas sin franja), cost_plus suma pvpc_margin a lo que le cuesta la luz a la marca en cada momento (exige haberlo configurado) y free no cobra nada. Los modos que cambian con la hora cobran cada kWh a su precio. CUIDADO: con is_default en true, la que fuera tarifa por defecto deja de serlo. Para ver las que ya existen, askacharge_listar_tarifas.
- **askacharge_crear_cliente** — Da de alta un cliente y devuelve el creado con su id. NO comprueba duplicados: dos llamadas con el mismo email crean dos clientes, así que mira antes askacharge_listar_clientes. Si no le pasas tariff_group_id, el cliente hereda la tarifa por defecto de la marca. Para autorizarle una tarjeta física, después: askacharge_crear_tag_rfid.
- **askacharge_crear_tag_rfid** — Autoriza un tag RFID en la marca. Sin esto, la tarjeta no puede arrancar cargas. El id_tag es único dentro de la marca.
- **askacharge_llamar_api** — Llama a cualquier endpoint de la API de la marca, para lo que no cubran las herramientas anteriores. El contrato completo (456 operaciones) está en https://askacharge.com/askacharge/openapi.json. Los permisos se comprueban igual que en el resto: la clave necesita el scope de ese recurso. Solo valen rutas bajo /api/brand y /api/ext.

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "askacharge-com-ev-charging-network": {
    "url": "https://askacharge.com/askacharge/api/mcp"
  }
}
```

## Documentation

## What askacharge.com — EV charging network does

askacharge.com — EV charging network gives MCP-compatible agents access to the askacharge.com Charging Station Management System. The platform manages EV charge points connected through OCPP 1.6J and 2.0.1. Through the MCP interface, an agent can inspect charger connectivity, connector details, active charging activity, historical sessions, faults, tariffs, electricity prices, customers, power limits, and operational KPIs.

The server also exposes actions that affect physical equipment. These include starting or stopping a charge, rebooting a charger, changing its availability, unlocking a connector, requesting a current status message, and requesting diagnostics. Other write operations register chargers, create tariffs and fleet customers, authorize RFID tags, or add simulated chargers for testing. An API escape hatch can invoke other permitted operations from the platform's REST API.

## How it works

The service is hosted at `https://askacharge.com/askacharge/api/mcp`; there is no local package to install. Requests use JSON-RPC 2.0 over HTTP POST with the streamable-HTTP transport. The endpoint accepts MCP protocol versions `2025-06-18`, `2025-03-26`, and `2024-11-05`. It does not provide an SSE stream, and GET requests return 405.

The endpoint can respond to initialization, ping, and tool-list requests without credentials. Tool calls require a brand API key supplied as either `Authorization: Bearer ...` or `X-Api-Key`. Each key belongs to one brand, so its data access is limited to that brand. Scopes determine which tools appear and which operations are permitted. Command permissions can be granted individually, and location restrictions can limit where commands may act.

Hardware commands return an immediate charger acknowledgement and a `job_id`, but the physical result may arrive later through OCPP. Agents should query the command-status tool with that job ID rather than repeat the original operation. Statuses include acknowledged, confirmed, timed out, rejected, and failed states.

## Setup and configuration

Create an askacharge.com account, obtain an API key from the panel's API keys area, and configure the remote MCP URL in a client that supports HTTP MCP connections. Claude Code can register the endpoint with its HTTP transport and an authorization header. Clients using JSON configuration can define the server URL and header directly.

No environment variable is required by the hosted endpoint itself.

## Tools and capabilities

The catalogue contains 25 tools, with Spanish tool names and descriptions. Capabilities include:

- Listing chargers and viewing detailed charger records.
- Checking live connectivity, active sessions, drawn power, incidents, and command progress.
- Reviewing sessions, revenue, energy, costs, customers, tariffs, PVPC prices, and location power limits.
- Sending OCPP remote-start, remote-stop, reset, availability, unlock, status-trigger, and diagnostics requests.
- Creating chargers, tariffs, fleet customers, RFID tags, and up to 10 simulated OCPP chargers.
- Calling other askacharge.com API operations through the authenticated API tool.

## Limitations and notes

The tool names and descriptions are in Spanish. A location-scoped key restricts command targets but does not restrict read listings, which can still return the brand's wider data. There is no separate sandbox; trial-mode brands are the documented way to test without affecting a production setup.

The MCP layer uses the platform's existing REST API permissions, audit trail, rate limits, and idempotency behavior. Remote commands can affect physical hardware, stop live sessions, or reboot chargers, so agents should confirm intent and track the returned job ID. The service is request/response based and does not offer an SSE stream.

_Full upstream README: https://allmcps.com/mcp/askacharge-com-ev-charging-network/readme_

