asientouno

Registro Mercantil español (BORME) + subvenciones (BDNS) + contratos públicos (PLACSP), por empresa.

Should I use this

Quality & Safety

B
Description quality
80%
Schema completeness
88%
Naming quality
77%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • LOWTool 'asientouno_buscar_empresa' description lacks action verbin asientouno_buscar_empresa
  • LOWTool 'asientouno_cuentas_anuales' description lacks action verbin asientouno_cuentas_anuales
  • LOWTool 'asientouno_subvenciones_empresa' name length outside 3-30 rangein asientouno_subvenciones_empresa

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,974Tokens (tool definitions)
~3.4 KBTypical response size
Significant attention impact (2.32% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "asientouno": {
      "url": "https://mcp.asientouno.com/mcp"
    }
  }
}

Remote endpoints

https://mcp.asientouno.com/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢asientouno_buscar_empresa(query, limit)

Busca empresas por nombre o NIF en el registro mercantil español (datos reales del BORME).

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "description": "Nombre (parcial) o NIF de la empresa"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "resultados": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "empresa_id": {
            "type": "number"
          },
          "nif": {
            "type": [
              "string",
              "null"
            ]
          },
          "denominacion": {
            "type": "string"
          },
          "provincia": {
            "type": [
              "string",
              "null"
            ]
          },
          "estado": {
            "type": "string"
          }
        },
        "required": [
          "empresa_id",
          "nif",
          "denominacion",
          "provincia",
          "estado"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "resultados"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_informe_completo(empresa_id)

Informe completo de una empresa: datos identificativos, órgano de administración vigente, actos recientes y señales (concurso, disolución). En el plan gratuito, los nombres de personas físicas van parcialmente ocultos.

Input Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "integer",
      "description": "id devuelto por asientouno_buscar_empresa (el NIF no siempre está disponible en datos BORME)"
    }
  },
  "required": [
    "empresa_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "empresa": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "empresa_id": {
              "type": "number"
            },
            "nif": {
              "type": [
                "string",
                "null"
              ]
            },
            "denominacion": {
              "type": "string"
            },
            "forma_juridica": {
              "type": [
                "string",
                "null"
              ]
            },
            "provincia": {
              "type": [
                "string",
                "null"
              ]
            },
            "estado": {
              "type": "string"
            },
            "objeto_social": {
              "type": [
                "string",
                "null"
              ]
            },
            "domicilio": {
              "type": [
                "string",
                "null"
              ]
            },
            "fecha_constitucion": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "empresa_id",
            "nif",
            "denominacion",
            "forma_juridica",
            "provincia",
            "estado",
            "objeto_social",
            "domicilio",
            "fecha_constitucion"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "organo_administracion_vigente": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "persona_id": {
            "type": "number"
          },
          "nombre": {
            "type": "string"
          },
          "tipo_cargo": {
            "type": "string"
          },
          "fecha_nombramiento": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "persona_id",
          "nombre",
          "tipo_cargo",
          "fecha_nombramiento"
        ],
        "additionalProperties": false
      }
    },
    "otros_cargos_vigentes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "persona_id": {
            "type": "number"
          },
          "nombre": {
            "type": "string"
          },
          "tipo_cargo": {
            "type": "string"
          },
          "fecha_nombramiento": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "persona_id",
          "nombre",
          "tipo_cargo",
          "fecha_nombramiento"
        ],
        "additionalProperties": false
      }
    },
    "actos_recientes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "tipo": {
            "type": "string"
          },
          "fecha_publicacion": {
            "type": "string"
          },
          "url_oficial": {
            "type": "string"
          }
        },
        "required": [
          "tipo",
          "fecha_publicacion",
          "url_oficial"
        ],
        "additionalProperties": false
      }
    },
    "senales": {
      "type": "object",
      "properties": {
        "en_concurso": {
          "type": "boolean"
        },
        "disuelta": {
          "type": "boolean"
        }
      },
      "required": [
        "en_concurso",
        "disuelta"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "empresa",
    "organo_administracion_vigente",
    "otros_cargos_vigentes",
    "actos_recientes",
    "senales"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_actos_borme(empresa_id, desde, tipo, cursor, limit)

Lista los actos del BORME de una empresa, paginados, con enlace al PDF oficial de cada uno (provenance).

Input Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "integer"
    },
    "desde": {
      "type": "string",
      "description": "Fecha ISO (YYYY-MM-DD); solo actos publicados desde entonces"
    },
    "tipo": {
      "type": "string",
      "description": "Filtra por tipo de concepto (p.ej. 'nombramientos')"
    },
    "cursor": {
      "type": "integer",
      "description": "id de acto desde el que continuar (paginación)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "required": [
    "empresa_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "actos": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "acto_id": {
            "type": "number"
          },
          "tipo": {
            "type": "string"
          },
          "fecha_publicacion": {
            "type": "string"
          },
          "texto_original": {
            "type": "string"
          },
          "datos": {
            "type": "object",
            "additionalProperties": {}
          },
          "url_oficial": {
            "type": "string"
          }
        },
        "required": [
          "acto_id",
          "tipo",
          "fecha_publicacion",
          "texto_original",
          "datos",
          "url_oficial"
        ],
        "additionalProperties": false
      }
    },
    "siguiente_cursor": {
      "type": [
        "number",
        "null"
      ]
    }
  },
  "required": [
    "actos",
    "siguiente_cursor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_cargos_persona(nombre, persona_id)

Busca una persona por nombre y devuelve sus cargos vigentes e históricos, con las empresas vinculadas (grafo de relacionadas). En el plan gratuito solo busca sociedades (administradoras, auditoras).

Input Schema

{
  "type": "object",
  "properties": {
    "nombre": {
      "type": "string",
      "description": "Nombre completo o parcial de la persona"
    },
    "persona_id": {
      "type": "integer"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "personas": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "persona_id": {
            "type": "number"
          },
          "nombre": {
            "type": "string"
          },
          "cargos": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "empresa_id": {
                  "type": "number"
                },
                "denominacion_empresa": {
                  "type": "string"
                },
                "tipo_cargo": {
                  "type": "string"
                },
                "vigente": {
                  "type": "boolean"
                },
                "fecha_nombramiento": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fecha_cese": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "required": [
                "empresa_id",
                "denominacion_empresa",
                "tipo_cargo",
                "vigente",
                "fecha_nombramiento",
                "fecha_cese"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "persona_id",
          "nombre",
          "cargos"
        ],
        "additionalProperties": false
      }
    },
    "aviso": {
      "type": "string",
      "description": "Presente en el plan gratuito: qué queda fuera y cómo verlo"
    }
  },
  "required": [
    "personas"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_riesgo_empresa(empresa_id)

Señales de riesgo de una empresa publicadas en el BORME: concurso de acreedores (declaración y conclusión), otras situaciones concursales, disolución y extinción, con la fecha y el PDF oficial de cada una. Pensado para diligencia debida, prevención de blanqueo y análisis de crédito. La respuesta incluye un campo `cobertura` que explica qué NO cubre — no asumir ausencia de riesgo por ausencia de señales.

Input Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "integer"
    }
  },
  "required": [
    "empresa_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "number"
    },
    "denominacion": {
      "type": "string"
    },
    "estado_registral": {
      "type": "string",
      "description": "activa | concurso | disuelta | extinguida"
    },
    "tiene_señales_de_riesgo": {
      "type": "boolean"
    },
    "señales": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "tipo": {
            "type": "string",
            "description": "concurso_declaracion | concurso_conclusion | disolucion | extincion | situacion_concursal_otras"
          },
          "fecha_publicacion": {
            "type": "string"
          },
          "texto_original": {
            "type": "string"
          },
          "url_oficial": {
            "type": "string",
            "description": "PDF del BORME donde se publicó"
          }
        },
        "required": [
          "tipo",
          "fecha_publicacion",
          "texto_original",
          "url_oficial"
        ],
        "additionalProperties": false
      }
    },
    "cobertura": {
      "type": "string",
      "description": "Qué cubre y qué no esta respuesta"
    }
  },
  "required": [
    "empresa_id",
    "denominacion",
    "estado_registral",
    "tiene_señales_de_riesgo",
    "señales",
    "cobertura"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_subvenciones_empresa(empresa_id, cursor, limit)

Subvenciones y ayudas públicas recibidas por una empresa (fuente oficial: Base de Datos Nacional de Subvenciones, BDNS): organismo concedente, instrumento, importe y fecha de cada concesión, con enlace al boletín oficial. Dato que los informes mercantiles tradicionales no cruzan.

Input Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "integer"
    },
    "cursor": {
      "type": "integer",
      "description": "id desde el que continuar (paginación)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "required": [
    "empresa_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "resumen": {
      "type": "object",
      "properties": {
        "total_concesiones": {
          "type": "number"
        },
        "importe_total_eur": {
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "total_concesiones",
        "importe_total_eur"
      ],
      "additionalProperties": false
    },
    "concesiones": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "number"
          },
          "organismo_nivel1": {
            "type": [
              "string",
              "null"
            ]
          },
          "organismo_nivel2": {
            "type": [
              "string",
              "null"
            ]
          },
          "organismo_nivel3": {
            "type": [
              "string",
              "null"
            ]
          },
          "instrumento": {
            "type": [
              "string",
              "null"
            ]
          },
          "importe_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "fecha_concesion": {
            "type": [
              "string",
              "null"
            ]
          },
          "convocatoria": {
            "type": [
              "string",
              "null"
            ]
          },
          "url_boletin": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "organismo_nivel1",
          "organismo_nivel2",
          "organismo_nivel3",
          "instrumento",
          "importe_eur",
          "fecha_concesion",
          "convocatoria",
          "url_boletin"
        ],
        "additionalProperties": false
      }
    },
    "siguiente_cursor": {
      "type": [
        "number",
        "null"
      ]
    }
  },
  "required": [
    "resumen",
    "concesiones",
    "siguiente_cursor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_contratos_empresa(empresa_id, cursor, limit)

Contratos públicos adjudicados a una empresa (fuente oficial: Plataforma de Contratación del Sector Público, PLACSP): órgano de contratación, expediente, importe y fecha de cada adjudicación, con enlace al detalle oficial.

Input Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "integer"
    },
    "cursor": {
      "type": "integer",
      "description": "id desde el que continuar (paginación)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "required": [
    "empresa_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "resumen": {
      "type": "object",
      "properties": {
        "total_contratos": {
          "type": "number"
        },
        "importe_total_eur": {
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "total_contratos",
        "importe_total_eur"
      ],
      "additionalProperties": false
    },
    "contratos": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "number"
          },
          "organismo": {
            "type": [
              "string",
              "null"
            ]
          },
          "expediente": {
            "type": [
              "string",
              "null"
            ]
          },
          "titulo": {
            "type": [
              "string",
              "null"
            ]
          },
          "importe_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "fecha_adjudicacion": {
            "type": [
              "string",
              "null"
            ]
          },
          "estado": {
            "type": [
              "string",
              "null"
            ]
          },
          "url_detalle": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "organismo",
          "expediente",
          "titulo",
          "importe_eur",
          "fecha_adjudicacion",
          "estado",
          "url_detalle"
        ],
        "additionalProperties": false
      }
    },
    "siguiente_cursor": {
      "type": [
        "number",
        "null"
      ]
    }
  },
  "required": [
    "resumen",
    "contratos",
    "siguiente_cursor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢asientouno_cuentas_anuales(empresa_id, ejercicio)

Cuentas anuales de una empresa para un ejercicio. Nota: compra bajo demanda es Fase 2 — hoy responde honestamente que no está disponible.

Input Schema

{
  "type": "object",
  "properties": {
    "empresa_id": {
      "type": "integer"
    },
    "ejercicio": {
      "type": "string",
      "description": "Año del ejercicio, p.ej. '2025'"
    }
  },
  "required": [
    "empresa_id",
    "ejercicio"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "no_disponible_aun"
      ]
    },
    "motivo": {
      "type": "string"
    }
  },
  "required": [
    "status",
    "motivo"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools