be. co-legal/ legal-lookup
by co-legal.be · remote · no sign-in to list tools · v1.34.1 · published by be.co-legal
Successiekompas intake + Belgian/Dutch legal and fiscal lookups. 14 tools.
14 tools: 5 change things and 9 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things5Claude Code: ask: see these tools
- Only reads9Claude Code: allow: see these tools
3 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http legal-lookup https://agent.co-legal.be/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnlegal_lookup
The server marks "legal_lookup" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "legal_lookup" says "lookup": a word for reading.
- Warnnl_legal_lookup
The server marks "nl_legal_lookup" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "nl_legal_lookup" says "lookup": a word for reading.
- Warnerfkompas_step
The server marks "erfkompas_step" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "start": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
14 tools
Changes things 5Claude Code: ask
erfbelasting_tarievenFlemish inheritance-tax (erfbelasting) rate brackets, parsed deterministically from the in-force Flemish Tax Code (VCF art.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Flemish inheritance-tax (erfbelasting) rate brackets, parsed deterministically from the in-force Flemish Tax Code (VCF art. 2.7.4.1.1) — for ALL heir categories: direct line & partners, siblings, and others. Omit `categorie` to get all three; the rates come from the current official text.
Annotations the server declares
- title: Flemish inheritance-tax rates
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
erfkompas_flowsOptional metadata for the single Successiekompas inheritance intake.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Optional metadata for the single Successiekompas inheritance intake. Start directly with be.erfkompas.step and answers={}; no questionnaire selection is needed.
Annotations the server declares
- title: Successiekompas intake information
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
erfkompas_stepStart or continue the Successiekompas inheritance intake with answers the user confirmed and agreed to share with Successiekompas; follow the returned question and answerContract f…1 finding
Why it is in this group
- The description's first verb is "start": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "erfkompas_step" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "start": a word for a change.
Description, as the server wrote it Start or continue the Successiekompas inheritance intake with answers the user confirmed and agreed to share with Successiekompas; follow the returned question and answerContract for structured fields. Returns the next question, a deterministic scan result or a secure handoff. For a possible saving before sign-in, follow estimateInput and pass estimate with explicit user confirmation and permission. The kernel supplies a numeric indication; the concrete approach is paid advice. When authenticated_continuation is returned, connect that separate OAuth profile. At intake completion, let the user review the returned intake object; then save it using successiekompas_intake with confirmed=true and continue the dossier conversation.
Annotations the server declares
- title: Run Successiekompas
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
legal_lookupResolve a Belgian legislation reference to its canonical Justel URL.1 finding
Why it is in this group
- The name "legal_lookup" says "lookup": a word for reading.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "legal_lookup" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "legal_lookup" says "lookup": a word for reading.
Description, as the server wrote it Resolve a Belgian legislation reference to its canonical Justel URL. Give the code (BW, WVV, WIB92, VCF, WBTW, WBE, Sw, Ger.W) and optionally the article number. Example: code=BW, article=4.71.
Annotations the server declares
- title: Belgian legislation reference (Justel)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
nl_legal_lookupResolve a Dutch statute reference to its wetten.overheid.nl URL.1 finding
Why it is in this group
- The name "nl_legal_lookup" says "lookup": a word for reading.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "nl_legal_lookup" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "nl_legal_lookup" says "lookup": a word for reading.
Description, as the server wrote it Resolve a Dutch statute reference to its wetten.overheid.nl URL. Give the code (BW4, Successiewet, Wet IB 2001, Wet OB 1968, BW6, Awb, Sr, Rv) and optionally an article. Example: code=BW4, article=4:63.
Annotations the server declares
- title: Dutch legislation reference
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
Only reads 9Claude Code: allow
ecb_ratesReturn the official daily ECB euro reference rate 1 EUR = X currency for a given ISO 4217 code (e.g.No findings
Why it is in this group
- The description's first verb is "return": a word for reading.
Description, as the server wrote it Return the official daily ECB euro reference rate 1 EUR = X currency for a given ISO 4217 code (e.g. USD, GBP, CHF).
Annotations the server declares
- title: ECB euro reference rate
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
ecli_lookupResolve a Belgian ECLI (European Case Law Identifier) to canonical public lookup URLs (EU e-Justice + Juportal) plus court metadata.No findings
Why it is in this group
- The name "ecli_lookup" says "lookup": a word for reading.
Description, as the server wrote it Resolve a Belgian ECLI (European Case Law Identifier) to canonical public lookup URLs (EU e-Justice + Juportal) plus court metadata. Example: ECLI:BE:CASS:2020:ARR.20200101.1.
Annotations the server declares
- title: Belgian case-law reference (ECLI)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
eurlex_lookupResolve an EU CELEX number to its canonical EUR-Lex landing URL plus metadata (sector, document type).No findings
Why it is in this group
- The name "eurlex_lookup" says "lookup": a word for reading.
Description, as the server wrote it Resolve an EU CELEX number to its canonical EUR-Lex landing URL plus metadata (sector, document type). Example: 32016R0679 (GDPR).
Annotations the server declares
- title: EU legislation reference (EUR-Lex)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
iban_validateValidate an IBAN's structure (ISO 13616 check digits via MOD-97 + country length).No findings
Why it is in this group
- The name "iban_validate" says "validate": a word for reading.
Description, as the server wrote it Validate an IBAN's structure (ISO 13616 check digits via MOD-97 + country length). Pure compute; confirms well-formedness, not that the account exists or is active.
Annotations the server declares
- title: IBAN check
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
kbo_lookupLook up a Belgian company by its KBO/BCE enterprise number (10 digits, e.g.No findings
Why it is in this group
- The name "kbo_lookup" says "lookup": a word for reading.
Description, as the server wrote it Look up a Belgian company by its KBO/BCE enterprise number (10 digits, e.g. 0403.170.701). Returns the official name, status, legal form and start date from the public KBO register, with the source URL.
Annotations the server declares
- title: Belgian company lookup (KBO/BCE)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
legal_readFetch and clean the full text of an official Belgian or European legal document (HTML or PDF) from a URL on the allowlist of official sources (e.g.No findings
Why it is in this group
- The name "legal_read" says "read": a word for reading.
Description, as the server wrote it Fetch and clean the full text of an official Belgian or European legal document (HTML or PDF) from a URL on the allowlist of official sources (e.g. ejustice.just.fgov.be, eur-lex.europa.eu). Capped at 30,000 characters. Pair with legal_lookup / eurlex_lookup to get the URL first.
Annotations the server declares
- title: Read an official legal text
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
legal_searchKeyword-search Belgian legislation on Justel and return a search URL plus relevant code hints, for when the exact reference is unknown.No findings
Why it is in this group
- The name "legal_search" says "search": a word for reading.
Description, as the server wrote it Keyword-search Belgian legislation on Justel and return a search URL plus relevant code hints, for when the exact reference is unknown.
Annotations the server declares
- title: Belgian legislation search (Justel)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
nl_rechtspraak_lookupResolve a Dutch ECLI to canonical case-law URLs (Rechtspraak.nl details, the free Open Data content API, and EU e-Justice).No findings
Why it is in this group
- The name "nl_rechtspraak_lookup" says "lookup": a word for reading.
Description, as the server wrote it Resolve a Dutch ECLI to canonical case-law URLs (Rechtspraak.nl details, the free Open Data content API, and EU e-Justice). Example: ECLI:NL:HR:2021:1102.
Annotations the server declares
- title: Dutch case-law reference (ECLI)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
vies_validateValidate an EU VAT number against the official EU VIES service.No findings
Why it is in this group
- The name "vies_validate" says "validate": a word for reading.
Description, as the server wrote it Validate an EU VAT number against the official EU VIES service. Returns validity plus, where the member state exposes it, the registered trade name and address. Example: BE0403170701.
Annotations the server declares
- title: EU VAT number check (VIES)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.34.1. Values in angle brackets are yours to fill in.
claude mcp add --transport http legal-lookup https://agent.co-legal.be/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__legal-lookup__kbo_lookup",
"mcp__legal-lookup__vies_validate",
"mcp__legal-lookup__ecli_lookup",
"mcp__legal-lookup__eurlex_lookup",
"mcp__legal-lookup__legal_search",
"mcp__legal-lookup__legal_read",
"mcp__legal-lookup__nl_rechtspraak_lookup",
"mcp__legal-lookup__iban_validate",
"mcp__legal-lookup__ecb_rates"
],
"ask": [
"mcp__legal-lookup__erfbelasting_tarieven",
"mcp__legal-lookup__legal_lookup",
"mcp__legal-lookup__nl_legal_lookup",
"mcp__legal-lookup__erfkompas_flows",
"mcp__legal-lookup__erfkompas_step"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as legal-lookup. Review it before you use it.