Normatia
AI-native platform that automates Spanish building code compliance and technical regulations for the AECO sector
Normatia
Open-source developer toolkit for Spanish building code compliance.
Main site: normatia.com API docs: docs.normatia.com API base: api.normatia.com
What is Normatia?
Normatia is a building code compliance platform for Spain's AECO sector (architecture, engineering, construction, and operations). This repository contains the open-source developer toolkit: an MCP server for AI assistants, a TypeScript SDK, API usage examples, and reusable AI skills.
MCP Server
Normatia provides a remote MCP server that gives AI assistants access to Spanish building code data, location intelligence, compliance verification, and regulatory Q&A — no installation required.
https://mcp.normatia.com/mcp
Available Tools
| Tool | Description |
|---|---|
search_locations | Search Spanish geographic locations (municipalities, provinces, autonomous communities) |
search_codes | Search building codes and regulations by topic, scope, or tag |
verify_compliance | Verify if a technical value complies with regulations for a location |
ask | Ask natural-language questions about Spanish building regulations |
Setup
Claude
Connect Normatia to claude.ai as a custom connector. Available on Free (limited to 1 connector), Pro, Max, Team, and Enterprise plans. Currently in beta.
Free, Pro and Max plans:
- Navigate to Customize > Connectors
- Click "+" then "Add custom connector"
- Enter the server URL:
https://mcp.normatia.com/mcp - Select
OAuthas authentication - Click "Add"
Team and Enterprise plans (owner):
- Navigate to Organization settings > Connectors
- Click "Add" → hover "Custom" → select "Web"
- Enter the server URL:
https://mcp.normatia.com/mcp - Select
OAuthas authentication - Click "Add"
Once added by the owner, members connect from Customize > Connectors.
After configuration, enable Normatia per conversation via the "+" button in the lower left → "Connectors".
ChatGPT
Connect Normatia to ChatGPT as a custom MCP app. Available on Free, Plus, Pro, Business, and Enterprise/Edu plans. Currently in beta.
- Enable developer mode: go to Settings → Apps → Advanced Settings and toggle Developer mode
- Go to Settings → Apps → Create
- Enter the server URL:
https://mcp.normatia.com/mcp - Select
OAuthas authentication - Click Create
Once created, enable the app in any conversation via the "+" button and select Normatia.
For Business and Enterprise/Edu plans, workspace admins must configure and publish the app from Workspace Settings → Apps before members can use it.
Prerequisites
The following clients require an API key. Get one at normatia.com/es/api. Keys use the format sk-normatia-....
Claude Desktop
Add to your config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"normatia": {
"type": "streamable-http",
"url": "https://mcp.normatia.com/mcp",
"headers": {
"Authorization": "Bearer sk-normatia-..."
}
}
}
}
Claude Code
claude mcp add normatia --transport streamable-http https://mcp.normatia.com/mcp \
-h "Authorization: Bearer sk-normatia-..."
VS Code / GitHub Copilot
Add to .vscode/mcp.json in your workspace:
{
"servers": {
"normatia": {
"type": "streamable-http",
"url": "https://mcp.normatia.com/mcp",
"headers": {
"Authorization": "Bearer sk-normatia-..."
}
}
}
}
Or add to your User Settings (JSON) for global access:
{
"mcp": {
"servers": {
"normatia": {
"type": "streamable-http",
"url": "https://mcp.normatia.com/mcp",
"headers": {
"Authorization": "Bearer sk-normatia-..."
}
}
}
}
}
Cursor
Add to Cursor MCP settings (~/.cursor/mcp.json):
{
"mcpServers": {
"normatia": {
"type": "streamable-http",
"url": "https://mcp.normatia.com/mcp",
"headers": {
"Authorization": "Bearer sk-normatia-..."
}
}
}
}
Windsurf
Add to Windsurf MCP settings:
{
"mcpServers": {
"normatia": {
"type": "streamable-http",
"url": "https://mcp.normatia.com/mcp",
"headers": {
"Authorization": "Bearer sk-normatia-..."
}
}
}
}
Zed
Add to Zed settings (~/.config/zed/settings.json):
{
"context_servers": {
"normatia": {
"transport": "streamable-http",
"url": "https://mcp.normatia.com/mcp",
"headers": {
"Authorization": "Bearer sk-normatia-..."
}
}
}
}
Any MCP Client
Use these connection details with any MCP-compatible client:
| Setting | Value |
|---|---|
| Transport | streamable-http |
| URL | https://mcp.normatia.com/mcp |
| Auth header | Authorization: Bearer sk-normatia-... |
For full setup instructions for 30+ MCP clients, see docs.normatia.com/mcp.
Example Prompts
Once connected, try these prompts in your AI assistant:
- "Search for municipalities named Sevilla"
- "What climate zone is Madrid in?"
- "What are the fire resistance requirements for residential structures?"
- "Verify if a wall with U-value 0.35 W/m²K is compliant in Sevilla"
- "Show me the latest version of the CTE DB-HE"
TypeScript SDK
npm install normatia
import { NormatiaClient } from 'normatia';
const client = new NormatiaClient({ apiKey: 'sk-normatia-...' });
const location = await client.getLocation('ES-41091');
console.log(location.tech_data.climate_zone); // "B4"
See packages/sdk-typescript/README.md for full documentation.
Examples
| Directory | Description |
|---|---|
| examples/curl | cURL examples for all main API endpoints |
| examples/python | Python examples using httpx |
| examples/typescript | TypeScript examples using the SDK |
AI Skills
The skills directory contains reusable system prompts for AI agents working with Normatia:
- Building Codes — Expert navigation of Spanish regulations (CTE, RITE, LOE)
- Compliance — Structured compliance verification workflows
- Location-Aware — Geography-contextual regulatory guidance
API Overview
| Endpoint | Method | Description |
|---|---|---|
/api/v1/location/search | GET | Search geographic locations |
/api/v1/location/{geo_id} | GET | Get location detail + climate data |
/api/v1/codes/search | GET | Search building codes |
/api/v1/codes/{slug} | GET | Get code detail |
/api/v1/codes/{slug}/versions | GET | List code versions |
/api/v1/codes/{slug}/versions/{version} | GET | Get version detail + sections |
/api/v1/ask | POST | AI-powered regulatory Q&A |
/api/v1/verify | POST | Compliance verification |
Documentation
Full API reference and integration guides at docs.normatia.com.
Contributing
Contributions are welcome. Please read CONTRIBUTING.md before opening an issue or pull request.
License
MIT — see LICENSE.
Servidores relacionados
Kone.vc
patrocinadorMonetize your AI agent with contextual product recommendations
文颜 MCP Server
A Markdown formatting tool to apply themes and publish articles to WeChat Official Accounts.
Harvest MCP Server
Manage time tracking, projects, clients, and tasks using the Harvest API.
Portfolio Tracker
Exposes portfolio tracking tools for AI clients.
Claw2Immich
claw2immich is a Python MCP (Model Context Protocol) server that exposes selected Immich Picture App,
AIQBee
Connect AI assistants to your Aiqbee knowledge graph via MCP.
Asana
Interact with the Asana API to manage tasks, projects, and workspaces.
ClickUp MCP Server
Apify-hosted MCP server for ClickUp with 20 tools. Tasks, spaces, folders, lists, views, docs, and custom fields. No local setup needed.
Bitwarden/Vaultwarden MCP Server
An MCP server that provides Bitwarden/Vaultwarden connectivity
Notion
Notion official MCP server
Personal Finance MCP
Personal finance management with expense tracking, budget monitoring, and spending analysis