Skip to main content
Glama

UpGrowth: business data for Algeria, Tunisia and Morocco

List the Journal Officiel issues of a year

list_jo_issues
Read-only

List the issues of the Algerian Journal Officiel for one year: for each issue its number, whether the French and Arabic editions exist with the links to their official PDF files on joradp.dz, and whether UpGrowth holds its summary. For Morocco (country MA) it lists the issues of the Bulletin officiel for one year, from 1912: for each issue its number, its publication date and the links to its French and Arabic editions on sgg.gov.ma (editions.fr and editions.ar, each with available true or false and pdf_url); a supplement (bis, ter) is listed beside its issue, with its suffix. For Tunisia (country TN) it lists the issues of the JORT for one year, from 1956: for each issue its number within the year, its publication date and whether its French and Arabic editions exist; the official site gives no direct link to the PDF files, so pdf_url is null. Returns an error when no issue is indexed for the year. Use it to find the number of an issue, then get_jo_issue to see what the issue contains. Without an API key only Algeria answers, for the current year and the two before it (older years return key_required), and at most 10 issues come back: meta.truncated says when more exist.

Input Schema

NameRequiredDescriptionDefault
langNoLanguage of the labels, notes and attribution text in the answer: fr (French, the default), ar (Arabic) or en (English).fr
yearYesYear of the gazette: the Journal Officiel from 1962 for Algeria, the Bulletin officiel from 1912 for Morocco (country MA), the Journal Officiel de la République Tunisienne from 1956 for Tunisia (country TN). Find the years covered with list_jo_years. Without an API key only Algeria answers, for the current year and the two before it; older years come with a paid plan.
countryNoCountry of the data, an ISO 3166-1 alpha-2 code in any letter case: DZ for Algeria, the default, TN for Tunisia or MA for Morocco. Only live countries answer: list_countries shows them and their datasets. Any other country, or a dataset the country does not have (for example the activity nomenclature for Morocco), returns country_not_available. Without an API key only DZ answers: TN and MA return key_required.DZ

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / year / description
      Previous value: -"Year of the gazette: the Journal Officiel from 1962 for Algeria, the Bulletin officiel from 1912 for Morocco (country MA), the Journal Officiel de la République Tunisienne from 1956 for Tunisia (country TN). Find the years covered with list_jo_years. Without an API key only Algeria answers, for the current year and the two before it."New value: +"Year of the gazette: the Journal Officiel from 1962 for Algeria, the Bulletin officiel from 1912 for Morocco (country MA), the Journal Officiel de la République Tunisienne from 1956 for Tunisia (country TN). Find the years covered with list_jo_years. Without an API key only Algeria answers, for the current year and the two before it; older years come with a paid plan."
  2. Changed2 schema fields changed
    • changedInput schema / properties / country / description
      Previous value: -"Country of the data, an ISO 3166-1 alpha-2 code in any letter case: DZ for Algeria, the default, TN for Tunisia or MA for Morocco. Only live countries answer: list_countries shows them and their datasets. Any other country, or a dataset the country does not have, returns country_not_available."New value: +"Country of the data, an ISO 3166-1 alpha-2 code in any letter case: DZ for Algeria, the default, TN for Tunisia or MA for Morocco. Only live countries answer: list_countries shows them and their datasets. Any other country, or a dataset the country does not have (for example the activity nomenclature for Morocco), returns country_not_available. Without an API key only DZ answers: TN and MA return key_required."
    • changedInput schema / properties / year / description
      Previous value: -"Year of the gazette: the Journal Officiel from 1962 for Algeria, the Bulletin officiel from 1912 for Morocco (country MA), the Journal Officiel de la République Tunisienne from 1956 for Tunisia (country TN). Find the years covered with list_jo_years."New value: +"Year of the gazette: the Journal Officiel from 1962 for Algeria, the Bulletin officiel from 1912 for Morocco (country MA), the Journal Officiel de la République Tunisienne from 1956 for Tunisia (country TN). Find the years covered with list_jo_years. Without an API key only Algeria answers, for the current year and the two before it."
  3. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnlyHint/openWorldHint; the description adds genuinely new behavior: error on empty year, key_required responses for TN/MA and for older DZ years without a key, 10-issue cap signalled via meta.truncated, and pdf_url=null for Tunisia. These are operational traits the agent could not infer from annotations or schema.

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?

Front-loaded with the core action and the per-country behavior is organized in parallel clauses, with the sibling routing and quota caveats at the end. It is long, and the API-key/paid-plan warning is repeated from the year parameter's own schema text, which is minor waste but the content is largely load-bearing.

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?

No output schema exists, and the description compensates by enumerating exactly what is returned per country (issue number, publication date, edition availability with pdf_url, supplement suffixes). Combined with the free-tier and truncation notes, an agent has everything needed to call and interpret it.

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 schema already documents country codes, the per-country start years (1912/1956/1962) and the lang enum. The description restates the same year ranges and country mapping rather than adding new parameter semantics, so the baseline 3 applies.

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?

Specific verb plus resource ('List the issues of the Algerian Journal Officiel for one year') and it spells out exactly what each returned record contains. It also differentiates the three country datasets, so an agent can distinguish it from get_jo_issue, list_jo_years and search_jo_titles immediately.

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?

Explicitly routes usage: 'Use it to find the number of an issue, then get_jo_issue to see what the issue contains', and points to list_jo_years for discovering covered years. It also states failure conditions (error when no issue is indexed) and the free-tier limitation, which tells the agent when this tool will not serve the need.

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.