Mcp Eu Sparql

io.github.matematicsolutions由 GitHub 账号 matematicsolutions 发布v1.2.1更新于 Oct 25, 2026

EU legislation and CJEU case law via Publications Office SPARQL (Cellar) + GDPRhub DPA decisions.

概览

AI 生成的概览

本地 MCP 服务器,让助手通过欧盟出版局 SPARQL 端点检索欧盟立法与欧盟法院判例,并查询 GDPRhub 上的数据保护机构决定。

可以做什么
按 CELEX 编号或日期范围查找欧盟法案与判决,可按文件类型和语言缩小范围。按关键词、日期或文件类型检索欧盟法院判决、命令与总法务官意见,或按 ECLI 标识符获取判决。在 GDPRhub 中全文检索各国数据保护机构决定及 GDPR 条款评注。为每条结果返回结构化引用,含标题、链接、CELEX、ECLI、日期、类型、摘要与许可信息。
适用场景
适合助手需要以可追溯引用回答欧盟法、GDPR 或欧盟法院判例问题,或查找各国数据保护决定的场景。适用于法律研究与合规工作,而非通用网页搜索。
运行要求
通过 npx 从 npm 包以 stdio 在本地运行,需要 Node.js 18 或更高版本。需要访问欧盟出版局 SPARQL 端点与 GDPRhub MediaWiki API 的外网连接。未声明账号、API 密钥、环境变量或请求头。
安装前请注意
查询会实时发送至第三方服务(欧盟出版局与 GDPRhub),检索词会离开本机。GDPRhub 内容采用 CC BY-NC-SA 4.0 许可,限制商业再利用;每条引用中会标注许可。结果均为只读查询,但覆盖范围与准确性取决于上游数据源。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Mcp Eu Sparql,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

mcp-eu-sparql

Installation (one command)

Published on npm + the MCP Registry (io.github.matematicsolutions/mcp-eu-sparql). Run without cloning:

bash
npx -y @matematicsolutions/mcp-eu-sparql

MCP client configuration (stdio):

json
{ "mcpServers": { "mcp-eu-sparql": { "command": "npx", "args": ["-y", "@matematicsolutions/mcp-eu-sparql"] } } }

(Building from source - below.)

[MCP] [License: MIT] [Node]

MCP server for EU law and CJEU case law via the Publications Office SPARQL endpoint (Cellar / EUR-Lex), plus national data-protection authority decisions via GDPRhub.

CJEU corpus in Cellar (SPARQL COUNT, 2026-07-08): 34,261 judgments (JUDG), 8,362 orders (ORDER), 14,480 Advocate-General opinions (OPIN_AG) - 57,103 judgments and opinions in total, each with CELEX + ECLI.

Tools

  • search_by_celex(celex, lang?) - act or judgment by CELEX number (e.g. 32016R0679 = GDPR, 62018CJ0311 = Schrems II).
  • search_by_date_range(date_from, date_to, document_type?, lang?, limit?)
    • acts within a date range, optionally narrowed to a type (REG / DIR / DEC / RECO / OPIN).
  • search_cjeu(query?, date_from?, date_to?, document_type?, lang?, limit?) - judgments (JUDG), orders (ORDER) and Advocate-General opinions (OPIN_AG) of the Court of Justice of the EU; optional keyword in the title (parties to the case, case number, keywords of the judgment).
  • search_cjeu_by_ecli(ecli, lang?) - CJEU judgment by ECLI identifier (e.g. ECLI:EU:C:2020:559 = Schrems II).
  • search_gdprhub(query, limit?) - full-text search in GDPRhub (the noyb project wiki): decisions of national data-protection authorities across the EU + commentary on GDPR articles. Content license: CC BY-NC-SA 4.0 - flagged in the license field of every citation.

Every response includes structuredContent.citations with the fields title, url, celex?, ecli?, publication_date?, document_type?, snippet?, license? - Patron reads this field and renders it in the UI panel as the "EU legal acts (EUR-Lex / CJEU)" section.

Stack

  • Node 18+
  • @modelcontextprotocol/sdk
  • Stdio transport (like mcp-saos)
  • Backend: HTTP POST to https://publications.europa.eu/webapi/rdf/sparql with format=application/sparql-results+json; GET to https://gdprhub.eu/api.php (MediaWiki API)

Build + run

bash
npm installnpm run buildnode dist/index.js   # starts the server on stdio

Wiring into Patron

In patron/backend/mcp-servers.json:

json
[  {    "name": "saos",    "transport": "stdio",    "command": "node",    "args": ["C:/Users/<YOUR-USER>/mcp-saos/dist/index.js"]  },  {    "name": "eu-sparql",    "transport": "stdio",    "command": "node",    "args": ["C:/Users/<YOUR-USER>/mcp-eu-sparql/dist/index.js"]  }]

Tests

bash
npm run drift          # offline: INSTRUCTIONS consistent with TOOLS and ErrorCodenpm run test:offline   # offline: query builders + parsers on fixtures (no network)npm run smoke          # live: all 5 tools against Cellar + GDPRhub

License

MIT.

Part of MateMatic

This connector queries its source live. It is one of the Polish and EU source connectors bundled in PATRON and works with any MCP client.

mcp-saos, mcp-nsa, mcp-isap, mcp-krs and mcp-eu-sparql share one structuredContent.citations contract: each tool returns an array of {title, url, snippet?, ...metadata} that legal agents can render directly in their citation panel.

See matematicsolutions/.github for the full org profile.

来源:README.md,提交 1fa0c02

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v1.2.1最新Oct 13, 2026
  2. v1.2.0Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分