Skip to main content
Glama
Soumit MCP Server
by vext-ma

search_tenders

Find recent active Moroccan public procurement tenders by keyword, sector, or minimum amount to identify relevant bidding opportunities.

Instructions

Rechercher des appels d'offres publics marocains récents et actifs par mot-clé, secteur ou montant minimum.

Input Schema

NameRequiredDescriptionDefault
limitNoNombre maximum de résultats (par défaut 10, max 50).
queryNoMots-clés de recherche (ex: 'scanner médical', 'fibre optique', 'travaux assainissement', 'gardiennage').
sectorNoSecteur d'activité optionnel (ex: 'travaux', 'fournitures', 'services', 'sante', 'it').
min_amountNoMontant estimé minimum en Dirhams (MAD).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.3.0

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations supplied, the description carries the full behavioral burden and mostly does not meet it. It discloses only the data scope (recent, active, Moroccan public tenders); it says nothing about authentication, result ordering, pagination beyond the schema's limit, or what happens when no tender matches.

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 front-loaded sentence with no filler, and the resource and scope appear before the filters. It is perhaps too terse for a four-parameter tool, but every word earns its place.

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?

For a search tool with four optional parameters and no output schema, the definition is minimally sufficient: an agent can form a call. It is missing the shape of the results (which tender fields are returned) and the ordering, which the agent would need to use the output sensibly.

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 the schema already documents limit, query, sector, and min_amount with examples and units. The description merely lists the same three filter dimensions (mot-clé, secteur, montant minimum) and adds no extra semantics such as matching behavior or whether filters combine with AND.

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?

States a specific verb (Rechercher) and a precise resource (appels d'offres publics marocains) with scope qualifiers (récents et actifs) and the filter dimensions. It is clearly distinguishable from a details-fetching sibling like get_tender_details, though it never names any sibling explicitly.

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

Usage Guidelines3/5

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

Usage is only implied: 'récents et actifs' signals that archived/closed tenders are out of scope, which is a useful implicit boundary. However, there is no statement of when to choose this over search_competitor_awards or search_bpu_articles, and no prerequisites or exclusions are given.

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