RegAlertfor Agents

RegAlert MCP tools

Every tool, grouped by what it helps you do, with its REST twin.

This page lists the tools your assistant can use after you connect RegAlert. You ask in plain words; your assistant chooses the tool and fills in the inputs.

Every tool only reads. No tool changes your account or any document.

Missing a tool? Refresh the tool list in your client, if it can, then start a new chat. If the tool is still missing, reconnect RegAlert. See missing tools.

Find documents

Start here: search by words, or list what was published, newest first.

ToolWhat it returnsInputs
search_documentsFull-text search. Each hit: uid, title, date, regulator, the first 300 characters of the summary. total is exact. licence (slug; also matches documents for all regulated firms) and in_force_only (drop superseded; keeps documents with no known superseding document, which does not prove they are in force) filter by what a document applies to; if the index cannot filter yet, the answer says how the hits were filtered.query, regulator?, jurisdiction?, region?, topic?, licence?, in_force_only?, sort?, limit?, fields?
recent_documentsNewest first, with the exact total. No input = the newest documents of all regulators. Dates are YYYY-MM-DD. licence (slug; also matches documents for all regulated firms) and in_force_only (drop superseded; keeps documents with no known superseding document, which does not prove they are in force) filter by what a document applies to.regulator?, jurisdiction?, region?, topic?, licence?, in_force_only?, since?, until?, limit?, offset?, fields?

Filters take codes, not names: regulator (CBN), jurisdiction (NG), region and topic. A wrong code is an error that names the right ones, so your assistant can correct itself. Some regulator codes are used in several countries (FSC, FMA, CBB…): give the jurisdiction with them.

Read a document

Read the text of one document, and check what it changed and what changed it.

ToolWhat it returnsInputs
get_documentOne document: metadata, summary, lineage and the English text (markdown). With query: only the passages that hold those words (up to 8000 characters). Without: the text from offset, 40000 characters a call (most 400000). The original-language text only with include_original. A document that holds annexes or forms lists them as enclosures; each one is in the text under a ## <label> heading, after the main text.uid, query?, offset?, max_chars?, include_original?
get_lineageA page of a document's confirmed citation links: what it amends, replaces, is issued under or refers to (outgoing), and what did that to it (incoming). Not a check that a document is in force.uid, direction (outgoing|incoming), relation?, limit?, offset?
For a long document, ask a question about it: your assistant then reads only the passages that answer it, not the whole text.

Cite a document by its page: the page of get_document, or the url field of a list, https://regalert.today/document/<slug>-<uid>. A bare /document/<uid> redirects there.

Regulators and topics

The codes the filters take. Your assistant uses these when you name a regulator or a subject.

ToolWhat it returnsInputs
list_regulatorsThe regulators and their codes. No input = totals by region; query finds a regulator by part of its name or by country. fields adds status (ok, late, down, paused, none), last_checked_at, docs_30d, latest_published when coverage data is available.region?, jurisdiction?, query?, all?, fields?
list_topicsThe topic tags the topic filter takes, with the number of documents of each.—

Your account

Your own access. No tool can see another person's account.

ToolWhat it returnsInputs
get_accountThis account's access: whether full-text reads are available right now.—

Answers

Answers are TOON, a compact text form of JSON that costs a model fewer tokens. A list opens with name[n]{a,b}: — n rows with the columns a and b. Each answer ends with next[n]:, the calls that follow from it. An error has a stable code and often suggestions.

REST

Every tool has a REST twin on this host, with the same inputs and the same defaults. Send Authorization: Bearer <token> with an OAuth token from a RegAlert sign-in; answers are JSON.

Routes
GET /v1/search?q=…&regulator=&jurisdiction=&region=&topic=&licence=&in_force_only=true&sort=relevance|newest&limit=&fields=
GET /v1/recent?regulator=&jurisdiction=&region=&topic=&licence=&in_force_only=true&since=&until=&limit=&offset=&fields=
GET /v1/documents/{uid}?query=&offset=&max_chars=&include_original=true
GET /v1/documents/{uid}/lineage?direction=outgoing|incoming&relation=&limit=&offset=
GET /v1/regulators?region=&jurisdiction=&query=&all=true&fields=
GET /v1/topics
GET /v1/account

GET /v1 lists the routes, /openapi.json describes them, and /llms.txt is the whole reference as plain text, written for agents.

Example prompts

ToolTry asking
search_documents“Search RegAlert for guidance on outsourcing from the Monetary Authority of Singapore.”
recent_documents“What did the Central Bank of Nigeria publish in the last two weeks?”
get_document“Read the newest of those and list what it requires, from whom, and by when.”
get_lineage“Has this rule been amended or replaced? By what?”
list_regulators“Which regulators in Kenya does RegAlert cover?”
list_topics“Which topics can I filter by?”
get_account“Can I read full texts right now?”

For questions about access, see access and fair use. For failed calls or missing tools, see troubleshooting.