Skip to main content
Glama
rasmio-mcp

rasmio-mcp

by sepehr071

Search companies

rs_search_companies
Read-onlyIdempotent

Search Iranian companies by name or activity with filters and return national IDs for full registry profiles via rs_company.

Instructions

Search Iranian companies by name or activity with filters; returns national ids for rs_company.

Each result has the company's national id (company_id, شناسه ملی), name, age/capital summary, CEO and up to 5 licenses. Combine filters freely, e.g. active software companies in Isfahan with capital over 10 billion Rial. Next: rs_company(company_id) for the full registry profile (board, shareholders, gazette ads).

Input Schema

NameRequiredDescriptionDefault
cityNoRegistered city, Persian name, e.g. 'مشهد'.
pageNoResult page, from 1.
sizeNoHeadcount class: xs very small .. xl very large.
sortNoOrder of results.relevance
queryNoName, brand or activity words in Persian, e.g. 'نرم افزار' or 'دیجی کالا'. Empty = filters only.
statusNoCompany status.
provinceNoRegistered province, Persian name as the site writes it, e.g. 'تهران', 'اصفهان'.
has_brandNoOnly companies that own a registered trademark.
page_sizeNoResults per page.
license_idNoOnly companies holding this license; id from rs_options('licenses', query).
max_capitalNoMaximum registered capital in Rial.
min_capitalNoMinimum registered capital in Rial, e.g. 10000000000.
company_typeNoLegal form id from rs_options('company_types'); 5 = سهامی خاص, 6 = با مسئولیت محدود, 3 = تعاونی.
has_contractNoOnly companies with recorded government contracts.
founded_afterNoRegistration date from, Persian '1400/01/01' or Gregorian '2021-03-21'.
founded_beforeNoRegistration date to, same formats.
has_subsidiaryNoOnly companies with subsidiaries.
product_categoryNoOnly suppliers in this product category slug, from rs_options('categories') or a product's category_slug.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

The annotations already carry the read-only, idempotent, non-destructive profile, and the description adds real value beyond them by disclosing the result shape: national id, name, age/capital summary, CEO, and up to 5 licenses. It does not mention pagination behavior or result-cap behavior (page max 200, page_size max 60), which is the remaining gap.

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?

Three short paragraphs in a clear order: what it does, what it returns, what to do next. No redundant restatement of parameters and no filler sentences.

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

Completeness4/5

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

For an 18-parameter search tool with no output schema, the description covers the return contents and the downstream workflow, which is the critical missing piece. It stops short of noting pagination or how many total results to expect, leaving a modest gap for a large filter surface.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds genuine meaning: it explains that filters combine freely, shows a multi-filter example, and clarifies that company_id is the national id (شناسه ملی) that feeds rs_company. The cross-tool pointer for license_id/company_type sources is documented in the schema rather than the description.

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

Purpose5/5

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

Uses a specific verb and resource ("Search Iranian companies by name or activity with filters") and immediately scopes the tool's role in a pipeline by naming the sibling rs_company as the follow-up for full profiles. An agent can distinguish it from rs_search, rs_company, and rs_person without opening a schema.

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

Usage Guidelines4/5

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

Gives an explicit combinatorial example ("active software companies in Isfahan with capital over 10 billion Rial") and a clear next-step directive, plus the note that an empty query means filters-only. It lacks an explicit when-not-to-use statement versus the generic rs_search sibling, so it falls short of 5.

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