Skip to main content
Glama
theYahia

@theyahia/kontur-focus-mcp

by theYahia

@theyahia/kontur-focus-mcp

Kontur.Focus API 用の MCP サーバー -- ロシアの法人向けの会社検索、EGRUL 抽出、財務諸表、仲裁事件、破産、ライセンス、関連会社ネットワーク。

ロシア API MCP シリーズの一部で、@theyahia/dadata-mcp@theyahia/spark-interfax-mcp@theyahia/casebook-mcp と並んでいます。

ツール

ツール

説明

search_company

INN、OGRN、または名前で会社を検索

get_company_brief

リスク概要付きの会社概要レポート

get_company_details

完全な EGRUL 抽出

get_financial_statements

貸借対照表、損益計算書、財務分析

get_arbitration_cases

仲裁裁判所の訴訟

get_bankruptcy_info

破産手続き

get_licenses

会社のライセンス

get_related_companies

関連会社・関係会社

Related MCP server: brreg-mcp

インストール

Claude Desktop / Cline / Cursor

MCP 設定に追加:

{
  "mcpServers": {
    "kontur-focus": {
      "command": "npx",
      "args": ["-y", "@theyahia/kontur-focus-mcp"],
      "env": { "KONTUR_FOCUS_API_KEY": "<YOUR_API_KEY>" }
    }
  }
}

環境変数

変数

必須

説明

KONTUR_FOCUS_API_KEY

はい

Kontur.Focus の API キー

デモプロンプト

  • "INN 7707083893 の会社情報を検索"

  • "Sberbank の EGRUL 抽出を表示"

  • "INN 7736050003 の財務諸表を取得"

  • "INN 7710140679 の仲裁事件はありますか?"

  • "INN 5024164553 の破産ステータスを確認"

  • "会社 INN 7802849731 はどのようなライセンスを持っていますか?"

  • "INN 7707083893 の関連会社を表示"

  • "'Yandex' という名前の会社を検索"

API リファレンス

ベース URL: https://focus-api.kontur.ru/api3/

ドキュメント: https://focus-api.kontur.ru/

ライセンス

MIT

Available Tools

8 tools
get_arbitration_casesC

Get arbitration court cases by INN.

ParametersJSON Schema
NameRequiredDescriptionDefault
innYesINN of the company

TDQS

C2.9/5.0
Behavior2/5

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 only states the action and filter, offering no information about return format, pagination, error conditions, or any side effects. This is barely more informative than a tautology.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with zero filler. It efficiently communicates the core purpose without waste, making it appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although the tool is simple (one parameter, no output schema), the description does not explain what the returned data looks like, whether it is a list, if there are limits, or any other operational details. Given the absence of annotations and an output schema, this is a significant gap that leaves an agent guessing about the tool's behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully covers the single parameter with a description ('INN of the company'), and the description merely repeats it as 'by INN.' Since coverage is 100%, the baseline is 3, and the description adds no new meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('arbitration court cases') with a clear filter ('by INN'). It is distinct from sibling tools like financial statements or licenses, but it does not explicitly name or compare to any sibling, so it falls short of the highest clarity score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. No mention of prerequisites, common use cases, or situations where this tool is inappropriate. The description implies via its name that it is for arbitration cases, but it does not articulate any decision logic.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_bankruptcy_infoC

Get bankruptcy proceedings info by INN.

ParametersJSON Schema
NameRequiredDescriptionDefault
innYesINN of the company

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must carry the full behavioral burden. It implies a read-only operation but does not disclose what specific information is returned, error behavior for invalid or missing INN, rate limits, or any side effects. The description is minimal and leaves significant ambiguity about the tool's exact behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It is appropriately concise for a simple retrieval tool, though it could include a bit more context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read tool with no output schema and no annotations, the description is overly vague. It does not clarify what 'bankruptcy proceedings info' encompasses (e.g., current status, case history, court decisions), nor does it distinguish itself from get_arbitration_cases. An agent might call the wrong sibling without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully describes the single parameter `inn` with the same wording ('INN of the company'), so schema description coverage is 100%. The description adds no additional meaning beyond the schema, meeting the baseline of 3 but not exceeding it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb ('Get') and a specific resource ('bankruptcy proceedings info') with a key parameter ('by INN'). It is unambiguous about what the tool does and is easily distinguishable from siblings like get_company_details or get_arbitration_cases, though it does not explicitly contrast them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus the sibling tools. The description only states the basic operation; there is no mention of conditions that would make it preferable (e.g., needing bankruptcy-specific data rather than general arbitration cases), nor any exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_company_briefC

Get brief company report by INN (risk summary).

ParametersJSON Schema
NameRequiredDescriptionDefault
innYesINN of the company

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so the description carries the full burden of behavioral disclosure. It does not mention safety (e.g., read-only), authentication requirements, rate limits, or what the actual output contains beyond 'risk summary'. The term 'brief' is vague and does not clarify whether it returns structured data, a text summary, or any side effects. The description adds minimal behavioral context beyond the name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It efficiently conveys the action, object, and key qualifier ('brief' and 'risk summary') in under 10 words. This is exemplary conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description must set expectations for the agent. It does not clarify what a 'brief company report' includes (e.g., whether it contains financial health, legal risks, or key metrics), nor the response format. Given the existence of several sibling tools with overlapping functions, more detail is needed to help an agent choose correctly and interpret the result. The description is too thin for the context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully describes the only parameter 'inn' as 'INN of the company' (100% coverage). The description does not add any extra meaning, such as format examples, validation rules, or additional context about the INN. Since the schema is complete, the baseline is 3; the description neither improves nor hinders parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get'), the resource ('brief company report'), the key identifier ('by INN'), and the content nature ('risk summary'). It differentiates from siblings like 'get_company_details' by specifying 'brief' and 'risk summary', which implies a lighter-weight report. However, it doesn't explicitly compare to siblings, so it's clear but not fully differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description implies it's for a quick risk overview, but does not state when NOT to use it or name other tools such as 'get_company_details' for more comprehensive data. An agent would have to infer usage from the 'brief' and 'risk summary' wording.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_company_detailsC

Get full EGRUL extract for a company by INN.

ParametersJSON Schema
NameRequiredDescriptionDefault
innYesINN of the company for full EGRUL extract

TDQS

C2.9/5.0
Behavior2/5

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. The verb 'Get' implies read-only, but the description discloses nothing about return format, the size of a full EGRUL extract, error behavior for invalid INNs, or any rate/token constraints. For an un-annotated tool this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with the action and resource front-loaded and zero filler. It is efficient, though the domain term 'EGRUL' is left undefined, so a reader unfamiliar with Russian business registers gains little from the wording beyond the action itself.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Complexity is low (one fully-covered parameter, no output schema, no nested objects), so the minimum bar is modest. However, with no annotations or output schema, the description should clarify what a 'full EGRUL extract' contains or how it differs from get_company_brief; that differentiation is missing, leaving the agent to guess at scope.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (the inn parameter is already described as 'INN of the company for full EGRUL extract'). The description's 'by INN' reinforces the lookup key but adds no format detail (e.g., 10 vs 12 digits, digit-only validation). Baseline 3 is appropriate since the schema carries the payload.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb (Get), a specific resource (full EGRUL extract), and an identifier (by INN). The qualifier 'full' hints at a contrast with the sibling get_company_brief, but it does not name that distinction explicitly, so it stops short of 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this over alternatives. It does not state that this is the comprehensive variant versus get_company_brief, nor does it mention any exclusions (e.g., individuals vs legal entities). The agent must infer usage from the 'full' qualifier and sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_financial_statementsC

Get financial statements (balance sheet, P&L) by INN.

ParametersJSON Schema
NameRequiredDescriptionDefault
innYesINN of the company

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden of behavior disclosure. It only says 'Get' which implies a read operation, but it does not disclose any potential limitations, errors, authentication needs, or return structure. This is minimal and insufficient for a tool with zero annotation support.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that states the purpose and the key parameter. It is front-loaded and contains no redundant wording. It could be slightly more informative, but it earns its place without unnecessary details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one parameter, no output schema), and the description conveys the primary purpose and content. However, it lacks detail on what the actual output looks like (e.g., structure of balance sheet and P&L data) and any edge cases. Given the lack of annotations and output schema, the description is barely adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents the sole parameter 'inn' with description 'INN of the company', and schema coverage is 100%. The description's 'by INN' adds no new meaning beyond the schema, so the baseline of 3 applies. No additional format or validity constraints are mentioned.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get'), a clear resource ('financial statements'), and specifies the content ('balance sheet, P&L') and the key parameter ('by INN'). It is clear and distinct from sibling tools, though it does not explicitly name alternatives. This is better than vague but not perfect differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. The description only says 'by INN' but does not mention prerequisites (e.g., need a valid INN from search_company) or when to prefer other tools like get_company_details. There is no explicit context or exclusion, so the agent must infer usage on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_licensesC

Get company licenses by INN.

ParametersJSON Schema
NameRequiredDescriptionDefault
innYesINN of the company

TDQS

C2.9/5.0
Behavior2/5

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. It only says 'Get', implying a read operation, but provides no information about return format, error behavior, permissions, or edge cases. This is a minimal disclosure that barely goes beyond the tool's name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with zero wasted words. It is appropriately sized for a simple retrieval tool and gets straight to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of an output schema and annotations, the description is incomplete. It does not clarify what the tool returns (e.g., a list, an object), nor does it address potential failures or nuances. For a one-parameter getter, more context would be expected to make it fully usable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% as the parameter 'inn' is described as 'INN of the company' in the schema. The description adds no additional meaning beyond what the schema already documents, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('company licenses') with an input method ('by INN'). It is clear and unambiguous, though it does not explicitly differentiate from sibling tools beyond the resource name itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. The description is purely declarative and does not mention conditions, prerequisites, or exclusions, leaving the agent to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_companyC

Search company by INN, OGRN, or name in Kontur.Focus.

ParametersJSON Schema
NameRequiredDescriptionDefault
innNoINN (taxpayer ID) of the company
nameNoCompany name to search for
ogrnNoOGRN (registration number) of the company

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only says 'Search' without disclosing potential behaviors like returning multiple matches, requiring exact vs. fuzzy matching, authentication requirements, or whether the search is read-only. The description is underspecified for a tool with zero annotation support.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no filler. It front-loads the action and criteria, making it easy to scan. It earns full marks for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool that likely returns a list of companies or identifiers, the description omits crucial context: what the output looks like, how to interpret multiple results, and how this feeds into the get_* sibling tools. With no output schema and no annotations, the description is incomplete for successful invocation and chaining.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter (inn, name, ogrn) having a brief description. The tool description adds the context that these are search criteria, but it doesn't clarify whether they can be combined or if at least one is required. Since the schema fully documents the parameters, the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Search') and resource ('company') along with the search criteria (INN, OGRN, or name) and the data source (Kontur.Focus). It distinguishes from the get_* siblings by implying a search-and-locate function rather than a direct fetch, though it doesn't explicitly contrast with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description tells what it does but gives no guidance on when to use it versus the get_* siblings. It doesn't mention that this is typically a first step to obtain an identifier for subsequent get_* calls, nor any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.5/5.0
Disambiguation5/5

Each tool targets a distinct resource type: search, company brief, EGRUL details, financials, court cases, bankruptcy, licenses, and related companies. No two tools overlap in purpose.

Naming Consistency5/5

All tools follow a consistent get_<entity> pattern except search_company, which still uses the same verb-first convention. Naming is uniform and predictable.

Tool Count5/5

8 tools is well-scoped for a company data lookup server. Each tool covers a meaningful aspect of the domain without unnecessary bloat or redundancy.

Completeness4/5

The tool set covers search, detailed company data, financials, legal risk indicators, and relationships. Minor gaps exist, such as direct founder/officer lookup or sanctions screening, but the core workflows are well covered.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables access to B2Bhint API for searching and retrieving company and person information, including company details, financial reports, and contact data across multiple countries.
    5
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables direct access to Norwegian company data — lookup, search, roles, subunits, and live updates — through the free Brønnøysund Open Data API.
    5
    57
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to search and retrieve data about Russian companies, entrepreneurs, and individuals via the Checko.ru API, including financial reports, legal cases, and bankruptcy information.
    12
    13
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/theYahia/kontur-focus-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server