Norric
REMOTE · MCP.NORRIC.IO · SCANNED OCT 6
Swedish B2B intelligence for AI agents: insolvency risk, procurement, BRF health and more.
Available components
Recent critical change
TLS certificate (18 Sept 2026). See the changelog before you install this server.
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. How we score → Why this is hard to score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- 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. See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability73
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 4997 tokens (~118/item across 42 items; 42 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management53
- Stability observed for 16 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage71
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 0% of tool parameters carry a description.Fail
- Structured output schemas are declared (69% of tools); any adoption earns full credit.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "norric_watch_delete_v1" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 43 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Norric MCP server?
Norric is a hosted endpoint at https://mcp.norric.io/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.
remote · mcp.norric.io
claude mcp add --transport http gucceed-norric-mcp 'https://mcp.norric.io/mcp'
{
"mcpServers": {
"gucceed-norric-mcp": {
"url": "https://mcp.norric.io/mcp"
}
}
} {
"servers": {
"gucceed-norric-mcp": {
"type": "http",
"url": "https://mcp.norric.io/mcp"
}
}
} [mcp_servers.gucceed-norric-mcp] url = "https://mcp.norric.io/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"gucceed-norric-mcp": {
"type": "remote",
"url": "https://mcp.norric.io/mcp",
"enabled": true
}
}
} openclaw mcp add gucceed-norric-mcp --url 'https://mcp.norric.io/mcp' --transport streamable-http
mcp_servers:
gucceed-norric-mcp:
url: "https://mcp.norric.io/mcp" {
"McpServers": {
"gucceed-norric-mcp": {
"Transport": "http",
"Url": "https://mcp.norric.io/mcp"
}
}
} assistant mcp add gucceed-norric-mcp -t streamable-http -u 'https://mcp.norric.io/mcp'
{
"mcpServers": {
"gucceed-norric-mcp": {
"type": "http",
"url": "https://mcp.norric.io/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 6 Oct 26 +1
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 4 Oct 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 3 Oct 26 +1
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 2 Oct 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 1 Oct 26 +1
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 30 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 29 Sept 26 +1
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 6 Oct 2026 · Probed https://mcp.norric.io/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.norric.io | CN=YR2,O=Let's Encrypt,C=US | 18 Sept 2026 | 17 Dec 2026 | RSA 2048 | SHA256-RSA | 54d07a4a1949c013be5b5af02652c311c0d |
| SANs: mcp.norric.io | ||||||
| CN=YR2,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | 4ebd24947e24d394802d84a52fd5b319 |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.norric.io. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| io. | present | 57355 | 8 | Verified |
| norric.io. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Challenged, unverified
The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.
| Result | Challenged, unverified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
Protected resource metadata
| Retrieved | No |
|---|---|
| Problem | no_resource_metadata |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.norric.io/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.norric.io/mcp | HTTPS enforced | 301 | https://mcp.norric.io/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
danish_company_changes_v1 ~169
Return a normalized feed of source-backed Danish company registry changes over the last 1-30 days: new registrations, closures/ophoer, renames, address changes, and mergers when those facts exist in the CVR data (bulk baseline diffs plus CVR_Events deltas). Each event includes canonical identity, before/after fields, source freshness, and evidence links. The tool never equates Norric first-seen time with legal registration and never infers a merger from a rename. Filter by event type or CVR number; up to 100 events. Source: Datafordeler CVR, CC BY 4.0.
| Name | Type | Req | Description |
|---|---|---|---|
| cvr_number | – | – | – |
| days | integer | – | – |
| event_types | – | – | – |
| limit | integer | – | – |
No output schema declared.
No examples provided.
danish_company_verify_v1 ~201
Verify a Danish company against official CVR registry data. One CVR number (8 digits, e.g. 54562519) or company name in, one normalized cited answer out: canonical identity (name, CVR number, virksomhedsform legal form, registered address, hovedbranche industry), legal status (active/ceased with dates and bitemporal registration timestamps), the latest recorded CVR registry changes, and per-source observation timestamps with evidence links. Danish codes and labels are canonical as issued by Erhvervsstyrelsen - never translated. verified=true means the CVR number exists in the CVR registry mirror and is currently active. Fields Norric does not track (VAT/moms, employer registration) return status 'not_tracked' - never a fabricated value. Source: Datafordeler CVR fildownload + CVR_Events, CC BY 4.0.
| Name | Type | Req | Description |
|---|---|---|---|
| cvr_or_name | string | yes | – |
No output schema declared.
No examples provided.
estonian_company_changes_v1 ~80
Return source-backed Estonian company changes over 1-30 days from daily e-Ariregister snapshot diffs. Never treats Norric first-seen time as registration. CC BY 4.0.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | – |
| event_types | – | – | – |
| limit | integer | – | – |
| registry_code | – | – | – |
No output schema declared.
No examples provided.
estonian_company_verify_v1 ~73
Verify an Estonian company against the official e-Ariregister daily open data. Returns identity, address, legal form, industry, registry status, recent source-backed changes and freshness. No person or beneficial-owner data. CC BY 4.0.
| Name | Type | Req | Description |
|---|---|---|---|
| registry_code_or_name | string | yes | – |
No output schema declared.
No examples provided.
finnish_company_changes_v1 ~78
Return source-backed Finnish company changes over 1-30 days from daily PRH/YTJ snapshot diffs. Never treats Norric first-seen time as registration. CC BY 4.0.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id | – | – | – |
| days | integer | – | – |
| event_types | – | – | – |
| limit | integer | – | – |
No output schema declared.
No examples provided.
finnish_company_verify_v1 ~70
Verify a Finnish company against official PRH/YTJ daily open data. Returns identity, address, legal form, industry, registry status, recent source-backed changes and freshness. No person or beneficial-owner data. CC BY 4.0.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id_or_name | string | yes | – |
No output schema declared.
No examples provided.
french_company_changes_v1 ~78
Return source-backed French company changes over 1-30 days from INSEE Base Sirene snapshot diffs. Never treats Norric first-seen time as registration. Licence Ouverte 2.0.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | – |
| event_types | – | – | – |
| limit | integer | – | – |
| siren | – | – | – |
No output schema declared.
No examples provided.
french_company_verify_v1 ~84
Verify a French company against the official INSEE Base Sirene mirror. Returns identity, address, legal form, industry, registry status, recent source-backed changes and freshness. Non-diffusible natural persons (Art. A123-96 code de commerce) are excluded. Licence Ouverte 2.0.
| Name | Type | Req | Description |
|---|---|---|---|
| siren_or_name | string | yes | – |
No output schema declared.
No examples provided.
kreditvakt_bankruptcy_status_v1 ~86
Return Bolagsverket konkurs (bankruptcy) filing status for a Swedish company. Shows whether konkurs has been filed, the filing date, current status (ansökt | beslutad | avslutad), and whether the company is still active. This is a binary verification tool — use score_company_v1 for predictive risk.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
kreditvakt_batch_score_v1 ~97
Score a portfolio of Swedish companies for insolvency risk in one call. Maximum 500 organisation numbers per request. Returns each company's score, verdict, primary risk signal, and debt status. Includes a portfolio-level risk summary: % by risk tier, weighted average score, estimated SEK exposure for high-risk entries. This is the primary tool for factoring companies reviewing credit exposure at scale.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnrs | array | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
kreditvakt_contagion_v1 ~154
Supply-chain contagion analysis for a HIGH or CRITICAL Swedish company. Returns the companies most likely to have supply-chain exposure to the given company, based on shared procurement sector and geographic proximity (kommunkod → county fallback). Use after identifying a HIGH/CRITICAL company via kreditvakt_score_company_v1. Reads from the contagion_peers cache (refreshed every 4h); recomputes on cache miss. Always returns the probabilistic disclaimer in warnings — these are likely relationships, not verified supply chains. orgnr accepts format with or without dash. limit defaults to 10, max 25.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
kreditvakt_debt_signals_v1 ~94
Return Skatteverket restanslängd debt data for a Swedish company. Shows outstanding tax debt amount in SEK, publication date, number of payment remarks, and F-skatt (sole trader tax registration) status. This signal is also consumed by Norric SIGNAL's competitor risk analysis — it is the shared data layer between Kreditvakt and SIGNAL.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
kreditvakt_score_company_v1 ~191
Score the insolvency risk of a Swedish company using four independent signal sources: Skatteverket restanslängd (tax debt), Kronofogden betalningsförelägganden (payment orders), Bolagsverket pending ärenden (leading indicator — days before registration), and Bolagsverket konkursregister. Returns risk_score [0–20, ascending=worse], risk_band [1–5], risk_tier (HEALTHY|WATCH|ELEVATED|HIGH|CRITICAL), and full signal breakdown. score_source='live' means DB-backed signals; 'no_signals' means the orgnr is in norric_entities but no current risk data exists (risk_score will be null). stale_data=true means freshness > 48h. Accepts a Swedish organisation number (e.g. 556000-1234).
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
No output schema declared.
No examples provided.
norric_company_profile_v1 ~87
Return a unified Norric intelligence profile for a Swedish company. Combines: Kreditvakt insolvency score, Vigil lifecycle stage, and Vigil ownership velocity into one call. Use this when you need a complete picture of a company across all Norric products. orgnr is the canonical cross-product identifier — all Norric tools accept it.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_contagion_map_v1 ~154
Supply-chain blast-radius shape for a HIGH or CRITICAL company, sized for the dashboard visualisation. Returns source company (with lat/lng), concentric rings of peers grouped by match_reason (same_sector_kommunkod = ring 1, same_sector_county = ring 2), each peer enriched with its own lat/lng and risk score, plus an aggregate summary. Reads the cached contagion_peers table (refreshed every 4h). Empty rings when no peers exist — caller should fall back to a non-spatial view. Same disclaimer as kreditvakt_contagion_v1: peers are probabilistic, not verified.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_data_freshness_v1 ~162
Returns ingestion freshness for all active Norric data pipelines, per agency. Used by: - Agents deciding whether Norric data is current enough to act on (a Claude Code agent should check this before triggering a workflow) - Compliance dashboards monitoring pipeline health - Norric internal ops alerting (stale pipeline = data quality incident) Args: agencies Optional list of agency IDs to filter. If omitted, returns all active pipelines. e.g. ["bolagsverket", "kronofogden"] Returns: NorricResponse with data containing: pipelines Per-agency freshness records summary Aggregate health summary checked_at UTC timestamp of this freshness check
| Name | Type | Req | Description |
|---|---|---|---|
| agencies | – | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| cached | boolean | – | – |
| confidence | number | – | – |
| data | – | – | – |
| error | – | – | – |
| provenance | – | – | Per-record data lineage. Present for SIGNAL, Kreditvakt, and Sigvik records ingested after provenance layer deployment. Null for pre-provenance records — do not treat as error. |
| source | array | – | – |
| success | boolean | yes | – |
| tool | string | yes | – |
| ts | string | – | – |
No examples provided.
norric_explain_score_v1 ~223
Returns a human-readable explanation of how a specific score was computed, with full source provenance. Intended for compliance teams and regulated workflow integrations (e.g. a bank using Kreditvakt scores in credit decisions). Args: tool_name The Norric tool that produced the score. e.g. "kreditvakt_score_company_v1" record_id The entity identifier for the record. For Kreditvakt/Sigvik: orgnr (10-digit) For SIGNAL: municipality notice ID include_raw_refs If True, includes raw source document references in the response. Set False to reduce response size. Returns: NorricResponse with data containing: explanation Natural language explanation of the score pipeline_steps Ordered list of scoring pipeline steps provenance_chain Full provenance records for each source compliance_summary Structured summary for EU AI Act documentation
| Name | Type | Req | Description |
|---|---|---|---|
| include_raw_refs | boolean | – | – |
| record_id | string | yes | – |
| tool_name | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| cached | boolean | – | – |
| confidence | number | – | – |
| data | – | – | – |
| error | – | – | – |
| provenance | – | – | Per-record data lineage. Present for SIGNAL, Kreditvakt, and Sigvik records ingested after provenance layer deployment. Null for pre-provenance records — do not treat as error. |
| source | array | – | – |
| success | boolean | yes | – |
| tool | string | yes | – |
| ts | string | – | – |
No examples provided.
norric_score_v1 ~144
Full intelligence package for a Swedish company: identity + geography (with lat/lng), risk score (band/tier/percentile/delta_7d/trajectory), decomposed signal flags (restanslängd, betalningsförelägganden, konkursansökan, F-skatt), insolvency timeline (onset date, days elapsed/remaining vs ~210-day median), supply-chain contagion preview, and active SIGNAL contracts. Single round-trip payload for the intelligence dashboard score card. Returns null for risk_* fields when score_source='no_signals'. Accepts orgnr with or without dash.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_search_v1 ~116
Search the Norric monitored universe by organisation number prefix or company name prefix. Returns each match with its current risk score / band / tier when available. Use to resolve a typed query in the dashboard search bar to a concrete orgnr before calling norric_score_v1. Heuristic: if the query is digits + dashes, prefix-match orgnr_display; otherwise prefix-match name (case-insensitive). limit defaults to 10, max 50.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| q | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_status_v1 ~62
Return the live status of all Norric MCP products and their data pipelines. Shows which products are live, which are in build, and the last successful data ingestion timestamp for each source. Use this to understand what data is currently reliable before acting on it.
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
norric_watch_create_v1 ~253
Create a Norric Watch: push a signed webhook to callback_url when a watched company's Kreditvakt data changes. Args: event_types: one or more of: company.risk_tier_changed, company.score_changed, company.debt_signal_new, company.bankruptcy_status_changed callback_url: HTTPS endpoint that receives signed POSTs (X-Norric-Signature: t=...,v1=... — HMAC-SHA256, like Stripe) orgnrs: Swedish org numbers to watch (e.g. ["556012-3456"]) min_score_delta: minimum 0-20 risk_score movement that fires company.score_changed (default 3) description: free-text label for this watch Returns the watch object including signing_secret — shown ONCE. Events emit after the daily scoring beat (~05:30 Europe/Stockholm); delivery is at-least-once, dedupe on X-Norric-Event-Id.
| Name | Type | Req | Description |
|---|---|---|---|
| callback_url | string | yes | – |
| description | – | – | – |
| event_types | array | yes | – |
| min_score_delta | integer | – | – |
| orgnrs | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_watch_delete_v1 ~39
Delete a watch and its event history. Immediate; no delivery attempt is made after deletion.
| Name | Type | Req | Description |
|---|---|---|---|
| watch_id | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_watch_events_v1 ~97
Recent events for a watch — delivery replay/audit. Includes dead-lettered events (status "dead", kept 30 days). Standard tier sees 7 days of history; Compliance sees full history. Args: watch_id: watch_... id limit: max events to return (1-200, default 50)
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| watch_id | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norric_watch_list_v1 ~65
List your API key's watches with delivery stats (events_sent, last_delivery_at, consecutive_failures) and status (active/paused). A watch auto-pauses after 50 consecutive failed deliveries; resume with norric_watch_update_v1(status="active").
Input schema present but exposes no named parameters.
Structured output declared, but exposes no named fields.
No examples provided.
norric_watch_update_v1 ~164
Update a watch. Only the fields you pass change. Args: watch_id: watch_... id from create/list event_types: replacement event type list orgnrs: replacement watched-orgnr list min_score_delta: replacement score-delta threshold (1-20) callback_url: replacement HTTPS callback URL description: replacement label status: "paused" to stop delivery, "active" to resume (resume resets the consecutive-failure counter that auto-pauses at 50)
| Name | Type | Req | Description |
|---|---|---|---|
| callback_url | – | – | – |
| description | – | – | – |
| event_types | – | – | – |
| min_score_delta | – | – | – |
| orgnrs | – | – | – |
| status | – | – | – |
| watch_id | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
norwegian_company_changes_v1 ~99
Return source-backed Norwegian company registry changes over 1-30 days: registrations, closures, renames, address changes, bankruptcy and liquidation flags from daily bulk diffs and Brønnøysund update deltas. Never treats Norric first-seen time as registration. NLOD 2.0.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | – |
| event_types | – | – | – |
| limit | integer | – | – |
| org_number | – | – | – |
No output schema declared.
No examples provided.
norwegian_company_verify_v1 ~88
Verify a Norwegian organisation against official Brønnøysund Enhetsregisteret data. A 9-digit organisation number or company name returns canonical identity, address, legal form, industry, active, bankruptcy and liquidation flags, recent source-backed changes and freshness. No role/person or beneficial-owner data. NLOD 2.0.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr_or_name | string | yes | – |
No output schema declared.
No examples provided.
signal_contract_expiry_alerts_v1 ~100
Return contracts expiring within N days across all 290 Swedish municipalities for a given vertical. Sorted by days until expiry ascending. Each alert includes the incumbent supplier name, contract value, and a Kronofogden risk flag indicating if the incumbent has financial distress. This is displacement-window intelligence: expiring contracts are the highest-conversion procurement opportunities.
| Name | Type | Req | Description |
|---|---|---|---|
| days_ahead | integer | – | – |
| vertikal | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
signal_municipality_briefing_v1 ~93
Generate a full Swedish-language call briefing for a municipality and vertical. Contains: what happened (facts), why it matters commercially, optimal call window, 3 ready-to-use talking points, active signals summary, and incumbent risk flag. Designed for direct use by sales reps and autonomous SDR agents before dialling.
| Name | Type | Req | Description |
|---|---|---|---|
| kommunkod | string | yes | – |
| vertikal | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
signal_score_municipality_v1 ~119
Score the procurement readiness of a Swedish municipality for a given vertical. Combines 7 signal components (IVO decisions, protocol signals, budget motions, contract expiries, SCB demographics, Kronofogden incumbent risk, SKR benchmarks) into a 0-100 composite score. Scores above 70 indicate actionable procurement intent — contact this week. Scores 50-70 are warm — contact this month. Below 50, monitor only.
| Name | Type | Req | Description |
|---|---|---|---|
| kommunkod | string | yes | – |
| vertikal | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
signal_sweden_pulse_v1 ~91
Return the national Swedish procurement activity index across all 290 municipalities. A single 0-100 'temperature' of public procurement activity right now. Historical baseline is ~35. Values above 60 indicate elevated national activity. Optionally filter to a specific vertical or get the cross-vertical aggregate. Useful for market timing, investment research, and portfolio-level intelligence.
| Name | Type | Req | Description |
|---|---|---|---|
| vertikal | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
signal_weekly_call_list_v1 ~105
Return the ranked list of Swedish municipalities to contact this week for a given vertical. Sorted by composite procurement score descending. This is the core Norric SIGNAL product output — the Monday morning call list for sales teams and autonomous SDR agents. Each entry includes the primary signal, suggested call window, and opening talking point. Maximum 50 results. Updated every Monday at 06:00 CET.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| vertikal | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
sigvik_brf_avgift_v1 ~102
Return the monthly avgift (housing fee) history, trend, and year-on-year delta for a Swedish BRF. Avgift trend is one of the strongest predictors of BRF financial stress — rising avgift indicates the association is covering costs by increasing member fees. Returns: current_kr, 5-year history, YoY delta %, trend label (rising|stable|falling).
| Name | Type | Req | Description |
|---|---|---|---|
| brf_id | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
sigvik_brf_flags_v1 ~93
Return active risk flags for a Swedish BRF. Flags: renovation_risk (major upcoming costs), ekonomisk_risk (financial distress), eu_2033_energy_deadline (E/F/G energy class must reach D by 2033 — renovation pressure within 7 years). Each flag has a severity level: low | medium | high | critical.
| Name | Type | Req | Description |
|---|---|---|---|
| brf_id | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
sigvik_score_brf_v1 ~126
Score the financial health and renovation intent of a Swedish BRF (bostadsrättsförening / housing cooperative). Combines avgift trend, annual report analysis, renovation risk, and EU energy class (E/F/G class must reach D by 2033) into a 0-100 intent score. Returns confidence_label (Starkt signal / Måttlig signal / Tidig indikation), scored_at timestamp, and data_freshness_hours. stale_data=true if score older than 48h.
| Name | Type | Req | Description |
|---|---|---|---|
| brf_id | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
siteloop_pipeline_status_v1 ~77
Return the current state of the SiteLoop pipeline across all active cities. Shows leads at each funnel stage: scanned → site_built → sms_sent → clicked → activated → churned. Includes conversion rates and MRR by city. Use this to monitor the autonomous pipeline health without opening a dashboard.
| Name | Type | Req | Description |
|---|---|---|---|
| city | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
siteloop_submit_lead_v1 ~129
Submit a business lead into the SiteLoop pipeline programmatically. This is the primary integration point for Norric Vigil — Vigil detects new companies, SiteLoop receives them and runs site generation + SMS outreach automatically. The lead enters the queue and proceeds through the pipeline without any human intervention. This is a mutating tool — every call is audited.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | – |
| business_name | string | yes | – |
| category | string | yes | – |
| – | – | – | |
| orgnr | – | – | – |
| phone | string | yes | – |
| source | string | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
swedish_company_changes_v1 ~143
Return a normalized feed of source-backed Swedish company registry changes over the last 1-30 days: new registrations, closures/deregistrations, renames, address changes, and mergers when those facts exist in the Bolagsverket snapshot data. Each event includes canonical identity, before/after fields, source freshness, and evidence links. The tool never equates Norric first-seen time with legal registration and never infers a merger from a rename. Filter by event type or orgnr; up to 100 events.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | – |
| event_types | – | – | – |
| limit | integer | – | – |
| orgnr | – | – | – |
No output schema declared.
No examples provided.
swedish_company_verify_v1 ~192
Verify a Swedish company against official registry data. One orgnr (556000-1234) or company name in, one normalized cited answer out: canonical identity (name, orgnr, orgform, registered address), legal status (active/deregistered with date), F-tax registration where tracked, insolvency flags (konkurs filings, Kronofogden payment orders, tax-debt listing), the cached Kreditvakt risk band when present, the latest recorded Bolagsverket registry changes, and per-source observation timestamps with evidence links. verified=true means the orgnr exists in the Bolagsverket registry mirror and is currently active. Fields Norric does not track (VAT/moms, employer registration) return status 'not_tracked' — never a fabricated value. Use this as the first diligence call before kreditvakt_score_company_v1.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr_or_name | string | yes | – |
No output schema declared.
No examples provided.
vigil_lifecycle_stage_v1 ~90
Classify a Swedish company's lifecycle stage using three signals: F-skatt registration date, building permit filings, and Bolagsverket ownership change velocity. Returns: early | growth | scaling | distress — with confidence and signal breakdown. Primary use: identifying companies that just started (early stage) so SiteLoop can reach them before any competitor knows they exist.
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
vigil_new_companies_v1 ~92
Return companies newly registered in a Swedish municipality — detected via F-skatt (sole trader) registrations at Skatteverket. These are companies that just started and almost certainly have no website. Primary feed for SiteLoop's automated outreach pipeline. Results include orgnr, registration date, business category, and phone where available.
| Name | Type | Req | Description |
|---|---|---|---|
| days_back | integer | – | – |
| kommunkod | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
vigil_ownership_velocity_v1 ~77
Return the ownership change rate for a Swedish company over the last 12 months. High velocity signals acquisition, restructuring, or distress. This signal feeds both Norric Kreditvakt (distress correlation) and Norric SIGNAL (competitor risk component when an incumbent supplier is changing hands).
| Name | Type | Req | Description |
|---|---|---|---|
| orgnr | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
What is the Norric MCP server?
Norric is an MCP server listed in the public MCP registry as io.github.gucceed/norric-mcp. Swedish B2B intelligence for AI agents: insolvency risk, procurement, BRF health and more. This page covers its hosted endpoint (https://mcp.norric.io/mcp).
Is the Norric MCP server safe to use?
Norric scores 78 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 Norric MCP server expose?
Norric exposes 42 tools: signal_score_municipality_v1, signal_weekly_call_list_v1, signal_municipality_briefing_v1, signal_contract_expiry_alerts_v1, signal_sweden_pulse_v1, and 37 more. Their descriptions and schemas cost roughly 4,837 tokens of context every time the server is loaded.
Does the Norric MCP server require authentication?
Yes. Norric 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 Norric MCP server still maintained?
Norric is still listed as active in the MCP registry. We last reached this channel on 6 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.