Skip to main content
Glama
sepehr071

rasmio-mcp

by sepehr071

Filter values and categories

rs_options
Read-onlyIdempotent

Retrieve IDs and names for search filters such as legal forms, licenses, product categories, brand classes, and provinces to query companies and products accurately.

Instructions

List the ids and names the search filters take: legal forms, licenses, product categories, brand classes.

Use the returned id/slug in rs_search_companies (company_type, license_id, product_category, province, city) or rs_search (product_category, brand_class). counts are how many companies or products carry each value.

Input Schema

NameRequiredDescriptionDefault
whatYesWhich list: company legal forms, license names (needs query), product categories, trademark classes, provinces with their cities.
queryNolicenses: words of the license name, e.g. 'دانش بنیان', 'ایزو'. company_types/provinces: optional text filter.
categoryNocategories: a category slug to list its sub-categories, e.g. 'metals-chemicals'. Empty = top level.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and openWorld, so the safety profile is covered. The description adds one real behavioral fact beyond that – 'counts are how many companies or products carry each value' – which explains what the returned data actually means. It stops short of describing result shape, size, or anything about the 'needs query' constraint being enforced as an error versus a silent empty list.

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?

Two short sentences: the first states what is returned, the second states how to use it. The most important information is front-loaded and no sentence is filler.

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?

With no output schema, the description correctly compensates by explaining that results carry ids, names, and counts. It is nearly complete for a small lookup tool, with the main omission being the provinces/cities list that the enum exposes but the prose never mentions.

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%, so all three parameters are already documented in the schema and the baseline is 3. The description's mapping of returned ids onto concrete downstream search parameters adds some value, but it does not clarify the schema's weaker points, such as whether 'query' is strictly required for licenses or what happens when 'category' is supplied for a non-categories 'what' value.

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 opens with a specific verb and resource ('List the ids and names the search filters take') and enumerates the value families, which clearly separates it from the sibling search tools that consume those values. The only gap is that 'provinces' appears in the enum and in the downstream parameter list but is omitted from the opening enumeration.

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?

It explicitly routes the agent downstream, telling it to feed the returned id/slug into rs_search_companies (company_type, license_id, product_category, province, city) or rs_search (product_category, brand_class), which is genuinely useful selection guidance. There is no explicit 'when not to use' statement, but the intent of a lookup/enumeration tool is unambiguous.

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