Skip to main content
Glama

UpGrowth: business data for Algeria, Tunisia and Morocco

Search CNRC activity codes

search_activity_codes
Read-only

Search the official Algerian nomenclature of commercial activities kept by the CNRC (Centre National du Registre du Commerce): the six-digit codes written on a trade register entry. Use it to find the code of an activity described in French, Arabic or English, to check whether an activity is free, regulated (prior authorization needed) or blocked, or to browse the activities of a sector. Returns a page of activities, each with its code, status, labels in the three languages, sector, group and the URL of its page on upgrowth.dz. meta.total is the number of matches. Algeria only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoSearch text, at most 100 characters. Digits only, for example 5011: matches the activity codes that start with them. Words: every word must start a word of the activity label in French, Arabic or English, so a few specific words work best. Accents and letter case are ignored. Leave it out to browse with the other filters.
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.
offsetNoNumber of results to skip, from 0 to 10000, to read the next pages. Defaults to 0. meta.total tells how many results match.
sectorNoKeep only activities of this CNRC sector, given as its digit: 1 goods production, 2 artisanal production, 3 wholesale distribution, 4 import for resale, 5 retail distribution, 6 services, 7 export.
statusNoKeep only activities with this status: libre (free, no specific authorization needed to register), reglementee (regulated, a prior authorization or permit is required) or bloquee (blocked, cannot be registered in the trade register).
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, returns country_not_available.DZ

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations only declare readOnlyHint and openWorldHint=false; the description adds the important operational facts: no output schema exists, yet it enumerates the returned fields, explains meta.total, and documents pagination via offset/limit. It does not mention auth needs or rate limits, but for a read-only search the disclosed behavior is solid.

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?

Lead sentence defines the resource and the second sentence front-loads the use cases; the trailing 'Returns a page...' and 'Algeria only' lines are informative but create minor redundancy with the country parameter, which actually permits TN and MA.

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 steps in to describe the response shape and meta.total, and it explains status and sector semantics for filtering. The only gap is the tension between 'Algeria only' and a country parameter whose schema allows Tunisia and Morocco, which could confuse an agent.

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 carries the per-parameter detail (q matching rules, lang default, limit/offset bounds, sector digits, status meanings). The description adds the status/sector vocabulary emphasis but no syntax beyond the schema, so the baseline of 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 and resource ('Search the official Algerian nomenclature of commercial activities kept by the CNRC') and scopes it to the six-digit codes on a trade register entry, which cleanly separates it from the singular get_activity_code lookup and from search_anae_activities.

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?

Gives three concrete use cases (find a code from a French/Arabic/English description, check free/regulated/blocked status, browse a sector) and notes 'Leave it out to browse with the other filters.' It does not name the sibling tools an agent might otherwise pick, so routing is implied rather than explicit.

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.