# io.github.abasmartinc/apiempresas (npm · apiempresas-mcp)

Spanish company data: CIF lookup, BORME, directors, KYB, sanctions and open public tenders.

- Trust score: 73/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-04

## Components

- remote · `apiempresas.es`: 70/100, [markdown](https://verifymcp.io/servers/abasmartinc-apiempresas/api-mcp.md), [page](https://verifymcp.io/servers/abasmartinc-apiempresas/api-mcp)
- npm · `apiempresas-mcp`: 73/100 (this document), [markdown](https://verifymcp.io/servers/abasmartinc-apiempresas/apiempresas-mcp.md), [page](https://verifymcp.io/servers/abasmartinc-apiempresas/apiempresas-mcp)

## Channel facts

- Registry: `npm`
- Package: `apiempresas-mcp`
- Version: `1.4.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, 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-11-04.

- **Supply Chain Security**: 81/100
  - No malware found by supply-chain analysis.
  - CVE check failed: a known high-severity CVE affects zod 3.25.76, a direct dependency. A fixed version is available.
  - No install/post-install scripts declared.
  - 30 of 93 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 8 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 73/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1880 tokens (~156/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 63/100
  - Stability observed for 19 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 12 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the io.github.abasmartinc/apiempresas MCP server?

io.github.abasmartinc/apiempresas runs locally as an npm package, launched with npx -y apiempresas-mcp. 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 abasmartinc-apiempresas -- npx -y apiempresas-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "abasmartinc-apiempresas": {
      "command": "npx",
      "args": [
        "-y",
        "apiempresas-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "abasmartinc-apiempresas": {
      "command": "npx",
      "args": [
        "-y",
        "apiempresas-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add abasmartinc-apiempresas -- npx -y apiempresas-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "abasmartinc-apiempresas": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "apiempresas-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add abasmartinc-apiempresas --command npx --arg -y --arg apiempresas-mcp
```

### Hermes

```yaml
mcp_servers:
  abasmartinc-apiempresas:
    command: "npx"
    args: ["-y", "apiempresas-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "abasmartinc-apiempresas": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "apiempresas-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add abasmartinc-apiempresas -t stdio -c npx -a -y apiempresas-mcp
```

### Other

```json
{
  "mcpServers": {
    "abasmartinc-apiempresas": {
      "command": "npx",
      "args": [
        "-y",
        "apiempresas-mcp"
      ]
    }
  }
}
```

## 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-11-03 (score 73, +1)

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

### 2026-11-01 (score 72, +1)

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

### 2026-10-30 (score 71, +1)

- [functional regression] Security disclosure: fail → unverified

### 2026-10-27 (score 70, +16)

- [security improvement] Malware scan: unverified → pass

### 2026-10-26 (score 54, −15)

- [security regression] Malware scan: pass → unverified
- [functional regression] Schema quality: 1656 → 1880
- [functional] Package version: 1.3.0 → 1.4.0

### 2026-10-25 (score 69, +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-10-24 (score 68, −5)

- [security regression] CVE-2023-54404 affects this package: high
- [security regression] Known CVEs: pass → fail

### 2026-10-22 (score 73, +1)

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

## MCP tools (12)

### `get_company` (~181 tokens)

Empresa por CIF

Ficha de UNA empresa española cuando ya tienes su CIF/NIF. Úsala para saber si existe y está activa, su razón social, forma jurídica (con código ISO 20275), código LEI, CNAE, provincia y fecha de constitución; con plan Pro, también domicilio, tramo de facturación, socio único, matriz del grupo y, con include_directors, los administradores vigentes. Si no tienes el CIF, usa search_companies; para decidir un alta (KYB), verify_company. Gasta 1 consulta. Spanish company lookup by tax ID.

Input parameters:

- `cif` (string, required): CIF/NIF de la empresa española, p. ej. A46103834 (se aceptan espacios y guiones)
- `include_directors` (boolean): true para incluir administradores y cargos vigentes (planes Pro y Business)

### `search_companies` (~107 tokens)

Buscar empresas por nombre

Busca empresas españolas por nombre o parte del nombre y devuelve las candidatas con su CIF, provincia y estado. Úsala cuando NO tienes el CIF de una empresa concreta; después, get_company con el CIF elegido. Para convertir una lista de muchos nombres en CIF, mejor find_cif_by_name. Search Spanish companies by name.

Input parameters:

- `limit` (integer): Número máximo de resultados (por defecto 10)
- `query` (string, required): Nombre o parte del nombre de la empresa

### `verify_company` (~236 tokens)

Verificación KYB

Verificación para dar de alta a un cliente o proveedor (KYB) en una llamada: comprueba que la sociedad existe y opera, que la razón social que te han dado coincide (name), que quien firma es administrador vigente o socio único (person) y, si se pide, el NIF-IVA en VIES (vat). Devuelve alertas y una recomendación pass / review / fail, además de forma jurídica, LEI, matriz y socio único. Úsala para decidir; para solo consultar datos, get_company. Plan Pro; gasta 2 consultas. KYB check for a Spanish company.

Input parameters:

- `cif` (string, required): CIF/NIF de la empresa española, p. ej. A46103834 (se aceptan espacios y guiones)
- `name` (string): Razón social que ha declarado el cliente, para comprobar que coincide
- `person` (string): Nombre de la persona que firma, para comprobar si es administradora o socia única
- `vat` (boolean): true para comprobar además el NIF-IVA en VIES (operador intracomunitario)

### `find_cif_by_name` (~117 tokens)

De nombre a CIF

Convierte una LISTA de nombres de empresa (hasta 100) en sus CIF, con resultado match, ambiguous o no_match para cada uno. Úsala para completar hojas de clientes o proveedores que solo tienen el nombre. Solo los match gastan consulta. Para un solo nombre, search_companies. Plan Pro.

Input parameters:

- `names` (array, required): Nombres de empresas
- `province` (string): Provincia (p. ej. VALENCIA) para desempatar entre empresas con el mismo nombre; se aplica a todos

### `verify_invoice_recipients` (~224 tokens)

Validar NIF de clientes para facturar

Valida una LISTA de clientes (hasta 100) antes de emitirles facturas (Verifactu, factura electrónica): por cada NIF, si el formato es válido, si la sociedad consta, su razón social y domicilio oficiales, su estado y, si das el nombre que tienes guardado, si coincide. Devuelve invoice_hint ok / revisar / no_facturar con los motivos (extinguida, absorbida, en concurso, nombre distinto, NIF de ejemplo...). Úsala para revisar la cartera de clientes de un programa de facturación o ERP; para dar de alta a un solo cliente con más detalle, verify_company. No sustituye al censo de la AEAT. Plan Pro, Business o saldo; gasta 1 consulta por sociedad encontrada (lo que no consta no se cobra). Bulk VAT/tax ID check of invoice recipients.

Input parameters:

- `items` (array, required): Clientes a validar
- `vat` (boolean): true para comprobar además el NIF-IVA en VIES (solo con 20 clientes o menos)

### `get_borme_history` (~109 tokens)

Historial del BORME

Todos los actos publicados en el BORME de una empresa, con fecha y PDF oficial: constitución, nombramientos y ceses, ampliaciones de capital, cambios de domicilio o de nombre, disolución, concurso... Úsala para la historia y los cambios recientes; para el estado actual basta get_company. Plan Pro.

Input parameters:

- `cif` (string, required): CIF/NIF de la empresa española, p. ej. A46103834 (se aceptan espacios y guiones)

### `get_risk_profile` (~105 tokens)

Perfil de riesgo

Nivel de riesgo de una empresa y sus motivos, calculado a partir de sus publicaciones en el BORME (concursos, disoluciones, cierres de hoja registral, cuentas no depositadas, cambios de administradores...). Úsala antes de dar crédito o firmar con un proveedor. Plan Business.

Input parameters:

- `cif` (string, required): CIF/NIF de la empresa española, p. ej. A46103834 (se aceptan espacios y guiones)

### `get_public_contracts` (~104 tokens)

Contratos públicos

Contratos del sector público adjudicados a una empresa (Plataforma de Contratación del Sector Público): organismo, objeto, importe y fecha. Plan Business.

Input parameters:

- `cif` (string, required): CIF/NIF de la empresa española, p. ej. A46103834 (se aceptan espacios y guiones)
- `limit` (integer): Contratos por página (por defecto 20)
- `page` (integer): Página (por defecto 1)

### `get_subsidies` (~166 tokens)

Subvenciones y ayudas públicas

Subvenciones, préstamos, garantías y ventajas fiscales concedidos a una empresa española según la Base de Datos Nacional de Subvenciones (BDNS), desde 2022, Kit Digital incluido: resumen por año, por instrumento y las convocatorias con más importe, y la lista de concesiones. Úsala para prospección de ayudas o para saber cuánto dinero público recibe. Plan Business; gasta 1 consulta. Public grants received by a Spanish company.

Input parameters:

- `cif` (string, required): CIF/NIF de la empresa española, p. ej. A46103834 (se aceptan espacios y guiones)
- `limit` (integer): Concesiones por página (por defecto 20)
- `year` (integer): Solo las concesiones de ese año

### `search_tenders` (~286 tokens)

Licitaciones públicas abiertas

Licitaciones públicas EN PLAZO en España (Plataforma de Contratación del Sector Público y plataformas autonómicas): título, organismo, provincia, importe, plazo de ofertas, CPV y enlace para presentarse. Filtra por palabras del título (query), CPV, provincia, tipo (supplies, services, works) e importe. Con cif, devuelve las abiertas parecidas a los contratos que esa empresa ya ha ganado: úsala para "¿a qué concursos se puede presentar esta empresa?". Plan Business; gasta 1 consulta. Open public tenders in Spain.

Input parameters:

- `cif` (string): CIF de una empresa: licitaciones parecidas a lo que ya ha ganado
- `cpv` (string): CPV o su principio, separados por comas (p. ej. "72,48" para informática)
- `limit` (integer): Número de licitaciones (por defecto 20)
- `max_amount` (number): Importe máximo sin IVA (euros)
- `min_amount` (number): Importe mínimo sin IVA (euros)
- `province` (string): Provincia del organismo, p. ej. Madrid, Barcelona, Bizkaia
- `query` (string): Palabras que deben aparecer en el título, p. ej. "limpieza colegios"
- `type` (string): Tipo de contrato

### `check_sanctions` (~200 tokens)

Listas de sanciones

Comprueba si una empresa española (por cif, junto con sus administradores vigentes) o un nombre suelto (name) aparece en las listas de sanciones de la UE, la ONU y OFAC (EE. UU.). Devuelve cada coincidencia con su grado (strong o possible), la lista, el programa, la fecha, el país y la fecha de nacimiento para confirmarla o descartarla: un nombre parecido no es una coincidencia confirmada. Úsala en altas de clientes o proveedores (KYB, prevención de blanqueo). Plan Business; gasta 1 consulta. Sanctions screening (EU, UN, OFAC).

Input parameters:

- `cif` (string): CIF de la empresa (se comprueban la razón social y los administradores)
- `name` (string): Nombre de una persona o entidad, en lugar de cif
- `type` (string): Con name: person, entity o any

### `get_usage` (~45 tokens)

Consumo de la cuenta

Plan de la cuenta del usuario, consultas usadas y disponibles y saldo de créditos. No gasta consultas. Úsala si una herramienta responde que se ha agotado el cupo.

## Diagnostics

Captured diagnostic sections: Provenance, Vulnerabilities, Dependencies. The full working is on the page: https://verifymcp.io/servers/abasmartinc-apiempresas/apiempresas-mcp#diagnostics

## Score history

- 2026-11-04: 73
- 2026-11-03: 73
- 2026-11-02: 72
- 2026-11-01: 72
- 2026-10-31: 71
- 2026-10-30: 71
- 2026-10-29: 70
- 2026-10-28: 70
- 2026-10-27: 70
- 2026-10-26: 54
- 2026-10-25: 69
- 2026-10-24: 68
- 2026-10-23: 73
- 2026-10-22: 73
- 2026-10-21: 72
- 2026-10-20: 46
- 2026-10-19: 71
- 2026-10-18: 71
- 2026-10-17: 70
- 2026-10-16: 70

## Common questions

### What is the io.github.abasmartinc/apiempresas MCP server?

io.github.abasmartinc/apiempresas is an MCP server listed in the public MCP registry as io.github.abasmartinc/apiempresas. Spanish company data: CIF lookup, BORME, directors, KYB, sanctions and open public tenders. This page covers its npm package (apiempresas-mcp).

### Is the io.github.abasmartinc/apiempresas MCP server safe to use?

io.github.abasmartinc/apiempresas scores 73 out of 100 on VerifyMCP. We recorded 1 known advisory against it as of 4 November 2026. It declares no install or post-install scripts. 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 io.github.abasmartinc/apiempresas MCP server expose?

io.github.abasmartinc/apiempresas exposes 12 tools: get_company, search_companies, verify_company, find_cif_by_name, verify_invoice_recipients, and 7 more. Their descriptions and schemas cost roughly 1,880 tokens of context every time the server is loaded.

### Is the io.github.abasmartinc/apiempresas MCP server still maintained?

io.github.abasmartinc/apiempresas is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the io.github.abasmartinc/apiempresas MCP server under?

io.github.abasmartinc/apiempresas declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/apiempresas-mcp
- Socket report: https://socket.dev/npm/package/apiempresas-mcp
- Repository: https://github.com/abasmartinc/apiempresas-mcp
- Website: https://apiempresas.es/
- Changelog RSS feed: https://verifymcp.io/servers/abasmartinc-apiempresas/apiempresas-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/abasmartinc-apiempresas/apiempresas-mcp.json
- HTML version of this page: https://verifymcp.io/servers/abasmartinc-apiempresas/apiempresas-mcp
