Skip to main content
Glama

UpGrowth: business data for Algeria, Tunisia and Morocco

List the countries of the data

list_countries
Read-only

List the countries this server has business data for: for each its ISO code, its names in French, Arabic and English, the languages and the currency, its status (live: the data is served, planned: announced and not served yet) and the datasets it has. Algeria (DZ) is live with twelve datasets, the nine of its first release and its tax rates, social contributions and institutions, and Tunisia (TN) and Morocco (MA) with five each (governorates or regions, company legal forms, tax rates, social contributions, institutions); Morocco (MA) also has the index of its official gazette, the Bulletin officiel (list_jo_years, list_jo_issues, get_jo_issue), and Tunisia (TN) the index of its own, the Journal Officiel de la République Tunisienne (JORT), through the same three tools. Tunisia (TN) also has the activity nomenclature NAT 2009 (search_activity_codes, get_activity_code), the sections and chapters of its customs tariff (customs_tariff_sections, customs_tariff_chapters) and the CNSS contribution of the self-employed (calculate_casnos), the regime of the auto-entrepreneur as the finance law 2023 states it (search_anae_activities, get_anae_activity with the key regime; the official list of activities is not loaded) and the single contribution of the auto-entrepreneur (calculate_ifu with regime ae). Morocco (MA) also has the NMA 2010 activity nomenclature (activities), the auto-entrepreneur regime with its excluded professions (anae) and the auto-entrepreneur tax calculator (ifu). Use it first to see which countries and datasets exist before asking another tool for a country, or after a call came back country_not_available. Every country carries free_access: true when it answers without an API key (today Algeria only), false when it needs one. It takes no country, only the optional lang.

Input Schema

NameRequiredDescriptionDefault
langNoLanguage of the labels, notes and attribution text in the answer: fr (French, the default), ar (Arabic) or en (English).fr

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint/openWorldHint annotations, it discloses the status semantics (live = data served, planned = announced but not served) and the free_access flag semantics (true when no API key is needed, false when one is required, today Algeria only). This is exactly the kind of auth/availability context annotations cannot carry.

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

Conciseness3/5

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

Purpose is front-loaded in the first clause, but the body is a very long enumeration of every country's datasets and mapped tools, and the critical 'Use it first...' guidance is buried at the end. The dataset inventory is relevant but oversized for a one-parameter list tool, so it reads as dense rather than wasteful.

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

Completeness5/5

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

There is no output schema, so the description must explain the return shape — and it does, spelling out every field per country plus the status and free_access flags. Combined with the usage guidance and the note that no country argument is accepted, an agent has everything needed to call it and interpret the result.

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% and the single optional 'lang' enum is fully documented in the schema (fr default, ar, en), so the schema carries the parameter burden. The description's only addition is 'It takes no country, only the optional lang', which is a mild restatement of what the schema already shows. Baseline 3 is appropriate.

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?

Opens with a specific verb+resource ('List the countries this server has business data for') and enumerates exactly what each entry contains (ISO code, names, languages, currency, status, datasets). It is unmistakably distinct from every sibling (list_wilayas, list_jo_years, get_activity_code, etc.), which are country-specific lookups. An agent can route to it without opening the schema.

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

Usage Guidelines5/5

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

States explicitly when to call it: 'Use it first to see which countries and datasets exist before asking another tool for a country, or after a call came back country_not_available.' It further maps each dataset to the sibling tools that serve it (list_jo_years/get_jo_issue, search_activity_codes, calculate_ifu, etc.), giving concrete routing guidance rather than leaving alternatives implicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.