Skip to main content
Glama

UpGrowth: business data for Algeria, Tunisia and Morocco

Search ANAE auto-entrepreneur activities

search_anae_activities
Read-only

Search the list of activities open to the auto-entrepreneur status in Algeria, as the platform of the Agence Nationale de l'Auto-Entrepreneur (ANAE) publishes it, grouped in domains. The list is fixed by an order of the minister in charge of start-ups (executive decree 23-197, art. 8) whose list is attached to the original and not printed in the Journal officiel: this answer is not a Journal officiel text and may lag its latest update (meta.activity_list says so). Liberal professions, regulated professions and activities, and crafts are excluded from the list (law 22-23, art. 2). Use it to check whether an activity can be practised as an auto-entrepreneur and to find its six-digit code. Returns a page of activities with code, labels and domain. meta.total is the number of matches. In Algeria an activity that has a regime of its own, today 080101 (micro-importation), also carries the object regime: read it before answering about that activity, it is not the ordinary auto-entrepreneur regime (see get_anae_activity). For Morocco (country MA) the status is defined by exclusion: it returns the professions that decree 2-15-263 excludes from the auto-entrepreneur status (architects, lawyers, doctors, notaries and so on), each with key (an UpGrowth identifier, code is null: Morocco gives them no code), status excluded and its legal basis; it holds no list of eligible activities. Morocco needs an API key. Without an API key at most 10 rows come back and meta.truncated says when more matched, so do not present such a list as complete. For Tunisia (country TN) there is no list of activities: the one record is the regime of the auto-entrepreneur as the finance law 2023 states it (key regime), and meta.activity_list says that the official list of activities is not loaded, so an activity that is not in the answer is neither admitted nor excluded: never tell a user it is not eligible. Tunisia needs an API key.

Input Schema

NameRequiredDescriptionDefault
qNoSearch text, at most 100 characters. Digits only: matches the ANAE codes that start with them. Words: every word must start a word of the activity label in French, Arabic or English. Accents and letter case are ignored. Leave it out to browse by domain.
langNoLanguage of the labels, notes and attribution text in the answer: fr (French, the default), ar (Arabic) or en (English).fr
limitNoMaximum number of results in the page, from 1 to 100. Defaults to 20. Without an API key at most 10 rows come back.
domainNoKeep only activities of this ANAE domain, given by its six-digit domain code (it ends in 0000), for example 010000 for Advice, Expertise and Training. Every result carries its domain. Not used for Tunisia (country TN): it has one regime record and no domains.
offsetNoNumber of results to skip, from 0 to 10000, to read the next pages. Defaults to 0. meta.total tells how many results match. Without an API key it must be 0: a search cannot be paged.
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. Changed4 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 / domain / description
      Previous value: -"Keep only activities of this ANAE domain, given by its six-digit domain code (it ends in 0000), for example 010000 for Advice, Expertise and Training. Every result carries its domain."New value: +"Keep only activities of this ANAE domain, given by its six-digit domain code (it ends in 0000), for example 010000 for Advice, Expertise and Training. Every result carries its domain. Not used for Tunisia (country TN): it has one regime record and no domains."
    • changedInput schema / properties / limit / description
      Previous value: -"Maximum number of results in the page, from 1 to 100. Defaults to 20."New value: +"Maximum number of results in the page, from 1 to 100. Defaults to 20. Without an API key at most 10 rows come back."
    • changedInput schema / properties / offset / description
      Previous value: -"Number of results to skip, from 0 to 10000, to read the next pages. Defaults to 0. meta.total tells how many results match."New value: +"Number of results to skip, from 0 to 10000, to read the next pages. Defaults to 0. meta.total tells how many results match. Without an API key it must be 0: a search cannot be paged."
  2. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Far exceeds the annotations (readOnlyHint, openWorldHint). It discloses API-key gating, a 10-row cap without a key, meta.truncated/meta.total semantics, that offset must be 0 without a key, that Morocco returns excluded professions with no codes, and that Tunisia returns only a regime record and absences are never proof of ineligibility.

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 primary purpose before the per-country caveats. It is long and dense, but nearly every sentence carries operational information an agent needs; the volume is justified by the three-country branching, though paragraph form makes it heavier than ideal.

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?

With no output schema, the description fully carries the return contract: code, labels, domain, key, status, legal basis, and the meta.total/truncated fields. The API-key and pagination behaviors are covered, leaving nothing an agent needs in order to call and interpret it correctly.

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 each parameter is thoroughly documented in the schema itself (q matching rules, limit/offset caps, domain pattern, country codes). The description reinforces a few constraints (10-row cap, offset=0 without key, domain unused for TN) but adds little beyond the schema, so 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?

States a specific verb (search) and resource (list of activities open to the auto-entrepreneur status in Algeria), plus the legal basis and exclusions that define the list. It clearly distinguishes the tool from get_anae_activity (which reads a single activity's regime) and from the generic code search siblings.

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?

Explicitly states the use case: 'check whether an activity can be practised as an auto-entrepreneur and to find its six-digit code', and routes the agent to get_anae_activity for the special micro-importation regime. It gives rich per-country conditions but does not explicitly contrast against sibling search_activity_codes, so it falls short of full alternative coverage.

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.