cuisor.ro
Server Details
Romanian company register: identity, filed financials, procurement, court records by name or CUI.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
12 toolscompany_statsAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| agg | No | avg | |
| cui | No | ||
| caen | No | ||
| year | No | ||
| judet | No | ||
| years | No | ||
| metric | No | net_turnover_ron | |
| status | No | ||
| group_by | No | ||
| caen_query | No | ||
| min_turnover | No | ||
| registered_after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the burden. It adds meaningful behavioral context by warning that coverage.rows_with_metric is typically about half of coverage.matched_companies because many companies never filed the figure, and directs the agent to always report this alongside the answer. It does not fully explain all behavioral edge cases, but the disclosure is genuinely useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence earns its place: the first sentence states the core operation, the second provides usage rationale, the third and fourth define key parameter options, and the last adds an important data-quality caveat. It is dense but not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 12 parameters, no output schema, and no annotations, the description covers the metric, group_by, and a useful coverage warning, but leaves many filtering parameters and the exact output shape unexplained. It is adequate for the core use case but not fully complete for nuanced calls.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, and the description compensates by enumerating valid metric values, group_by values, and an example years format. However, most of the 12 parameters (cui, caen, judet, status, caen_query, min_turnover, registered_after, year vs years) are still left to inference, so the compensation is only partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool computes a single aggregate number over a filtered population and enumerates the supported aggregations and metrics. It distinguishes itself from the sibling listing/search tools by explicitly saying to prefer it over listing companies and doing arithmetic manually.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit guidance on when to use this tool versus fetching and computing locally, and even provides a concrete group_by='year' example for time-series use. This gives an agent actionable decision criteria for selecting this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchAInspect
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= (never officers — use get_officers for that, separately). Use get_company instead unless you are the ChatGPT Apps SDK connector, which requires this exact name.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does so well: it states the return scope ('full company document'), the id source ('as returned by a prior search call'), and the exclusion of officers. It does not cover auth, errors, or rate limits, but the behavioral contract is meaningfully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the core behavior appears first, followed by the relationship to similar tools and the exact exception requiring this tool. No sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter fetch tool, the description covers the main need: what it fetches, where the id comes from, and when to prefer get_company. The lack of an output schema is mitigated by 'full company document', though explicit error/not-found behavior would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no description for 'id', but the tool description compensates by defining it as a CUI id returned by a prior search call. This tells an agent where the value comes from and what kind of identifier is expected.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the operation: fetching the full company document for a CUI id returned by a prior search call. It also distinguishes the tool from siblings by stating it is identical to get_company without include= and explicitly excludes officers, which get_officers handles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage guidance is explicit: use get_company instead unless the caller is the ChatGPT Apps SDK connector, which requires this exact name. It also names get_officers as the correct tool for officers, providing clear routing among alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_companyAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| cui | Yes | ||
| include | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It discloses the non-real-time nature, as_of dates, differing refresh schedules, RON currency, default slimness, and data provenance. This is substantial, honest behavioral context beyond what the schema shows.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: purpose first, expansion options second, then caveats and data context. Every sentence adds useful information, and there is no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no output schema and no annotations, this is quite complete: it covers purpose, fields, optional expansions, data source, currency, and data freshness. The main gaps are ambiguity around what exactly 'activity' and 'headline figures' include, and no mention of behavior for unknown or missing CUIs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It explains cui as the company identifier and enumerates valid include values: financials, procurement, change_history, peers, same_address. It does not define CUI itself or expand on each include value, but the meaning is largely inferable from context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('one company by CUI') and the fields returned ('Identity, status, address, activity and headline figures'), with an implied fetch verb. It differentiates from sibling tools like get_financials or get_procurement by presenting an aggregate one-company profile and listing expandable sections.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly states the core use case: retrieving one company by CUI, with a slim default and optional include expansions. It does not explicitly name alternatives like search_companies or list_companies or explain when to prefer them, but the one-company-by-CUI framing is clear enough for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_financialsAInspect
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'.
| Name | Required | Description | Default |
|---|---|---|---|
| cui | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It clearly discloses signed profit semantics (negative is a loss), the unit of currency (lei), and the important interpretation of missing rows as 'not filed yet' rather than 'no data'. This goes well beyond a simple 'get financials' statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It front-loads the core purpose and field list in the first sentence and adds a crucial interpretation caveat in the second. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema and no annotations, the description is notably complete. It names the main data fields, explains profit sign, specifies currency, and clarifies missing-year semantics. It could mention the response shape or exact field names, but nothing critical is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for explaining 'cui'. The description only references 'for one company', which hints that cui identifies a company, but it never explicitly states that cui is the company identifier or what format/type is expected. This is a meaningful gap for an agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: retrieving every filed financial year for one company, including turnover, signed profit, employees, and balance sheet. The scope ('for one company') and the detailed field list make it easy to distinguish from broader sibling tools like company_stats or list_companies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: call this when you need a company's financial history and balance sheet data. However, it does not explicitly discuss when to avoid it or name any alternative tools, leaving the selection decision somewhat implied rather than guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_legalAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| cui | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Explicitly discloses that ambiguous matches are included and fanned out per candidate CUI, and lists exclusions (no co-party names, no outcome or merits). This fully informs the agent about what the result will and will not contain, exceeding typical expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is dense but every sentence adds value: sources, scope, ambiguity handling, exclusions. It is efficient without being bloated, conveying necessary detail in a compact form.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no output schema, the description adequately explains the nature of the data (court dockets, BPI publications), the structure (one row per candidate), and limitations (date range, absent fields). This gives the agent sufficient context to interpret results correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (cui) exists and the tool description refers to it as 'by CUI', but does not define what CUI stands for or the expected format. Schema provides no description either, leaving the parameter meaning partially inferred from context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it provides court dockets and BPI publications for a single company identified by CUI, using specific sources (portal.just.ro). The verb is implied but the resource and scope are unambiguous, and it differentiates from sibling tools that focus on other company data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear scope and limitations: covers last three years, not a complete history, and defines what it answers vs. what it doesn't. While it doesn't explicitly name alternative tools, the description itself offers enough context to decide when to use this tool for legal-focused queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_metaAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It transparently enumerates what the tool reports and implicitly signals this is a read-only metadata query. It does not describe exact formatting, but for a zero-parameter tool the listed outputs are enough to set expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The output contents are listed first, followed by a crisp usage trigger, making it easy for an agent to scan and immediately understand when to invoke the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless metadata tool with no output schema, the description gives enough context to make the correct call: it identifies the specific meta-questions it answers. It does not specify response formatting or exact schema, but that is not critical for tool selection or invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to clarify beyond what the schema shows. The baseline is 4 for a parameterless tool, and the description does not introduce any contradictory or confusing parameter concepts.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies what the tool returns: dataset age, filing counts per year, activity-code coverage, and financial field-name mappings. It is distinct from the sibling data-retrieval tools by presenting aggregate metadata about the register rather than a specific company or filing. The use case is also explicit: measure data currency and completeness.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to call this tool: when the user asks how current or how complete the data is. It does not name alternatives or state when not to use it, but the trigger context is clear and sufficient for a zero-parameter metadata tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_officersBInspect
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'.
| Name | Required | Description | Default |
|---|---|---|---|
| cui | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does this well by stating that the data is personal, requires an API key, is recorded per call, is never available anonymously, and that an empty sources_present result has a specific interpretation. It does not describe every possible caveat, but it covers the most important behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose, followed by essential privacy and interpretation notes. It is slightly dense with multiple clauses, but every sentence contributes useful information rather than repeating the tool name or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is fairly complete for a one-parameter tool: it explains the resource, authentication prerequisites, and an important result-interpretation caveat. However, because there is no output schema, the description should clarify more about what the response contains besides sources_present, and it should define cui. These gaps prevent it from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description does not explain the only parameter 'cui'. The phrase 'of one company' loosely suggests a company identifier, but the description never states that cui is the company's unique identifier or what format it should take. This is a meaningful gap for a parameter that is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource: legal representatives and administrators of one company. It is not a tautology and gives useful domain meaning. However, it lacks an explicit verb such as 'retrieves' or 'returns', and it does not explicitly distinguish itself from siblings like get_legal or get_company.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: it is for officer data of one company and requires an API key, so an agent can infer it is not for anonymous or multi-company lookups. But it provides no explicit when-to-use versus alternatives, and it does not name any sibling tool as a better choice in other cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_procurementAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| cui | Yes | ||
| role | No | both |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden of behavioral disclosure. It usefully reveals that results are bounded to the 200 most recent per side and that the `total` field reflects the true count, which may be much larger—important expectations for callers. It does not mention authentication, errors, or rate limits, but the limit/count disclosure is genuinely informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler; the first sentence states what the tool returns, and the second covers a critical sampling-bound behavior. Every clause contributes useful information, and the most important scoping detail is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and sparse parameter documentation, the description gives a solid overview but omits specifics about the `role` parameter values and the `cui` identifier. The limit and total behavior are well covered, but an agent still has to infer how to request 'won side' versus 'granted side' through the parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate for the `cui` and `role` parameters. It clarifies that the tool operates on one company and hints at two sides (won vs. granted), which maps loosely to `role`, but it never explicitly defines valid role values or states how `cui` should be formatted. The compensation is partial rather than complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (SEAP public procurement awards) and the specific subject (one company), covering both directions: contracts won and contracts granted. It is distinct from sibling tools focused on financials, officers, or company metadata, so an agent can tell it apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for retrieving procurement awards for a single company, but it does not explicitly state when to choose it over siblings like get_company or company_stats, nor does it provide when-not-to-use guidance. The context is sufficient for a straightforward selection, but alternatives and exclusions are left unstated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_companiesAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| cui | No | ||
| caen | No | ||
| sort | No | turnover_desc | |
| judet | No | ||
| limit | No | ||
| cursor | No | ||
| status | No | ||
| caen_query | No | ||
| min_turnover | No | ||
| min_employees | No | ||
| registered_after | No | ||
| registered_before | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, and it delivers richly. It reveals the 100-per-page cap, cursor-based paging, the monthly ONRC snapshot limitation with the data_through check before declaring empty results, and the subtle default ordering behavior that affects newly registered companies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence earns its place: the opening sentence states core behavior, then parameter specifics, then a subtle edge case, then data-freshness context, and finally a routing instruction. Despite its length, it is dense with actionable guidance and front-loads the most important information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter tool with no annotations and no output schema, the description is unusually complete. It covers ordering, paging, data freshness, parameter composition, and the correct alternative for aggregates. Minor gaps remain for status and numeric range parameters, but their names are largely self-explanatory and the description already gives enough context for an agent to avoid the most common pitfalls.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for all parameter meaning. It thoroughly explains caen_query, caen, judet, cui, sort, registered_after, and cursor, but leaves limit, status, min_turnover, min_employees, and registered_before undocumented, relying on parameter names alone. This partial compensation earns a mid-range score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource, 'List companies matching a filter', and adds precise scope with 'largest turnover first, at most 100 per page'. It also differentiates from sibling company_stats by naming it explicitly as the aggregate alternative, so an agent can tell list_companies apart from related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: 'If you want a count, an average or a total, use company_stats instead — do not page through companies to compute one.' It also provides concrete usage rules for specific parameters, including caen_query vs caen, judet spelling variants, the cui limit, and the sort/registered_after combination for newly registered companies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_caenAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses the real-world trap of obsolete CAEN Rev.1 entries, explains why guessing fails, and requires the agent to show the user what was matched. It does not detail the output structure or limit behavior, but the key behavioral risks are well covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, all high-signal: the operation, the mandatory usage rule, and the rationale plus user-facing instruction. Nothing is redundant, and the most important constraint is front-loaded with 'ALWAYS.'
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple resolver with no output schema, the description covers the core requirement: what input to pass, when to call it, and what to do with the result. The only clear gaps are the meaning of 'limit' and the exact shape of the returned match data, which are minor for this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description gives strong meaning to 'query' with concrete examples ('coffee shops' or 'car repair') and explains why the underlying data is dangerous to guess. However, schema coverage is 0%, and the optional 'limit' parameter is never explained, so the description only partially compensates for the schema's silence.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a specific verb and resource: 'Resolve free text ... to CAEN activity codes.' It clearly distinguishes this tool from the sibling company-query tools by framing it as a pre-filtering resolution step rather than a lookup of companies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says 'ALWAYS call this before filtering by activity — do not guess a CAEN code.' This tells the agent when the tool must be used, what behavior to avoid, and even instructs it to expose the matched result to the user. This is unusually clear operational guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It states the tool returns a specific structure ({id, title, url}) and that it is identical to search_companies, which implies read-only search behavior. It does not explicitly mention side effects or limitations, but search inherently implies no mutations, and the 'identical' reference provides additional context. Slight gap: no explicit read-only statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that conveys all necessary information—purpose, return shape, and usage guidance—without unnecessary verbosity. It is well-structured, front-loading the action and then clarifying the alternative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the purpose, return format, and usage context comprehensively for a simple search tool. No output schema exists, so the explicit return structure is essential and provided. It does not mention error handling or pagination, but given the simplicity and the presence of sibling tools, these are unlikely critical gaps. Overall complete enough for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter is 'query'. The description explains that it can be a company name or CUI, so the agent knows what to pass. Although the schema has no property descriptions (0% coverage), the tool description effectively compensates by defining the query's possible values. Minor gap: no explicit format specification (e.g., string length or encoding) but sufficient for usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: finding Romanian companies by name or CUI, and explicitly distinguishes it from the sibling search_companies by noting it is identical except for the specific ChatGPT connector context. This leaves no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'use that tool instead unless you are the ChatGPT Apps SDK connector, which requires this exact name.' This directly tells the agent when to choose this tool over the alternative, making the decision criteria explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_companiesAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description fully discloses matching semantics (unquoted vs quoted, word matching, case/diacritics/SRL folding), result ordering (active first, largest turnover first), and the limit of 50 candidates. It also warns that name collisions are common, so the agent should show candidates to the user. No side effects are mentioned, but for a read-only search this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is slightly verbose but every sentence carries unique information about matching, ordering, or usage guidance. There is no fluff or redundancy, and it is well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description fully equips the agent with the necessary context: when to call, how to phrase the query, what to expect in the results (candidates, ordering), and how to handle ambiguous results (show the user). No other tool description in the sibling set provides this level of contextual hand-holding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The 'query' parameter is thoroughly explained in the description, including quoting and matching behavior. The 'limit' parameter is only implicitly described via 'Returns at most 50 candidates' and the default of 10, but its purpose is intuitive and no further explanation is critical.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'resolve' and the resource 'company name or CUI', and explicitly distinguishes it from other tools by saying 'Use this first whenever the user names a company rather than giving its CUI.' This makes it obvious when to select this tool over siblings like get_company or list_companies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit guidance on when to use the tool ('first whenever the user names a company'), how to format queries (quoting for exact names), and what the matching behavior is (case/diacritics/folding). It also implies when not to use it by contrast with CUI-based lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
12 tool updates
- First observed
company_stats - First observed
fetch - First observed
get_company - First observed
get_financials - First observed
get_legal - First observed
get_meta - First observed
get_officers - First observed
get_procurement - First observed
list_companies - First observed
resolve_caen - First observed
search - First observed
search_companies
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Read-only data on 3.9M Romanian companies: search, profiles, financials, status, CAEN.
Romanian company risk checks by CUI — verdict verde/galben/roșu from official public sources.
Romanian business-registry lookup, director search, contact extraction, and WHOIS/DNS audit.
Live data from 27 official national company registries. Unmodified. For KYB and due diligence.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceProvides lead generation and enrichment tools for AI agents, including Romanian business registry lookups, company/director searches, website contact extraction, and domain WHOIS/DNS security audits.MIT
- AlicenseAqualityCmaintenanceStructured business intelligence for AI agents. 5.5M verified entities across 34 countries, 40.3M BORME mercantile acts, EU VAT validation, GLEIF, healthcare registries. 20 tools.61MIT
- AlicenseNot gradedqualityBmaintenanceSearch Spanish companies, directors and corporate relationships from official BORME registry filings — ~3.2M companies since 2009. Read-only, anonymous.MIT
- FlicenseNot gradedqualityDmaintenanceProvides access to Poland's largest business registry database, enabling company search, beneficiary checks, and financial document retrieval via natural language.1-
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Most tools have clearly distinct domains: company identity, financials, legal, officers, procurement, stats, and CAEN lookup. The only ambiguity comes from the redundant connector aliases (fetch vs get_company, search vs search_companies), but their descriptions explicitly call out the duplication and direct agents to the canonical tools.
The set mostly follows a clear verb_noun convention: get_company, get_financials, get_officers, list_companies, search_companies, resolve_caen. Minor deviations are company_stats (noun_verb) and the bare connector aliases fetch and search, but all names are lowercase and underscore-separated, so the pattern remains predictable.
With 12 tools, the surface is well-scoped for a company information/registry API. Each tool covers a meaningful slice of the domain—search, company details, financials, legal, officers, procurement, stats, metadata, and CAEN resolution—without redundant or trivial additions beyond the two explicitly labeled connector aliases.
For a read-only company data API, the coverage is thorough: name/CUI resolution, company identity with optional includes, full financial history, legal records, officers, procurement, and aggregate statistics are all present. There are no obvious dead ends; even data freshness and completeness are addressed by get_meta.