# askacharge.com — EV charging network (remote · askacharge.com)

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

- Trust score: 81/100 (high trust)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-22

## Components

- remote · `askacharge.com`: 81/100 (this document), [markdown](https://verifymcp.io/servers/com-askacharge-askacharge/askacharge-api-mcp.md), [page](https://verifymcp.io/servers/com-askacharge-askacharge/askacharge-api-mcp)

## Channel facts

- Endpoint: `https://askacharge.com/askacharge/api/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-22.

- **Endpoint Security**: 89/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 76/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 3069 tokens (~122/item across 25 items; 25 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 40/100
  - Stability observed for 12 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 25 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 26 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the askacharge.com — EV charging network MCP server?

askacharge.com — EV charging network is a hosted endpoint at https://askacharge.com/askacharge/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-askacharge-askacharge 'https://askacharge.com/askacharge/api/mcp'
```

### Cursor

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

### VS Code

```json
{
  "servers": {
    "com-askacharge-askacharge": {
      "type": "http",
      "url": "https://askacharge.com/askacharge/api/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-askacharge-askacharge]
url = "https://askacharge.com/askacharge/api/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-askacharge-askacharge": {
      "type": "remote",
      "url": "https://askacharge.com/askacharge/api/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-askacharge-askacharge --url 'https://askacharge.com/askacharge/api/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-askacharge-askacharge:
    url: "https://askacharge.com/askacharge/api/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-askacharge-askacharge": {
      "Transport": "http",
      "Url": "https://askacharge.com/askacharge/api/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-askacharge-askacharge -t streamable-http -u 'https://askacharge.com/askacharge/api/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-askacharge-askacharge": {
      "type": "http",
      "url": "https://askacharge.com/askacharge/api/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-21 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-19 (score 80, +1)

No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-17 (score 79, 0)

- [functional] New tool “askacharge_estado_comando”
- [cosmetic] “askacharge_arrancar_carga” reworded the description of “id_tag”
- [cosmetic] “askacharge_parar_carga” reworded the description of “transaction_id”
- [cosmetic] “askacharge_arrancar_carga” made “id_tag” optional
- [cosmetic] “askacharge_parar_carga” made “transaction_id” optional

### 2026-09-16 (score 79, +1)

- [security] Tool “askacharge_llamar_api” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 2321 → 2808
- [functional] New tool “askacharge_cargadores_simulados”
- [functional] New tool “askacharge_desbloquear_conector”
- [functional] New tool “askacharge_refrescar_estado”

### 2026-09-14 (score 78, +1)

- [security] Tool “askacharge_llamar_api” rewrote its description, which is the text the model reads

### 2026-09-12 (score 77, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-11 (score 76, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-09-10 (score 76, +40)

- [security improvement] Transport: unverified → pass
- [security improvement] Injection markers: unverified → pass
- [security] First check of Judged manipulation: pass
- [security] Authorization: Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token.
- [functional regression] MCP protocol: unverified → fail
- [functional improvement] Tool coverage: unverified → 100
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: excellent
- [functional] First check of Destructive annotations: pass
- [functional] First check of Schema quality: fail
- [functional] First check of Tool coverage: 100

## MCP tools (25)

### `askacharge_listar_cargadores` (~46 tokens)

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.

### `askacharge_ver_cargador` (~52 tokens)

Ver un cargador

Detalle de un cargador concreto: conectores, potencia, modo de acceso y estado.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica, p. ej. CP001

### `askacharge_estado_en_vivo` (~45 tokens)

Estado en vivo de la red

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` (~117 tokens)

Resumen de KPIs del periodo

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.

Input parameters:

- `period` (string): Periodo que se agrega: today (por defecto), week desde el lunes, month desde el día 1, year desde enero

### `askacharge_listar_sesiones` (~60 tokens)

Listar sesiones de carga

Historial de sesiones de carga con energía, ingresos y coste. Úsalo para analizar consumo, facturación o detectar cargas anómalas.

Input parameters:

- `limit` (integer): Cuántas devolver (por defecto 50)

### `askacharge_listar_incidencias` (~27 tokens)

Listar incidencias

Incidencias abiertas por cargador (averías reportadas).

### `askacharge_listar_tarifas` (~93 tokens)

Listar grupos de tarifa

Lista los grupos de tarifa de la marca —por kWh, por hora, por sesión, combinado, margen sobre PVPC 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` (~51 tokens)

Precio PVPC de 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` (~87 tokens)

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` (~44 tokens)

Ver límites 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` (~193 tokens)

Ver la traza de las API keys

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.

Input parameters:

- `key_id` (string): Id de una API key concreta para ver solo la suya. Por defecto, todas las de la marca
- `limit` (integer): Cuántas entradas devolver: 100 por defecto, 500 como máximo
- `solo_errores` (boolean): Si es true, solo los intentos rechazados (código 400 o superior). Por defecto false

### `askacharge_estado_comando` (~227 tokens)

Ver cómo va un comando lanzado

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.

Input parameters:

- `charge_point_id` (string): Filtrar la lista por cargador (solo sin job_id)
- `job_id` (string): El job_id devuelto por el comando. Opcional: sin él, los últimos 50

### `askacharge_arrancar_carga` (~125 tokens)

Arrancar una 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.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001
- `connector_id` (integer): Conector, 1 por defecto
- `id_tag` (string): Tag RFID autorizado con el que se factura la sesión. Opcional: sin él se usa la tarjeta interna PANEL de la marca

### `askacharge_parar_carga` (~98 tokens)

Parar una carga

Para una carga en curso (OCPP RemoteStopTransaction). CUIDADO: corta la carga de un conductor que puede estar esperándola.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001
- `transaction_id` (integer): Id OCPP de la sesión en curso. Opcional: si se omite, se para la sesión activa del cargador

### `askacharge_reiniciar_cargador` (~101 tokens)

Reiniciar un 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.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001
- `reset_type` (string): Hard por defecto

### `askacharge_cambiar_disponibilidad` (~93 tokens)

Poner un cargador dentro o fuera de servicio

Pone un cargador operativo o fuera de servicio (OCPP ChangeAvailability). Úsalo para retirar de servicio un punto averiado sin desconectarlo.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001
- `operational_status` (string, required): Operative lo devuelve al servicio; Inoperative lo retira sin desconectarlo

### `askacharge_desbloquear_conector` (~133 tokens)

Desbloquear un 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.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001
- `connector_id` (integer): Conector a desbloquear, 1 por defecto

### `askacharge_refrescar_estado` (~165 tokens)

Pedir al cargador su estado ahora

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.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001
- `connector_id` (integer): Conector concreto; si se omite, el cargador entero
- `requested_message` (string): Mensaje que se pide; StatusNotification por defecto

### `askacharge_diagnosticos` (~72 tokens)

Pedir diagnóstico al cargador

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é.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001

### `askacharge_crear_cargador` (~194 tokens)

Dar de alta un 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}.

Input parameters:

- `charge_point_id` (string, required): Identificador de fábrica del cargador, p. ej. CP001. Único dentro de la marca
- `latitude` (number): Latitud en grados decimales, para el mapa público
- `location_name` (string): Ubicación donde está instalado. Es lo que acota una API key limitada por sitio
- `longitude` (number): Longitud en grados decimales, para el mapa público
- `num_connectors` (integer): Cuántas mangueras tiene el equipo (1 si no se indica)

### `askacharge_cargadores_simulados` (~189 tokens)

Añadir cargadores simulados (sandbox)

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.

Input parameters:

- `count` (integer): Cuántos crear, 1-10; 5 por defecto
- `location_name` (string): Ubicación que se les asigna; 'Aparcamiento de pruebas' por defecto

### `askacharge_crear_tarifa` (~277 tokens)

Crear un grupo de 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 aplica pvpc_margin sobre el precio horario del mercado y free no cobra nada. CUIDADO: con is_default en true, la que fuera tarifa por defecto deja de serlo. Para ver las que ya existen, askacharge_listar_tarifas.

Input parameters:

- `billing_mode` (string, required): Cómo se cobra la sesión; decide cuál de los precios de abajo se usa
- `is_default` (boolean): Si es true, pasa a ser la tarifa por defecto de la marca y la anterior deja de serlo
- `name` (string, required): Nombre del grupo, el que se ve en el panel
- `price_per_hour` (number): € por hora conectado (modos per_hour y combined)
- `price_per_kwh` (number): € por kWh entregado (modos per_kwh y combined)
- `price_per_session` (number): € fijos por sesión (modo per_session)
- `pvpc_margin` (number): Margen sobre el precio PVPC de cada hora

### `askacharge_crear_cliente` (~208 tokens)

Dar de alta un 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.

Input parameters:

- `client_type` (string): individual por defecto; fleet para flotas con factura mensual; community para comunidades
- `company` (string): Razón social, si factura a nombre de una empresa
- `email` (string): Correo de contacto, al que se le mandan las facturas
- `name` (string, required): Nombre del cliente. Es el único obligatorio
- `phone` (string): Teléfono de contacto
- `tariff_group_id` (string): Id de un grupo de tarifa que ya exista (askacharge_listar_tarifas)

### `askacharge_crear_tag_rfid` (~117 tokens)

Autorizar un 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.

Input parameters:

- `client_id` (string): Id del cliente al que se le factura lo que cargue esta tarjeta (askacharge_listar_clientes)
- `id_tag` (string, required): Código que la tarjeta manda al cargador. Único dentro de la marca
- `user_name` (string): A quién se le entrega la tarjeta, para reconocerla luego

### `askacharge_llamar_api` (~152 tokens)

Llamar a cualquier operación de la 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.

Input parameters:

- `cuerpo` (object): Cuerpo JSON para POST y PUT
- `metodo` (string, required): Verbo HTTP. GET necesita el scope de lectura del recurso; el resto, el de escritura
- `ruta` (string, required): Ruta completa, p. ej. /api/brand/webhooks

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-askacharge-askacharge/askacharge-api-mcp#diagnostics

## Score history

- 2026-09-22: 81
- 2026-09-21: 81
- 2026-09-20: 80
- 2026-09-19: 80
- 2026-09-18: 79
- 2026-09-17: 79
- 2026-09-16: 79
- 2026-09-15: 78
- 2026-09-14: 78
- 2026-09-13: 77
- 2026-09-12: 77
- 2026-09-11: 76
- 2026-09-10: 76
- 2026-09-09: 36
- 2026-09-08: 36
- 2026-09-07: 36
- 2026-09-06: 36
- 2026-09-05: 36
- 2026-09-04: 36
- 2026-09-03: 36

## Common questions

### What is the askacharge.com — EV charging network MCP server?

askacharge.com — EV charging network is an MCP server listed in the public MCP registry as com.askacharge/askacharge. Operate a network of EV charge points over OCPP: status, sessions, tariffs, prices, remote commands. This page covers its hosted endpoint (https://askacharge.com/askacharge/api/mcp).

### Is the askacharge.com — EV charging network MCP server safe to use?

askacharge.com — EV charging network scores 81 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the askacharge.com — EV charging network MCP server expose?

askacharge.com — EV charging network exposes 25 tools: askacharge_listar_cargadores, askacharge_ver_cargador, askacharge_estado_en_vivo, askacharge_resumen, askacharge_listar_sesiones, and 20 more. Their descriptions and schemas cost roughly 2,966 tokens of context every time the server is loaded.

### Does the askacharge.com — EV charging network MCP server require authentication?

Yes. askacharge.com — EV charging network asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the askacharge.com — EV charging network MCP server still maintained?

askacharge.com — EV charging network is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://askacharge.com/askacharge/api/mcp
- Authorisation metadata: https://askacharge.com/.well-known/oauth-protected-resource/askacharge/api/mcp
- Repository: https://github.com/javierojan/askacharge-mcp
- Website: https://askacharge.com/askacharge/docs.html
- Changelog RSS feed: https://verifymcp.io/servers/com-askacharge-askacharge/askacharge-api-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-askacharge-askacharge/askacharge-api-mcp.json
- HTML version of this page: https://verifymcp.io/servers/com-askacharge-askacharge/askacharge-api-mcp
