cuisor.ro

Romanian company register: identity, filed financials, procurement, court records by name or CUI.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
73%
命名质量
97%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,085token 数(工具定义)
~808 B典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.63%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "cuisor": {
      "url": "https://cuisor.ro/mcp"
    }
  }
}

远程端点

https://cuisor.ro/mcpstreamable-http

它能做什么

工具清单

工具(12)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢search_companies(query, limit)

Resolve a company name or CUI to candidate companies. Use this first whenever the user names a company rather than giving its CUI. Returns at most 50 candidates, active companies first, largest turnover first. Romanian company names collide heavily, so show the user the candidates rather than assuming the first is right. An unquoted query matches every name containing the words (mina srl: 1015 companies); wrap a name you already know in double quotes to get only the companies called that ("mina srl": 14). Case, diacritics and SRL/S.R.L. all fold. Quote a name, not a CUI.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "search_companies_toolArguments"
}
🟢get_company(cui, include)

Identity, status, address, activity and headline figures for one company by CUI. Slim by default. Pass include=['financials','procurement','change_history','peers','same_address'] for more. Carries `as_of` dates: the register and ANAF are refreshed on different schedules. Data: the Romanian company register (~4M companies) with filed financial statements, ANAF fiscal status, public procurement awards, and legal representatives. Amounts are in lei (RON). Not real-time: every payload states the age of the data it came from.

输入模式

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    },
    "include": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Include"
    }
  },
  "required": [
    "cui"
  ],
  "title": "get_company_toolArguments"
}
🟢get_financials(cui)

Every filed financial year for one company: turnover, profit (signed — negative is a loss), employees, and the full balance sheet, all in lei. `latest_filed_year` says how recent the filings go, so a year with no row reads as 'not filed yet' rather than 'no data'.

输入模式

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "get_financials_toolArguments"
}
🟢get_procurement(cui, role)

Public procurement (SEAP) awards for one company: contracts it won, and contracts it granted as a contracting authority. Bounded to the 200 most recent per side; `total` reports the true count, which can be far larger.

输入模式

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    },
    "role": {
      "default": "both",
      "title": "Role",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "get_procurement_toolArguments"
}
🟢get_officers(cui)

Legal representatives and administrators of one company. This is personal data: it requires an API key, every call is recorded against that key, and it is never available anonymously. `sources_present` says which registers contributed, so an empty list means 'none on record from these sources', not 'this company has no officers'.

输入模式

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "get_officers_toolArguments"
}
🟢get_legal(cui)

Court dockets (portal.just.ro) and BPI publications for one company, by CUI. Covers roughly the last three years, not a complete litigation history — it answers whether a company is in court now or recently, not whether it has ever been sued. Includes ambiguous matches the public website never shows: a docket whose party name is shared by more than one company in the register, fanned out one row per candidate CUI. No co-party names, no outcome or merits.

输入模式

{
  "type": "object",
  "properties": {
    "cui": {
      "title": "Cui",
      "type": "string"
    }
  },
  "required": [
    "cui"
  ],
  "title": "get_legal_toolArguments"
}
🟢resolve_caen(query, limit)

Resolve free text like 'coffee shops' or 'car repair' to CAEN activity codes. ALWAYS call this before filtering by activity — do not guess a CAEN code. More than half the official nomenclator is obsolete CAEN Rev.1 with zero companies, and those are exactly the entries whose descriptions match the obvious word, so a guessed code commonly returns nothing for a question with thousands of answers. Show the user what was matched.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "resolve_caen_toolArguments"
}
🟢list_companies(caen, caen_query, cui, judet, status, ...)

List companies matching a filter, largest turnover first, at most 100 per page. Pass caen_query for free text ('coffee shops') or caen for explicit codes; judet accepts 'Bucharest', 'Bucuresti' or 'Bucureşti'; cui takes up to 100 comma-separated CUIs. Filters compose, so 'restaurants registered in Cluj last week' is one call. For newly registered companies pass sort='registered_desc' with registered_after — the default turnover order puts them behind every company that has ever filed a figure. Check register.data_through in the response before reporting an empty result: the register is a monthly ONRC snapshot and holds nothing registered after that date. Use cursor to page. If you want a count, an average or a total, use company_stats instead — do not page through companies to compute one.

输入模式

{
  "type": "object",
  "properties": {
    "caen": {
      "default": "",
      "title": "Caen",
      "type": "string"
    },
    "caen_query": {
      "default": "",
      "title": "Caen Query",
      "type": "string"
    },
    "cui": {
      "default": "",
      "title": "Cui",
      "type": "string"
    },
    "judet": {
      "default": "",
      "title": "Judet",
      "type": "string"
    },
    "status": {
      "default": "",
      "title": "Status",
      "type": "string"
    },
    "registered_after": {
      "default": "",
      "title": "Registered After",
      "type": "string"
    },
    "registered_before": {
      "default": "",
      "title": "Registered Before",
      "type": "string"
    },
    "min_turnover": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Min Turnover"
    },
    "min_employees": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Min Employees"
    },
    "sort": {
      "default": "turnover_desc",
      "title": "Sort",
      "type": "string"
    },
    "limit": {
      "default": 25,
      "title": "Limit",
      "type": "integer"
    },
    "cursor": {
      "default": "",
      "title": "Cursor",
      "type": "string"
    }
  },
  "title": "list_companies_toolArguments"
}
🟢company_stats(metric, agg, group_by, year, years, ...)

Compute ONE number over a filtered population of companies — count, sum, avg, median, p25, p75, min or max. Prefer this over listing companies and doing the arithmetic yourself: it is one call instead of dozens, and it is exact. metric: net_turnover_ron, net_profit_ron, employees, sales_per_employee_ron, profit_margin_pct, company_count, age_years. group_by: year, caen, judet, status, founded_year — use group_by='year' with years='2019-2024' to get a time series you can chart. Always report `coverage.rows_with_metric` alongside the answer: it is routinely about half of `coverage.matched_companies`, because many companies never filed the figure.

输入模式

{
  "type": "object",
  "properties": {
    "metric": {
      "default": "net_turnover_ron",
      "title": "Metric",
      "type": "string"
    },
    "agg": {
      "default": "avg",
      "title": "Agg",
      "type": "string"
    },
    "group_by": {
      "default": "",
      "title": "Group By",
      "type": "string"
    },
    "year": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Year"
    },
    "years": {
      "default": "",
      "title": "Years",
      "type": "string"
    },
    "caen": {
      "default": "",
      "title": "Caen",
      "type": "string"
    },
    "caen_query": {
      "default": "",
      "title": "Caen Query",
      "type": "string"
    },
    "cui": {
      "default": "",
      "title": "Cui",
      "type": "string"
    },
    "judet": {
      "default": "",
      "title": "Judet",
      "type": "string"
    },
    "status": {
      "default": "",
      "title": "Status",
      "type": "string"
    },
    "registered_after": {
      "default": "",
      "title": "Registered After",
      "type": "string"
    },
    "min_turnover": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Min Turnover"
    }
  },
  "title": "company_stats_toolArguments"
}
🟢get_meta

How old each dataset is, how many companies filed in each year, what fraction of the register carries an activity code, and the mapping from every financial field name to its Romanian label. Call this when the user asks how current or how complete the data is.

输入模式

{
  "type": "object",
  "properties": {},
  "title": "get_meta_toolArguments"
}
🟢search(query)

ChatGPT connector search: find Romanian companies by name or CUI, returned as {id, title, url}. Identical to search_companies — use that tool instead unless you are the ChatGPT Apps SDK connector, which requires this exact name.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    }
  },
  "required": [
    "query"
  ],
  "title": "search_toolArguments"
}
🟢fetch(id)

ChatGPT connector fetch: the full company document for one CUI `id`, as returned by a prior `search` call. Identical to get_company with no include= (administrators included; get_officers lists them per source). Use get_company instead unless you are the ChatGPT Apps SDK connector, which requires this exact name.

输入模式

{
  "type": "object",
  "properties": {
    "id": {
      "title": "Id",
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "title": "fetch_toolArguments"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本12 个工具
已验证未记录版本12 个工具