ENTIA Entity Verification MCP
Provides verified business entity data and socioeconomic profiles anchored to official registries such as BORME, Companies House, SIRENE INSEE, Estonian Business Register, GLEIF, VIES, AEAT, and INE. The server enables AI agents to perform entity lookups, search entities, and retrieve structured JSON-LD data for trust infrastructure.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://mcp.entia.systems/mcpWhat its tools do
15 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Verify business identity using official registries
- Search for entities by name or identifier
- Retrieve socioeconomic profiles for entities
- Access structured JSON-LD entity data
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- entia-mcp-ts 1.3.3-worker
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 15 advertised
- Resources
- 1 advertised
- Resource templates
- 0 advertised
- Prompts
- 0 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
15 advertised
entity_lookup — Entity Lookup
FREE (no API key needed). Use when the user asks whether a company exists, who is behind a CIF/NIF, EU VAT or LEI, its registered legal name, city, sector or BORME (Spanish Commercial Registry) status. Look up any business entity by name, CIF/NIF, EU VAT, or LEI. Free callers receive a trace-level identity preview; authenticated callers receive the full paid dossier.
{
"type": "object",
"required": [],
"properties": {
"q": {
"type": "string",
"maxLength": 500,
"minLength": 2,
"description": "Company name, CIF/NIF (B82846825), EU VAT (ESB82846825), or LEI (20 chars)"
},
"name": {
"type": "string",
"description": "Alias for `q` — accepted for compatibility with clients that send `name`."
},
"query": {
"type": "string",
"description": "Alias for `q` — accepted for compatibility with clients that send `query`."
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"found": {
"type": "boolean",
"description": "True only when an identity anchor corroborated the query"
},
"query": {
"type": "string"
},
"entity": {
"type": "object",
"description": "Verified identity: legal name, tax id, address, sector"
},
"integrity": {
"type": "object",
"description": "Tamper-evidence MAC. Not an electronic signature"
},
"error_code": {
"type": "string"
},
"provenance": {
"type": "object",
"description": "Publisher and data sources of this answer"
},
"data_coverage": {
"type": "object",
"description": "Which sources answered and which did not"
},
"registry_data": {
"type": "object",
"description": "Official registry payload (BORME/GLEIF/VIES/native)"
},
"coherence_errors": {
"type": "array",
"items": {
"type": "string"
}
},
"economic_profile": {
"type": "object"
}
},
"description": "Identity resolution result. `found` is fail-closed: false means no identity anchor was corroborated, not 'try again'.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}search_entities — Search Entities
FREE (no API key needed). Use when the user asks to find or list businesses by name, keyword, sector or city (e.g. 'dentists in Madrid', 'real estate agencies in Valencia'). Search businesses by name, keyword, country, city or sector. Results mix registry-backed companies and public business listings (local directories/maps), so not every result is registry-verified; use entity_lookup or verify_vat to verify one. Answers 'find me a dentist in Madrid' / 'list law firms in Barcelona'. `sector` is a closed vocabulary — see the enum; aliases such as `abogados` resolve to their canonical slug. Anonymous callers receive a trace-level preview (name + city); authenticated TRACE+ keys unlock full records.
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"maxLength": 500,
"minLength": 2,
"description": "Search query — company name or keywords"
},
"city": {
"type": "string",
"maxLength": 100,
"minLength": 2,
"description": "City name (Madrid, Barcelona, Valencia, Sevilla, London)"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "Max results (default 10, max 50)"
},
"sector": {
"enum": [
"abogados",
"accountingservice",
"asesoria",
"asesorias",
"attorney",
"automocion",
"automotivebusiness",
"autorepair",
"barberia",
"barberias",
"beautysalon",
"belleza",
"clinicas",
"construccion",
"consultoria",
"dental",
"dentist",
"dentista",
"ecommerce",
"educacion",
"energia",
"estetica",
"exercisegym",
"farmacia",
"farmacias",
"financial",
"financialservice",
"fisio",
"fisioterapia",
"foodestablishment",
"generalcontractor",
"gestion",
"gestoria",
"gestorias",
"gimnasio",
"gimnasios",
"hairsalon",
"healthandbeautybusiness",
"healthcare",
"healthclub",
"homeandconstructionbusiness",
"hospital",
"hospitality",
"inmobiliaria",
"inmobiliarias",
"insurance",
"insuranceagency",
"legal",
"legalservice",
"medicalbusiness",
"medicalclinic",
"medico",
"medicos",
"nutricion",
"optica",
"opticas",
"optician",
"peluqueria",
"peluquerias",
"pharmacy",
"physician",
"physiotherapyclinic",
"podologia",
"psicologia",
"psychologist",
"realestate",
"realestateagent",
"reformas",
"restauracion",
"restaurant",
"restaurantes",
"rrhh",
"saas",
"salud",
"security",
"seguros",
"sportsactivitylocation",
"taller",
"talleres",
"telecom",
"turismo",
"veterinario",
"veterinarios",
"veterinarycare"
],
"type": "string",
"description": "Sector filter. Canonical: dental, legal, estetica, psicologia, medicos, talleres, veterinarios, reformas, inmobiliarias, asesorias, gimnasios… Aliases (abogados, salud, dentist, beautysalon…) resolve to a canonical slug and the response declares the translation in _meta.sector_resolved_from."
},
"country": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO country code (es, gb, fr)"
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object",
"description": "Carries sector_resolved_from when an alias was translated"
},
"count": {
"type": "integer"
},
"filters": {
"type": "object",
"description": "Filters actually applied — echoes q/sector/city/country"
},
"entities": {
"type": "array",
"items": {
"type": "object"
},
"description": "Each carries name, city, sector and canonical Entia Home URL"
}
},
"description": "Paged catalogue search over the verified corpus.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}verify_vat — Verify VAT
FREE (no API key needed). Use when the user asks whether an EU VAT number is valid or active (live VIES check). Real-time EU VAT validation via VIES (27 countries). Returns {valid, name, address, vat_number, country, checked_at}. Some Member States (Spain among them) do not disclose name/address through VIES: name/address come back null with name_disclosure=withheld_by_member_state; use entity_lookup for the registered name.
{
"type": "object",
"required": [],
"properties": {
"q": {
"type": "string",
"maxLength": 20,
"minLength": 4,
"description": "EU VAT number (ESA28015865, A28015865, IE6388047V)"
},
"vat": {
"type": "string",
"description": "Alias for `q` — the VAT number."
},
"query": {
"type": "string",
"description": "Alias for `q`."
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"query": {
"type": "string"
},
"result": {
"type": "object",
"description": "VIES answer: validity, registered name and address"
},
"vat_number": {
"type": "string"
},
"country_code": {
"type": "string"
}
},
"description": "Real-time VIES validation.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}zone_profile — Zone Profile
PAID (requires SIGNAL plan or higher, from €29/month). Use when the user asks about the income, employment, demographics, business census or real-estate profile of a Spanish postal code. Socioeconomic profile of a Spanish postal code — 17 blocks: income, employment, demographics, business census, real estate, FTTH, poverty, tourism.
{
"type": "object",
"required": [
"postal_code"
],
"properties": {
"postal_code": {
"type": "string",
"pattern": "^[0-9]{4,5}$",
"description": "Spanish 5-digit postal code (28013 = Madrid Gran Vía)"
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"economy": {
"type": "object"
},
"province": {
"type": "string"
},
"income_aeat": {
"type": "object"
},
"postal_code": {
"type": "string"
},
"real_estate": {
"type": "object"
},
"municipality": {
"type": "string"
},
"employment_sepe": {
"type": "object"
},
"businesses_dirce": {
"type": "object"
},
"demographics_ine": {
"type": "object"
},
"autonomous_community": {
"type": "string"
},
"entia_classification": {
"type": "object"
},
"digital_infrastructure": {
"type": "object"
},
"poverty_inequality_ccaa": {
"type": "object"
}
},
"description": "Socioeconomic profile of a Spanish postal code, 17 blocks from official sources.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_competitors — Get Competitors
PAID (requires BUILD plan or higher, from €99/month). Use when the user asks who competes with a business in a sector and Spanish city. Find real competitors in the same sector and city. Ranked entities with identity + location + sector matching. Spain only on the public surface. `sector` is a closed vocabulary — see the enum; aliases such as `abogados` (the slug ENTIA uses in its own Entia Home URLs) resolve to their canonical slug.
{
"type": "object",
"required": [
"sector",
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 2,
"description": "City name in Spain (Madrid, Barcelona, Valencia, Sevilla, Bilbao)"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 30,
"minimum": 1,
"description": "Max results (1-30)"
},
"sector": {
"enum": [
"abogados",
"accountingservice",
"asesoria",
"asesorias",
"attorney",
"automocion",
"automotivebusiness",
"autorepair",
"barberia",
"barberias",
"beautysalon",
"belleza",
"clinicas",
"construccion",
"consultoria",
"dental",
"dentist",
"dentista",
"ecommerce",
"educacion",
"energia",
"estetica",
"exercisegym",
"farmacia",
"farmacias",
"financial",
"financialservice",
"fisio",
"fisioterapia",
"foodestablishment",
"generalcontractor",
"gestion",
"gestoria",
"gestorias",
"gimnasio",
"gimnasios",
"hairsalon",
"healthandbeautybusiness",
"healthcare",
"healthclub",
"homeandconstructionbusiness",
"hospital",
"hospitality",
"inmobiliaria",
"inmobiliarias",
"insurance",
"insuranceagency",
"legal",
"legalservice",
"medicalbusiness",
"medicalclinic",
"medico",
"medicos",
"nutricion",
"optica",
"opticas",
"optician",
"peluqueria",
"peluquerias",
"pharmacy",
"physician",
"physiotherapyclinic",
"podologia",
"psicologia",
"psychologist",
"realestate",
"realestateagent",
"reformas",
"restauracion",
"restaurant",
"restaurantes",
"rrhh",
"saas",
"salud",
"security",
"seguros",
"sportsactivitylocation",
"taller",
"talleres",
"telecom",
"turismo",
"veterinario",
"veterinarios",
"veterinarycare"
],
"type": "string",
"description": "ENTIA sector slug. Canonical: dental, legal, estetica, psicologia, medicos, talleres, veterinarios, reformas, inmobiliarias, asesorias, gimnasios… Aliases (abogados, salud, dentist, beautysalon…) resolve to a canonical slug and the response declares the translation in _meta.sector_resolved_from."
}
}
}{
"type": "object",
"properties": {
"city": {
"type": "string"
},
"_meta": {
"type": "object",
"description": "Carries sector_resolved_from / sector_resolved_to"
},
"count": {
"type": "integer"
},
"sector": {
"type": "string",
"description": "Canonical slug actually used after alias resolution"
},
"country": {
"type": "string"
},
"competitors": {
"type": "array",
"items": {
"type": "object"
}
}
},
"description": "Ranked competitors in the same sector and city. Spain only on the public surface.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_showcase — Get Showcase
FREE (no API key needed). Use to show example records and what ENTIA data looks like before choosing another tool. Curated IBEX35 + EU entity examples. FREE — does not consume quota. Use to explore data depth.
{
"type": "object",
"required": [],
"properties": {
"limit": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Sample size (default 3, max 5)"
},
"category": {
"enum": [
"all",
"ibex",
"tech",
"banking",
"energy",
"retail",
"spain",
"eu"
],
"type": "string",
"description": "Subset to sample (default: all)"
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"unlock": {
"type": "object"
},
"checkout": {
"type": "object"
},
"entities": {
"type": "array",
"items": {
"type": "object"
}
},
"upgrade_url": {
"type": "string"
},
"access_level": {
"type": "string"
},
"gated_fields": {
"type": "array",
"items": {
"type": "string"
}
},
"upgrade_hint": {
"type": "string"
}
},
"description": "Curated sample entities for evaluation. Fields are gated by tier.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}professional_lookup — Professional Lookup
PAID (requires ENTERPRISE plan, custom contract). Use when the user asks whether a Spanish health or legal professional is registered (colegiado number, college, specialty). Verify professional registrations across 24 Spanish health/legal/psychology verticals. Returns colegiado number, college, specialty, status.
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 500,
"minLength": 2,
"description": "Professional name, colegiado number, or REPS identifier"
},
"vertical": {
"type": "string",
"maxLength": 40,
"description": "Healthcare/legal vertical (dental, medicos, psicologia, ...)"
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
}
},
"description": "Professional registration verification across Spanish health, legal and psychology registries. Enterprise DPA required.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_full_dossier — Get Full Dossier
PAID (requires INTEGRATE plan or higher, from €399/month). Use for due diligence / KYB when the user wants everything about one company in a single call (identity, BORME, VIES, zone). Aggregator — 90+ fields about an entity in one call. Combines 4 ENTIA sources in parallel: identity, zone, BORME, VIES. Killer tool for due diligence/KYB.
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Company name, CIF/NIF, EU VAT, or LEI"
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"found": {
"type": "boolean"
},
"query": {
"type": "string"
},
"entity": {
"type": "object"
},
"integrity": {
"type": "object"
},
"provenance": {
"type": "object"
},
"trust_score": {
"type": "object"
},
"verification": {
"type": "object"
},
"data_coverage": {
"type": "object"
}
},
"description": "Aggregated dossier: identity, registry, trust and verification in one call.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_platform_stats — Get Platform Stats
FREE (no API key needed). Use when the user asks how much data ENTIA covers (entities, BORME acts). Live platform stats: total entities and BORME acts, counted live. Country and Entia Home counts are null (marked _unverified) until they are measured.
{
"type": "object",
"required": [],
"properties": {}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"status": {
"type": "string"
},
"cache_ttl": {
"type": "integer"
},
"countries": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"borme_acts": {
"type": "integer"
},
"_unverified": {
"type": "array",
"items": {
"type": "string"
},
"description": "Figures NOT independently verified — honesty marker, do not quote as verified"
},
"last_updated": {
"type": "string"
},
"sources_active": {
"type": "integer"
},
"total_entities": {
"type": "integer"
},
"homes_published": {
"type": [
"integer",
"null"
]
},
"countries_active": {
"type": [
"integer",
"null"
]
},
"jsonld_generated": {
"type": [
"integer",
"null"
]
}
},
"description": "Live platform totals. Single source of truth for corpus size.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}run_risk_audit — Run Risk Audit
PAID (requires SIGNAL plan or higher, from €29/month). Use when the user asks about the AI-readiness, SEO/LLM visibility or digital risk of a company's website domain. Run comprehensive AI-readiness + digital risk audit on any domain. Analyzes SSL, DNS, structured data, LLM visibility. Returns risk score 0-100. 5 req/min, 30s timeout.
{
"type": "object",
"required": [
"domain"
],
"properties": {
"name": {
"type": "string",
"description": "Optional business name for context"
},
"domain": {
"type": "string",
"pattern": "^(?:https?://)?[A-Za-z0-9]([A-Za-z0-9.-]*[A-Za-z0-9])?\\.[A-Za-z]{2,}(?:[/?#].*)?$",
"maxLength": 253,
"minLength": 3,
"description": "Domain to audit (clinicadental.es, example.com)"
},
"sector_id": {
"type": "string",
"description": "Optional sector hint (dental, legal, talleres, …)"
}
}
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"audit": {
"type": "object"
},
"domain": {
"type": "string"
},
"job_id": {
"type": "string"
},
"status": {
"type": "string"
},
"risk_level": {
"type": "string"
},
"risk_score": {
"type": "number"
},
"audit_token": {
"type": "string"
}
},
"description": "AI-readiness and digital risk audit of a domain.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_entia_home — Get Entia Home
FREE (no API key needed). Use when you already have an Entia Home URL path (country/sector/city/slug) and need that public business page as data. Retrieve the Schema.org JSON-LD @graph for a specific entity's Entia Home (machine layer at /v1/identity/{country}/{sector}/{city}/{slug}.jsonld). Requires country, sector, city, slug path segments — not cif/q. Obtain the path via entity_lookup / showcase (canonical_url). Fail-closed: never returns ENTIA corporate marketing as if it were the entity.
{
"type": "object",
"required": [
"country",
"sector",
"city",
"slug"
],
"properties": {
"city": {
"type": "string",
"pattern": "^[a-z0-9-]+$",
"maxLength": 100,
"minLength": 1,
"description": "City slug (madrid, barcelona, london)"
},
"slug": {
"type": "string",
"pattern": "^[a-z0-9-]+$",
"maxLength": 200,
"minLength": 1,
"description": "Business slug (clinica-dental-sonrisa)"
},
"sector": {
"type": "string",
"pattern": "^[a-z0-9-]+$",
"maxLength": 50,
"minLength": 2,
"description": "Industry slug (dental, legal, talleres, …)"
},
"country": {
"type": "string",
"pattern": "^[a-z]{2}$",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 (es, gb, fr)"
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"_meta": {
"type": "object"
},
"@graph": {
"type": "array",
"items": {
"type": "object"
},
"description": "WebPage, Entity, Verification Report and Territorial Profile nodes"
},
"@context": {
"type": "string"
}
},
"description": "Full Schema.org @graph of an Entia Home page — the same truth as its public HTML twin.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_entity_home_projection — Get Entity Home Projection v1
PAID (requires SIGNAL plan or higher, from €29/month). Use when you need the full structured projection of an Entia Home page (identity, location, verification) for one business. Read the materializer snapshot entia.entity_home_projection.v1 for an Entia Home (claims + projection + policy). Same truth as the public ficha HTML/JSON-LD twin. Serve from R2 sibling .projection.v1.json — no ad-hoc MCP enrichment.
{
"type": "object",
"required": [
"country",
"sector",
"city",
"slug"
],
"properties": {
"city": {
"type": "string",
"pattern": "^[A-Za-z0-9-]+$",
"maxLength": 100,
"minLength": 1,
"description": "City slug (madrid, barcelona)"
},
"slug": {
"type": "string",
"pattern": "^[A-Za-z0-9-]+$",
"maxLength": 200,
"minLength": 1,
"description": "Business slug (clinica-dental-ceodent)"
},
"sector": {
"type": "string",
"pattern": "^[A-Za-z0-9-]+$",
"maxLength": 50,
"minLength": 2,
"description": "Industry slug (dental, legal, …)"
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"maxLength": 2,
"minLength": 2,
"description": "ISO 3166-1 alpha-2 (es, gb, fr)"
},
"include_render_context": {
"type": "boolean",
"default": false,
"description": "If true, keep render_context (large). Default strips it for agents."
}
}
}{
"type": "object",
"properties": {
"gate": {
"type": "string",
"description": "PUBLISH / PARTIAL / HOLD / REGISTRY_ONLY"
},
"_meta": {
"type": "object"
},
"claims": {
"type": "object"
},
"policy": {
"type": "object"
},
"schema": {
"type": "string"
},
"subject": {
"type": "object"
},
"projection": {
"type": "object"
},
"generated_at": {
"type": "string"
},
"corroboration": {
"type": "object"
},
"materializer_version": {
"type": "string"
}
},
"description": "entia.entity_home_projection.v1 snapshot: claims, corroboration gate and policy.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}search
FREE (no API key needed). Use when the user asks to find companies or businesses (ChatGPT search/fetch format); returns result ids to pass to fetch. Search the ENTIA business registry (Spain first; also EU). Wraps search_entities with the free preview mask. Returns {results:[{id,title,url}]}; pass an id to fetch.
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 500,
"minLength": 2,
"description": "Company name or keywords, optionally with a city (e.g. 'inmobiliaria Valencia')"
}
}
}{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"title": {
"type": "string"
}
}
}
}
},
"description": "ChatGPT search format over search_entities (free preview mask).",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}fetch
FREE (no API key needed). Use after search to read one company's free registry preview by its id. Fetch one company's free registry preview by the id returned by search (or a CIF/NIF, EU VAT or LEI). Wraps entity_lookup with the free preview mask. Returns {id,title,text,url,metadata}.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 500,
"minLength": 2,
"description": "Result id from search, or a CIF/NIF, EU VAT or LEI"
}
}
}{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"text": {
"type": "string"
},
"title": {
"type": "string"
},
"metadata": {
"type": "object"
}
},
"description": "ChatGPT fetch format over entity_lookup (free preview mask).",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_identity_verification — Get Identity Verification
PAID (requires SIGNAL plan or higher, from €29/month). Use when the user asks whether a business's identity has been officially verified, not just whether its CIF exists. Read fail-closed identity verification from the exact canonical HOME projection. Existing CIF does not imply official verification.
{
"type": "object",
"required": [
"country",
"sector",
"city",
"slug"
],
"properties": {
"city": {
"type": "string",
"pattern": "^[A-Za-z0-9-]+$",
"maxLength": 100,
"minLength": 1
},
"slug": {
"type": "string",
"pattern": "^[A-Za-z0-9-]+$",
"maxLength": 200,
"minLength": 1
},
"sector": {
"type": "string",
"pattern": "^[A-Za-z0-9-]+$",
"maxLength": 50,
"minLength": 2
},
"country": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"maxLength": 2,
"minLength": 2
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"canonical_url": {
"type": "string"
},
"identity_verification": {
"type": "object"
}
},
"description": "Fail-closed identity from canonical projection.",
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}Prompts
0 advertised
Resources
1 advertised
ENTIA paid verification plans — Verified business data: free preview and paid plans
Machine-readable paid tiers, current pricing and checkout links. Read this resource for options; no payment is initiated by reading.
entia://mcp/plans30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 569 ms
- 95th percentile latency
- 569 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 569 ms · metadata changed · 15 tool(s), 1 resource(s), 0 resource template(s), 0 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http entia-entity-verification-mcp https://mcp.entia.systems/mcpCodex
codex mcp add entia-entity-verification-mcp --url https://mcp.entia.systems/mcpCursor
{
"mcpServers": {
"entia-entity-verification-mcp": {
"url": "https://mcp.entia.systems/mcp"
}
}
}Cline
{
"mcpServers": {
"entia-entity-verification-mcp": {
"type": "streamableHttp",
"url": "https://mcp.entia.systems/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"entia-entity-verification-mcp": {
"type": "http",
"url": "https://mcp.entia.systems/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http entia-entity-verification-mcp https://mcp.entia.systems/mcpClaude Desktop
https://mcp.entia.systems/mcpWindsurf
{
"mcpServers": {
"entia-entity-verification-mcp": {
"serverUrl": "https://mcp.entia.systems/mcp"
}
}
}Let your agent find its tools
Find servers like ENTIA Entity Verification MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.