Skip to main content
Glama
Ownership verified

Server Details

The operating-reality layer for African fintech regulation — who's licensed for e-money, payments, remittance and switching across markets, normalized across countries, every fact sourced and dated. Callable via MCP.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 4 of 4 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct purpose: cross-border rules, licensed entities, license equivalence mapping, and license requirements. No overlap.

Naming Consistency4/5

All names use lowercase and underscores, but the pattern varies: cross_border_rules is noun-based, list_licensed and map_license are verb_noun, requirements is a noun. Minor inconsistency.

Tool Count5/5

Four tools cover the core regulatory domain without being too few or excessive. Well-scoped for the server's purpose.

Completeness5/5

The tool set covers rules, licensed entities, license mapping, and requirements—comprehensive for African fintech regulation. No obvious gaps.

Available Tools

4 tools
cross_border_rulesCross-border money-movement rules (D2)A
Read-only
Inspect

The cross-border rulebook: what money may move across an African market's border, and under what rule - export-proceeds repatriation windows, licensed-channel and approval requirements, cash-declaration thresholds, travel/discretionary allowances, outward-capital restrictions, remittance-operator scope (some markets are inbound-only), investor transfer rights, and domestic-FX-use rules - normalized across 38 markets. RULES, NOT RATES (Rule 1): never an FX rate. Every rule carries source + as-of + (in full) the verbatim quote. Honest states are distinct, never conflated: published_rule | documented_absence (structural = a sourced finding that no such rule exists, e.g. a repealed exchange-control regime; not_published = a rule exists but its figure is not officially published) | located_unverified (located but not yet verified - a state only, never a value). Filter by jurisdiction, topic (repatriation, capital_control, approval_required, documentation, limits), facet (the SENSE, e.g. xborder:EXPORT_PROCEEDS_REPATRIATION), scope (intra_union/extra_union), direction (inward/outward/both) or activity. Jurisdictions: 42 African country markets — GH (Ghana), KE (Kenya), NG (Nigeria), RW (Rwanda), TZ (Tanzania), UG (Uganda), ZA (South Africa), ZM (Zambia), ET (Ethiopia), ZW (Zimbabwe), BJ (Benin), BF (Burkina Faso), CI (Côte d'Ivoire), GW (Guinea-Bissau), ML (Mali), NE (Niger), SN (Senegal), TG (Togo), CM (Cameroon), CF (Central African Republic), CG (Congo-Brazzaville), GA (Gabon), GQ (Equatorial Guinea), TD (Chad), MA (Morocco), CD (DR Congo), MZ (Mozambique), AO (Angola), MU (Mauritius), NA (Namibia), LS (Lesotho), SZ (Eswatini), BW (Botswana), MW (Malawi), TN (Tunisia), SO (Somalia), BI (Burundi), DJ (Djibouti), GM (The Gambia), SC (Seychelles), CV (Cabo Verde), SL (Sierra Leone) (plus "WAEMU"/XW, "CEMAC"/XC as union scopes that expand to their member states). format:'compare' returns one facet/topic across jurisdictions side-by-side (the comparison view); 'full' adds the verbatim quote + components; default 'summary'. Paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
facetNoThe sense within a topic, e.g. 'xborder:EXPORT_PROCEEDS_REPATRIATION' or 'export_proceeds_repatriation'. Must be a known facet; an unknown facet is an error (never a silent empty).
limitNoMax jurisdiction slices per page (default 30). Truncation is explicit: see pagination.has_more / next_offset.
scopeNoThe union-boundary scope of a rule (ADR-053): intra_union = within a monetary union (e.g. WAEMU/CEMAC internal); extra_union = crossing the union border. Omit for both.
topicNoThe money-movement rule family.
formatNosummary (default): the normalized rule + source + as_of. full: adds verbatim quote + components. compare: one facet/topic across jurisdictions (requires facet or topic; a union rule appears once, labelled by the union).
offsetNoSkip N jurisdiction slices (id-sorted).
activityNoA canonical fintech activity, e.g. 'fintech:REMITTANCE_XBORDER' - returns rules that bind that actor class plus the universal rules.
directionNoFilter to inward / outward flows. A single-direction rule matches its own direction; a rule marked 'both' and a non-directional rule (e.g. the universal licensed channel) match ANY direction filter. direction:'both' therefore returns rules that apply either way, not only rules explicitly marked 'both'.
jurisdictionNoISO-2 code or name (NG, Kenya, ZA...) or 'WAEMU'. Omit for all markets.
Behavior5/5

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

The description thoroughly discloses behavioral traits: it explains honest states (published_rule, documented_absence, not_published, located_unverified), pagination (has_more, next_offset), output variations per format, and the absence of rates. Annotations only provide readOnlyHint=true, so the description adds substantial value.

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?

The description is verbose, especially with the full list of 42 jurisdictions which could be trimmed or referenced from the schema. The core purpose is front-loaded, but the length may reduce quick scanning. Overall adequately structured for the tool's complexity.

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?

The description covers pagination, allowed states, filtering options, and format behaviors. Given the lack of output schema and the tool's complexity, it provides sufficient context for correct invocation. Minor gaps: no mention of error responses or how to interpret multiple rule states per jurisdiction.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, baseline is 3. The description adds contextual meaning to parameters like facet (explaining the 'xborder:' prefix), scope (defining union boundaries), format (details on compare vs full vs summary), and direction (special handling of 'both'). This goes beyond the schema descriptions.

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?

The description clearly states the tool provides cross-border money-movement rules for African markets, specifying it includes repatriation windows, licensed-channel requirements, etc., and explicitly distinguishes itself from rate queries ('RULES, NOT RATES'). It differentiates from sibling tools by focusing on rules rather than licensing or mapping.

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?

The description explains how to filter by jurisdiction, topic, facet, scope, direction, and activity, and describes different output formats (summary, full, compare). However, it does not explicitly contrast with sibling tools like list_licensed or map_license, leaving the decision context implicit.

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

list_licensedList licensed providersA
Read-only
Inspect

Who is licensed/authorized for a canonical activity in an African jurisdiction, per the official regulator register. Activities: fintech:EMONEY_ISSUE, fintech:PAYMENT_PROCESSING, fintech:REMITTANCE_XBORDER, fintech:SWITCHING. Jurisdictions: 42 African country markets — GH (Ghana), KE (Kenya), NG (Nigeria), RW (Rwanda), TZ (Tanzania), UG (Uganda), ZA (South Africa), ZM (Zambia), ET (Ethiopia), ZW (Zimbabwe), BJ (Benin), BF (Burkina Faso), CI (Côte d'Ivoire), GW (Guinea-Bissau), ML (Mali), NE (Niger), SN (Senegal), TG (Togo), CM (Cameroon), CF (Central African Republic), CG (Congo-Brazzaville), GA (Gabon), GQ (Equatorial Guinea), TD (Chad), MA (Morocco), CD (DR Congo), MZ (Mozambique), AO (Angola), MU (Mauritius), NA (Namibia), LS (Lesotho), SZ (Eswatini), BW (Botswana), MW (Malawi), TN (Tunisia), SO (Somalia), BI (Burundi), DJ (Djibouti), GM (The Gambia), SC (Seychelles), CV (Cabo Verde), SL (Sierra Leone) (plus "WAEMU"/XW, "CEMAC"/XC as union scopes that expand to their member states). Every entry carries source + as-of; a per-category coverage block reports ingestion status (ingested / empty / not_ingested / register_unavailable), and slices with no entries explain WHY (structural absence vs register unavailable vs not yet ingested vs genuinely empty). Default format is a compact summary that fits the widest slice in one call; format:'full' returns per-row provenance, paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax entities per jurisdiction slice (default: 500 summary, 50 full). Truncation is explicit: see pagination.has_more / next_offset.
formatNosummary (default): compact rows (provider, category, status, as_of) + per-category provenance - the widest slice fits one call. full: complete per-row provenance; paginated (default 50/page).
offsetNoSkip N entities (per jurisdiction slice, name-sorted).
activityYesCanonical activity, e.g. 'fintech:EMONEY_ISSUE' or 'REMITTANCE_XBORDER'
jurisdictionNoISO-2 code or name (NG, Kenya, ZA...). Omit for all.
Behavior4/5

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

The annotations already indicate readOnlyHint=true, and the description confirms this by describing a read operation (listing data from a register). It adds behavioral context: data comes from official regulator registers, includes source and as-of date, explains absence reasons (structural, unavailable, not ingested, empty), and details pagination behavior. However, it does not mention rate limits or authentication requirements (assuming they are handled elsewhere), but for a read-only tool this is acceptable.

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?

The description is structured with the main purpose first, followed by lists of activities and jurisdictions, then output details. It is somewhat long due to the exhaustive list of jurisdictions, but that is arguably necessary for clarity. Every sentence adds value—there is no fluff. The compactness could be improved by summarizing the jurisdiction list, but it remains readable.

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?

Given the tool's complexity (multiple activities, 42+ jurisdictions, two output formats, pagination, data provenance, absence explanations), the description covers all critical aspects. Since there is no output schema, the description fully explains return values (compact summary vs. full paginated, per-category coverage, and why empty slices occur). The description is complete enough for an agent to invoke the tool correctly without confusion.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 5 parameters are described in the schema with 100% coverage. The description adds valuable semantics beyond the schema: default limits (500 for summary, 50 for full), explanation of format difference (compact vs. paginated full), offset's name-sorted ordering, activity examples ('fintech:EMONEY_ISSUE'), and jurisdiction omission meaning 'all'. This substantially enriches parameter understanding.

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?

The description clearly states the verb 'list' and the resource 'licensed providers', and specifies the scope: canonical activities in African jurisdictions per official registers. It explicitly lists all supported activities and 42 country codes, making the tool's purpose unmistakable. The sibling tools (cross_border_rules, map_license, requirements) are sufficiently different, so there is no confusion.

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?

The description implies when to use the tool (to check who is licensed for a given activity/jurisdiction) but does not explicitly contrast with siblings or provide when-not-to-use guidance. For example, it could mention that cross_border_rules is for cross-border licensing rules rather than provider lists. The lack of explicit usage boundaries keeps this at a 3.

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

map_licenseMap a licence across jurisdictionsA
Read-only
Inspect

The cross-country normalization: for a canonical activity, which local licence category is the equivalent in each jurisdiction (e.g. Nigeria MMO ≈ Ghana DEMI ≈ Kenya E-Money Issuer; Nigeria IMTO ≈ Kenya MRP ≈ South Africa ADLA Category 3).

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesTarget jurisdiction (ISO-2 or name)
fromYesOrigin jurisdiction (ISO-2 or name)
activityYesCanonical activity, e.g. 'EMONEY_ISSUE' or 'fintech:REMITTANCE_XBORDER'
Behavior4/5

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

Annotations already declare readOnlyHint=true, so no safety contradiction. The description adds value by explaining the mapping behavior (equivalence lookup) and providing examples, which goes beyond the annotations.

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

Conciseness5/5

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

One well-structured sentence with a parenthetical example. Front-loaded with the key concept. Every word earns its place; no redundancy.

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?

For a 3-parameter tool with no output schema and simple sibling, the description adequately explains the tool's purpose and concept. It lacks details on output format or edge cases, but the examples compensate sufficiently.

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 coverage is 100% and documents all three parameters (activity, from, to). The description does not add parameter-specific meanings beyond the schema's descriptions but provides overall context through examples.

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?

The description uses specific verbs ('normalization', 'map') and clearly states the resource ('canonical activity to local licence category'), providing concrete examples (Nigeria MMO ≈ Ghana DEMI) that distinguish it from the sibling tool 'list_licensed'.

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?

The description implies usage for cross-jurisdiction license mapping but does not explicitly state when to use this tool versus 'list_licensed' or what conditions warrant its use. No exclusion criteria or alternatives are mentioned.

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

requirementsLicence requirementsA
Read-only
Inspect

The licence-requirements layer: the published requirements to HOLD a licence category - minimum capital, local presence/incorporation, timeline, local ownership, fees, ongoing obligations - for a canonical activity in an African jurisdiction. Every value carries source + as-of + (in full format) the verbatim quote. Honest states are distinct, never conflated: published_value | documented_absence (structural = 'no such requirement exists' vs not_published = 'a requirement exists but no official figure is published') | located_unverified (a value was located but not yet verified - surfaced as a state only, never as a value). Capital and fees are stated in the statute's own currency. Key it by activity (+ optional jurisdiction) or by an exact category id. Activities: fintech:EMONEY_ISSUE, fintech:PAYMENT_PROCESSING, fintech:REMITTANCE_XBORDER, fintech:SWITCHING. Jurisdictions: 42 African country markets — GH (Ghana), KE (Kenya), NG (Nigeria), RW (Rwanda), TZ (Tanzania), UG (Uganda), ZA (South Africa), ZM (Zambia), ET (Ethiopia), ZW (Zimbabwe), BJ (Benin), BF (Burkina Faso), CI (Côte d'Ivoire), GW (Guinea-Bissau), ML (Mali), NE (Niger), SN (Senegal), TG (Togo), CM (Cameroon), CF (Central African Republic), CG (Congo-Brazzaville), GA (Gabon), GQ (Equatorial Guinea), TD (Chad), MA (Morocco), CD (DR Congo), MZ (Mozambique), AO (Angola), MU (Mauritius), NA (Namibia), LS (Lesotho), SZ (Eswatini), BW (Botswana), MW (Malawi), TN (Tunisia), SO (Somalia), BI (Burundi), DJ (Djibouti), GM (The Gambia), SC (Seychelles), CV (Cabo Verde), SL (Sierra Leone) (plus "WAEMU"/XW, "CEMAC"/XC as union scopes that expand to their member states). Default format is summary; format:'full' adds the verbatim quote, computation notes and value components, paginated by category.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax categories per page (default: 30 summary, 10 full). Truncation is explicit: see pagination.has_more / next_offset.
formatNosummary (default): value/absence/held + source + as_of, no quotes. full: adds verbatim quote, notes, components; paginated by category.
offsetNoSkip N categories (id-sorted).
activityNoCanonical activity, e.g. 'fintech:EMONEY_ISSUE' or 'REMITTANCE_XBORDER'. Required unless 'category' is given.
categoryNoExact license_category_id (e.g. 'NG-CBN-MMO') or local name. Overrides activity/jurisdiction - returns just that category.
jurisdictionNoISO-2 code or name (NG, Kenya, ZA...). Filters the activity's categories; omit for all.
Behavior4/5

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

Beyond the readOnlyHint annotation, the description details honest states (published_value, documented_absence, etc.), pagination with explicit truncation and has_more/next_offset, and format differences. It adds significant behavioral context without contradicting annotations.

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?

The description is detailed but well-structured, with front-loaded purpose and clear sections. The list of jurisdictions is extensive but necessary for context. Every sentence adds value for a tool with 6 parameters and no output schema.

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?

Without an output schema, the description thoroughly covers return values: honest states, source, as-of, verbatim quotes in full format, and pagination details. It explains capital/fees in statute's currency and the two formats, making the tool self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, baseline is 3. The description adds meaning beyond the schema by explaining the relationship between activity, jurisdiction, and category, listing valid activities and jurisdictions, and clarifying default limits and truncation behavior.

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?

The description clearly specifies the tool retrieves licence requirements for a canonical activity in an African jurisdiction. It distinguishes itself from sibling tools (cross_border_rules, list_licensed, map_license) by focusing on requirements like capital, fees, and obligations, not licenses or cross-border rules.

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?

The description explains how to use the tool: key by activity (+ optional jurisdiction) or exact category id. It mentions default and full formats. However, it does not explicitly state when not to use it or provide direct comparisons to alternatives, though the context of sibling tools implies differentiation.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources