Skip to main content
Glama

Server Details

EU law (EUR-Lex), UK and Dutch legislation and Dutch case law, article by article, with sources

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Bosco-Labs/bosco-labs-data
GitHub Stars
0
ChatGPT
–
Claude
–

TDQS

A3.6/5.0

Scored across 4 tools

Disambiguation3/5

The three lookup tools split by source type (Dutch case law vs. EU legislation vs. national legislation), but eu_law_lookup and national_law_lookup have near-identical framing ('one call answers what does article X say, is it in force, what amended it'), so an agent asked about Dutch law implemented from an EU directive must decide between them with little help. plan_official_records_query is a meta-tool that overlaps the other three by design, and its description points at run_official_records_plan, which is not in the tool list.

Naming Consistency3/5

All names are snake_case and readable, but the patterns are mixed: dutch_case_law is jurisdiction-first, eu_law_lookup and national_law_lookup are object+verb, and plan_official_records_query is verb-first. The inconsistency is mild but real, and it reflects the underlying split between 'lookup' tools and the planner.

Tool Count4/5

Four tools is lean but reasonable for a scoped legal-research surface, and each bundles meaningful modes (lookup by version/date, list new acts, planning). Nothing appears redundant enough to cut, though the planner duplicates capability already reachable through the direct lookups.

Completeness2/5

The server is titled 'EU, UK and Dutch law' but exposes no UK case law and no EU/CJEU case law — only Dutch court decisions — so two of the three jurisdictions have a major hole in the case-law half of the surface. The planner also dead-ends by instructing the agent to call run_official_records_plan, which is not among the provided tools, forcing the agent to fall back to the three direct lookups manually.

Available Tools

4 tools
dutch_case_lawDutch Case Law API (Rechtspraak): ECLI lookup, uitsprakenA
Read-onlyIdempotent
Inspect

Look up Dutch court decisions (uitspraken) by ECLI, or search them by court, legal area, date and keywords: court, decision and publication dates, case numbers, legal areas, procedure, the court's own summary (inhoudsindicatie), appeal / cassation / Advocate-General relations, referenced laws, and optionally the full text. Built for AI agents doing legal and compliance research, and for people who want Rechtspraak data as clean JSON.

Price: $0.005 per decision.

NameRequiredDescriptionDefault
ecliNoOne or more Dutch ECLIs, separated by commas or spaces, e.g. "ECLI:NL:HR:2024:123" or "ECLI:NL:HR:2024:123, ECLI:NL:RVS:2024:1000" (max 100)
queryNoWords to find in the decision's title and summary (inhoudsindicatie), case-insensitive
courtsNoCourt codes as used in the ECLI
dateToNoLatest decision date, inclusive, YYYY-MM-DD, e.g. "2024-12-31"
dateFromNoEarliest decision date (uitspraakdatum), YYYY-MM-DD, e.g. "2024-01-01"
legalAreasNoRechtsgebied names
maxResultsNoMost decisions to return from a search, most recently published or updated first, e.g. 20 (default)
includeTextNotrue = add the full decision as plain text (section headings as '## ', numbered paragraphs kept), cut at maxTextChars
documentTypeNo"uitspraak" = court decisions only, "conclusie" = opinions of the Advocate-General at the Hoge Raad only
maxTextCharsNoWith includeText: cap on the text per decision in characters, e.g. 20000 (default)

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely new context the annotations cannot carry: a per-decision price ($0.005 per `decision`), which matters for how aggressively an agent sets maxResults, plus the fact that includeText truncates text rather than returning it whole. It does not cover error/empty-result behavior or whether search results include total counts.

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?

Two compact sentences plus a one-line price note; the primary capability is front-loaded and the audience note is clearly secondary. The long mid-sentence enumeration of retrievable fields is dense but each item is informative rather than filler.

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 ten optional parameters and no output schema, the description usefully enumerates what a record contains (court, dates, case numbers, legal area, procedure, inhoudsindicatie, appeal/cassation/AG relations, referenced laws, optional full text), compensating for the absent output schema. What remains unaddressed is outcome behavior — empty result sets, pagination limits beyond the 25-result cap, and cost implications of includeText across many records.

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 documents every parameter in detail, including ECLI multiplicity, date formats, defaults and the includeText/maxTextChars interaction. The description adds little parameter-level meaning beyond restating the filter dimensions, although it does clarify that the keyword search targets title plus inhoudsindicatie. Baseline 3 is appropriate.

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 opens with a specific verb+resource pair ("Look up Dutch court decisions (uitspraken) by ECLI") and immediately states the second mode ("search them by court, legal area, date and keywords"). The explicit Dutch/Rechtspraak jurisdiction and the ECLI identifier distinguish it from siblings like eu_law_lookup and national_law_lookup without needing to name them.

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?

It clearly establishes the two usage modes — direct ECLI lookup versus filtered search — and enumerates the searchable dimensions, so an agent knows which parameters select which path. It stops short of naming alternatives or stating when to prefer a sibling (e.g. eu_law_lookup for EU instruments, national_law_lookup for non-Dutch jurisdictions), which is the main gap.

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

eu_law_lookupEU Law Lookup API (EUR-Lex): article text, in force, amendmentsA
Read-onlyIdempotent
Inspect

One call answers "what does Article 50 of the AI Act say today, is it in force, and what amended it?": the article as plain text from the current consolidated version (or the one in force on any date), the act's in-force status and dates, and the acts that amend, correct or repeal it. A second mode lists new acts in the Official Journal L series. Built for AI agents doing legal and compliance work, and for people who want a sourced answer without SPARQL.

Price: $0.005 per act-lookup.

NameRequiredDescriptionDefault
asOfNoYYYY-MM-DD, e.g. "2025-01-01": return the consolidated version that applied on that date
queryNoThe EU act to look up: a short name ("GDPR", "AI Act", "DSA", "NIS2", "DORA", "MiCA", "CSRD"...), a citation ("Regulation
articleNoArticle number, optionally with a paragraph: "5", "6(1)", "4a"; several separated by commas ("5, 6(1)", up to 10)
includeNoAny of "metadata" (always on), "amendments" (amended_by, corrected_by, repealed_by, amends, repeals), "citing" (acts and judgments that cite this act, newest first) and "text"
ojSinceNoSwitches to Official Journal mode: list acts published in the OJ L series from this date (YYYY-MM-DD, e.g. "2026-11-03") until today, newest first, at most 31 days back
keywordsNoOJ mode only: comma-separated words or phrases; an act is kept when its title (in the chosen language) contains any of them, case-insensitive, e.g. "artificial intelligence, data"
languageNoEU language code of the text and titles: BG, CS, DA, DE, EL, EN, ES, ET, FI, FR, GA, HR, HU, IT, LT, LV, MT, NL, PL, PT, RO, SK, SL, SVEN
maxCitingNoWith include "citing": how many citing acts to list, newest first, e.g. 20 (default)
maxResultsNoOJ mode only: the most acts to return, newest first, e.g. 50 (default)
maxTextCharsNoCap on article_text and text, in characters, e.g. 30000 (default)

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds two pieces of real behavioral context beyond that: the answer is drawn from the consolidated version in force (or as of a given date), and the call costs $0.005 per act-lookup — cost is material for an agent deciding whether to call. It stops short of describing response shape, truncation behavior, or failure modes when an act cannot be resolved.

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 concrete question the tool answers, then the second mode, then audience and price — a sensible ordering with little waste. The 'built for AI agents doing legal and compliance work... without SPARQL' sentence is partly positioning filler, though it does signal the tool replaces raw SPARQL access.

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 10-parameter tool with no output schema, the description covers both modes, the consolidated-version behavior, and cost, while the schema fully documents every parameter. The main gap is that with no output schema, an agent gets no sense of the response structure (how article text, in-force dates and amendment lists are composed) or how maxTextChars truncation manifests.

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 every parameter already carries its own explanation and the baseline is 3. The description's contribution is framing rather than parameter detail — it ties article, asOf, amendments and the OJ mode into a single narrative, but adds no syntax, defaults, or edge-case meaning the schema does not already state.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb-and-resource pair (retrieve article text, in-force status and amendments for an EU act from EUR-Lex) and spells out a second, distinct mode (Official Journal L series listing). It is unmistakably an EU-law tool, which implicitly separates it from national_law_lookup, but it never names or contrasts with that sibling explicitly.

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 two operating modes are described clearly enough that an agent can infer that supplying ojSince switches to OJ listing, and the framing question ('what does Article 50 of the AI Act say today...') gives a concrete use case. There is, however, no explicit when-not-to-use guidance and no routing advice versus national_law_lookup or us_federal_rules for cross-jurisdiction questions.

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

national_law_lookupUK & Dutch Law Lookup API: article text by date, in forceA
Read-onlyIdempotent
Inspect

One call answers "what does section 172 of the Companies Act 2006 say?" or "wat zegt artikel 7:658 BW?": the section or article as plain text from the official consolidated version in force today (or on any date), whether it is in force, and what changed it. Built for AI agents doing legal and compliance work, and for people who want a sourced answer without XML.

Price: $0.005 per act-lookup.

NameRequiredDescriptionDefault
asOfNoYYYY-MM-DD, e.g. "2025-01-01": return the text as in force on that date (UK point-in-time version; NL consolidated version, newest correction)
queryYesThe act, optionally with the article
articleNoSection, regulation or article number, optionally with a subsection or lid: "172", "172(1)", "7:658", "13 lid 2", "8:1"; several separated by commas (up to 5, e.g. "171, 172")
languageNoOptional, "EN" or "NL"
jurisdictionNo"UK" or "NL"
maxTextCharsNoCap on article_text, in characters, e.g. 30000 (default)

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the description is not required to establish safety. It still adds real behavioral context beyond them: the text comes from the official consolidated version, reflects the version in force today or on any asOf date, and includes in-force status and amendment provenance. It also discloses a per-call price ($0.005 per act-lookup), which matters for an agent budgeting calls; only failure modes for unknown or ambiguous articles are left unstated.

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 opening clause is well front-loaded with two concrete example questions that immediately anchor the tool. The second sentence ("Built for AI agents doing legal and compliance work, and for people who want a sourced answer without XML") is promotional and largely redundant, though the pricing line that follows carries genuine decision value. Tightening would remove roughly a quarter of the text with no loss.

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 six parameters, no output schema, and only one required field, the definition covers the essentials: what is returned (article text), in what state (in force on a date, with amendment history), and at what cost. Because no output schema exists, the description's sketch of the response contents is genuinely load-bearing. Missing only edge-case behavior, such as what happens when an article reference is ambiguous or not found.

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 of the six parameters already carries examples and patterns, so the schema does the heavy lifting. The description reinforces the asOf point-in-time semantics ("today (or on any date)") but adds no syntax, default, or constraint information beyond the schema. A baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb and resource: return the section or article text from the official consolidated version in force on a given date, plus in-force status and amendment history. The worked examples ("section 172 of the Companies Act 2006", "artikel 7:658 BW") make the UK/NL statute scope unmistakable. It does not name the near siblings (eu_law_lookup, dutch_case_law), so the agent must infer the boundary itself.

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?

Usage is conveyed only through example questions about statutes, which implies this is the tool for citing legislation text. There is no explicit when-to-use versus eu_law_lookup (EU instruments) or dutch_case_law (case law), and no stated exclusions or prerequisites. An agent can guess the routing, but the definition does not do the routing for it.

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

plan_official_records_queryPlan an official-records queryA
Read-onlyIdempotent
Inspect

Free, no key needed. Turns a question in plain words into the exact typed Bosco Labs calls that answer it: tool, input, why, and the maximum price of each step, plus what is not covered. Pass the user's question verbatim AND the entities you extracted from it (company_names, tickers, identifiers, countries, dates, law references...): the planner trusts your entities over its own parsing and puts them in the right input fields. The plan echoes them in entities_used and lists in missing what to pass for a better plan. Rules and examples first; only when they are unsure and you passed no entities does a small AI step extract the entities (budget-capped, marked assisted). Same steps, same plan_id. Run it with run_official_records_plan (paid, max_usd) or call the listed tools directly. Low confidence returns the top 3 candidate tools instead.

NameRequiredDescriptionDefault
entitiesNoWhat you (the calling agent) already extracted from the user's question. Extract these from the question yourself; the planner trusts them over its own parsing and puts them in the right input fields. The plan echoes them in `entities_used` and names what is still missing in `missing`, so you can re-call with more.
questionYesThe user's question, verbatim, e.g. "Is Rosneft on the EU sanctions list?" (English, Dutch, German or French).

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the readOnly/idempotent/non-destructive annotations, it discloses cost ('free, no key needed'), deterministic behavior ('Same steps, same plan_id'), a budget-capped optional AI extraction step marked `assisted` that fires only when no entities are passed, and the degradation path returning three candidates. It even names the output fields (`entities_used`, `missing`, `plan_id`, max price) that an agent would otherwise have to discover by calling.

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 core contract is front-loaded and every clause carries information, but it is a single dense paragraph of fragments and colon lists that takes close attention to parse. It is efficient rather than padded, though splitting the entity-trust rule from the cost/execution rules would improve scannability.

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?

For a two-parameter planner with no output schema, it covers everything an agent needs: what it returns, that it is free and deterministic, how entity passing improves the plan, the assisted-extraction fallback, and how to proceed to paid execution. No structural question is left open before invoking it.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds real semantic weight: it says to pass the question verbatim *and* extracted entities, explains that the planner trusts the entities over its own parsing, and that they are echoed in `entities_used` with `missing` naming what to add on a re-call. That is behavioral meaning the schema itself cannot express.

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 a precise verb+resource combination: it 'turns a question in plain words into the exact typed Bosco Labs calls', listing what the plan contains (tool, input, why, max price, gaps). It explicitly distinguishes itself from the sibling that executes those calls ('Run it with run_official_records_plan (paid, max_usd) or call the listed tools directly'), so an agent can separate planning from execution without opening a schema.

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?

It names the execution path (run_official_records_plan with max_usd) and the alternative of calling listed tools directly, and states the precedence rule that user-supplied entities beat the planner's own parsing. It also describes the low-confidence fallback (top 3 candidate tools). What it lacks is an explicit 'do not use this when you already know the tool' exclusion, so the routing is clear but not fully bounded.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observeddutch_case_law
    • First observedeu_law_lookup
    • First observednational_law_lookup
    • First observedplan_official_records_query

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    Enables querying over 3,200 Dutch statutes (AVG, Wetboek van Strafrecht, Burgerlijk Wetboek, etc.) with verbatim, citation-grounded text from official sources, directly from MCP-compatible AI assistants.
    18
    51 npm
    15
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Acquis gives your assistant exact, verifiable access to EU digital regulation. Instead of paraphrasing from training data, it returns the verbatim provision of the current consolidated version — with the full citation (act, article, paragraph, point), its in-force status, the consolidation date, and a deep link to EUR-Lex so every claim can be checked. The legal text is rendered from the signed c
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.