Leadgen ONRC Romania

Romania company registry: search 4.2M businesses by name/CUI, directors, financials.

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
73%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,271Tokens (tool definitions)
~571 BTypical response size
Moderate attention impact (0.99% 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": {
    "leadgen-onrc": {
      "url": "https://leadgen-mcp.adrianhomelab.com/mcp"
    }
  }
}

Remote endpoints

https://leadgen-mcp.adrianhomelab.com/mcpstreamable-http

What it can do

Tool inventory

Tools (11)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢lookup_business(query, max_results)

Look up a Romanian company by name or CUI (tax code) in the official ONRC registry of 4.2M firms. Name search is diacritic-insensitive, so pass plain ASCII ('paval' finds 'PAVAL'); an all-digit query matches the CUI. The natural first call for a Romanian company question. max_results caps the rows returned.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "max_results": {
      "default": 10,
      "title": "Max Results",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "lookup_businessArguments"
}
🟢lookup_by_category(topic, county, max_results)

Find companies by what they do rather than by name: a curated topic ('artificial intelligence', 'cybersecurity', 'climate', 'software', 'retail') expands to the CAEN activity codes that define it. Optionally narrow the result to a single county.

Input Schema

{
  "type": "object",
  "properties": {
    "topic": {
      "title": "Topic",
      "type": "string"
    },
    "county": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "County"
    },
    "max_results": {
      "default": 10,
      "title": "Max Results",
      "type": "integer"
    }
  },
  "required": [
    "topic"
  ],
  "title": "lookup_by_categoryArguments"
}
🟢lookup_director(name, max_results)

Find Romanian companies by the name of a director or legal representative, from the ONRC representatives table. Diacritic-insensitive ('popescu' matches 'POPESCU'). Use this when you know a person rather than a firm.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "title": "Name",
      "type": "string"
    },
    "max_results": {
      "default": 10,
      "title": "Max Results",
      "type": "integer"
    }
  },
  "required": [
    "name"
  ],
  "title": "lookup_directorArguments"
}
🟢extract_contacts(website, max_pages)

Crawl a company website and extract emails, phone numbers and social profiles. Accepts a bare domain or a full URL; max_pages (1-20, default 5) bounds the crawl.

Input Schema

{
  "type": "object",
  "properties": {
    "website": {
      "title": "Website",
      "type": "string"
    },
    "max_pages": {
      "default": 5,
      "title": "Max Pages",
      "type": "integer"
    }
  },
  "required": [
    "website"
  ],
  "title": "extract_contactsArguments"
}
🟢enrich_company(cui, website, max_pages)

A whole-firm profile in one call: the ONRC registry record plus the contacts discovered on that firm's website, each labelled with a confidence and a source. Prefer this over lookup_business followed by extract_contacts when you want everything about one company. cui is its tax code; website overrides the registered one; max_pages bounds the crawl.

Input Schema

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    },
    "website": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Website"
    },
    "max_pages": {
      "default": 5,
      "title": "Max Pages",
      "type": "integer"
    }
  },
  "required": [
    "cui"
  ],
  "title": "enrich_companyArguments"
}
🟢lookup_domain(domain, include_dns, include_security)

WHOIS plus DNS records (A, MX, NS, TXT) and an SPF/DMARC email-security audit for a domain. Use it to profile a company's web estate or check its email posture. include_dns and include_security toggle the two halves.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "title": "Domain",
      "type": "string"
    },
    "include_dns": {
      "default": true,
      "title": "Include Dns",
      "type": "boolean"
    },
    "include_security": {
      "default": true,
      "title": "Include Security",
      "type": "boolean"
    }
  },
  "required": [
    "domain"
  ],
  "title": "lookup_domainArguments"
}
⚪lookup_financials(cui)

Annual financial statements for a Romanian company from Ministry of Finance filings: revenue, profit, headcount and balance-sheet lines in RON, for the latest fiscal year on record. Resolve the firm with lookup_business first if you only have a name.

Input Schema

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "lookup_financialsArguments"
}
⚪lookup_financial_ratios(cui)

Derived financial intelligence for a Romanian company: year-over-year revenue trend and growth, headcount trajectory, net margin, and liquidity/distress signals, distilled into a single verdict ('growing', 'stable' or 'distressed'). Use it for interpretation; use lookup_financials for the raw figures.

Input Schema

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "lookup_financial_ratiosArguments"
}
⚪watch_company(cui)

Register a company (by CUI) to monitor. Stores a fingerprint of its current registry record as the baseline; poll_watchlist then reports changes between monthly ONRC snapshots - a new director, a new CAEN activity, an address or status change.

Input Schema

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "watch_companyArguments"
}
⚪watch_caen(code, county)

Watch a CAEN activity code, optionally scoped to one county, for newly registered firms. A registration-date cutoff is the baseline: only firms registered after it are reported, and poll_watchlist slides the cutoff forward so each new firm surfaces once.

Input Schema

{
  "type": "object",
  "properties": {
    "code": {
      "title": "Code",
      "type": "string"
    },
    "county": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "County"
    }
  },
  "required": [
    "code"
  ],
  "title": "watch_caenArguments"
}
⚪poll_watchlist

Collect everything the watch tools have found: call it to drain the changeset for every watch owned by your API key. Company watches return an 'updated' entry with the changed fields; CAEN and county watches return the 'new' firms registered since the last poll.

Input Schema

{
  "type": "object",
  "properties": {},
  "title": "poll_watchlistArguments"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded11 tools
verifiedversion not recorded11 tools