Skip to content

EasyLPD: Swiss data protection (FADP) and GDPR

ch.easylpd/fadpeasylpd.chstreamable-httpv1.0.0Scanned

Swiss FADP (nLPD/revDSG) and GDPR: which laws apply, action plan, templates, transfers abroad.

8 tools: 1 do something that can't be undone and 7 change things.

Tools: 0 delete, 1 irreversible, 7 write, 0 read.
  • Reads private data · 0
  • Reads text others write · 0
  • Can send data out · 0
  • 2 findings

Anlyon alternative

8 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

8 tools

Can't be undone 1Claude Code: ask
  • transfer_checkUse when someone asks whether they may use a provider or send personal data to another country (cloud, hosting, CRM, US services).1 finding

    Why it is in this group

    • The name "transfer_check" says "transfer": a word for a change that another call does not undo.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "transfer_check" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "transfer_check" says "transfer": a word for a change that another call does not undo.

      What this check looks for
    Description, as the server wrote it
    Use when someone asks whether they may use a provider or send personal data to another country (cloud, hosting, CRM, US services). Whether sending personal data to a country is allowed without further safeguards under the Swiss FADP and under the EU GDPR (adequacy lists), by ISO 3166-1 alpha-2 country code. The lists change: check them before relying on the answer.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Changes things 7Claude Code: ask
  • action_planUse when someone asks what their organisation must do about data protection, or how to start.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
    Use when someone asks what their organisation must do about data protection, or how to start. The steps that apply to its profile under the Swiss FADP, the GDPR and the AI Act, in the order EasyLPD's path follows (six stages), each with the articles of each law, its weight, why it matters and the template that carries it out with the link to its page. With answers from assessment_questions, the steps already done are left out.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • assessment_questionsUse when someone wants to check where their organisation stands with data protection.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
    Use when someone wants to check where their organisation stands with data protection. The questions of EasyLPD's self-assessment that apply to an organisation's profile, each with its id, area, why it matters, its weight and the legal references. Ask them in the conversation, a few at a time, answer each with yes, partial, no, unknown (the person does not know: it counts as not in place until checked) or na, then call score_assessment.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • document_templatesUse when someone needs a privacy notice, a processor agreement (DPA), a breach procedure, a DPIA or another data protection document under the Swiss FADP or the GDPR.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
    Use when someone needs a privacy notice, a processor agreement (DPA), a breach procedure, a DPIA or another data protection document under the Swiss FADP or the GDPR. The 39 templates of EasyLPD with what each is for and the link to its page; with an id, one template with the headings of its sections, the beginning of its text and where the FADP and the GDPR ask different things. Optional search by words.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • fadp_obligationsUse for an overview of the new Swiss FADP/nLPD/revDSG.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
    Use for an overview of the new Swiss FADP/nLPD/revDSG. The main duties of the Swiss Federal Act on Data Protection (in force since 1 September 2023) for SMEs, each with its FADP and GDPR articles: who it applies to, the risk, eight duties. For what a given organisation must do, prefer action_plan. A summary, not legal advice.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • fadp_questionsUse when someone asks a common question on the Swiss FADP/nLPD/revDSG: whether it applies, differences with the GDPR, what changed in 2023, fines, personal and sensitive data, cons…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
    Use when someone asks a common question on the Swiss FADP/nLPD/revDSG: whether it applies, differences with the GDPR, what changed in 2023, fines, personal and sensitive data, consent, the FDPIC, the Swiss representative, the record of processing, retention, security measures, privacy by design, a data protection advisor (DPO), privacy notices, DPIA, profiling, training, certification, transfers abroad and standard contractual clauses, processors and joint controllers, cloud services, AI tools, cookies, newsletters, video surveillance, employees, monitoring, applicants, photos, children, anonymous data, data breaches (also an e-mail sent to the wrong person), the rights of access, deletion and portability, an FDPIC investigation. Without an id the list; with an id the answer with the articles, the detail, the FADP/GDPR table where they differ, the templates that help and the link to the page.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • score_assessmentUse after the questions of assessment_questions have been answered.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
    Use after the questions of assessment_questions have been answered. Scores them per applicable law, with the risk level and the three gaps to start from, and returns openInEasyLPD: a link that shows the same result in EasyLPD, to give to the user. Guidance, not legal advice or a certification.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • which_laws_applyUse first when someone asks which data protection laws their organisation must follow (Swiss FADP/nLPD/DSG, EU GDPR, EU AI Act), for example a Swiss company selling online to the E…1 finding

    Why it is in this group

    • The name "which_laws_apply" says "apply": 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 "which_laws_apply" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "which_laws_apply" says "apply": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Use first when someone asks which data protection laws their organisation must follow (Swiss FADP/nLPD/DSG, EU GDPR, EU AI Act), for example a Swiss company selling online to the EU. Returns the core obligations that follow for that profile and those that only one of the two laws asks, each with the articles of each law and the template that carries it out. Tells whether the Swiss Federal Act on Data Protection (FADP/LPD/DSG), the EU GDPR and the EU AI Act apply to an organisation, from five yes/no questions (GDPR art. 3 and AI Act art. 2 territorial scope included). The AI Act binds organisations established in the EU or whose AI output is used there; Switzerland has no AI law yet, but rules that keep staff from putting personal data into AI tools follow from the FADP and are good practice. Guidance, not legal advice.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

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.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data or untrusted-input or outbound.

Reads private data0
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write0
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out0
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Findings

Matches of fixed checks, with the text they matched.

2 warn
  • The server marks "which_laws_apply" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "which_laws_apply" says "apply": a word for a change.

    What this check looks for
  • The server marks "transfer_check" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "transfer_check" says "transfer": a word for a change that another call does not undo.

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http fadp https://easylpd.ch/api/mcp
claude mcp add --transport http fadp https://easylpd.ch/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [],
    "ask": [
      "mcp__fadp__which_laws_apply",
      "mcp__fadp__assessment_questions",
      "mcp__fadp__score_assessment",
      "mcp__fadp__transfer_check",
      "mcp__fadp__fadp_obligations",
      "mcp__fadp__action_plan",
      "mcp__fadp__document_templates",
      "mcp__fadp__fadp_questions"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as fadp. Review it before you use it.

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/ch.easylpd/fadp/verify?hash=05677be5fe14ea2c7e1026a46b7d9c9685f39b9d74c8143af1a6ac0dccc7ca77" | jq -e '.changed == false'

Pinned hash 05677be5fe14, from Oct 26, 2026, 09:17 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/ch.easylpd/fadp/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for ch.easylpd/fadp
[![anlyon.dev](https://anlyon.dev/badge/ch.easylpd/fadp.svg)](https://anlyon.dev/servers/ch.easylpd/fadp)

Source: MCP Registry. Synced Oct 26, 2026, 09:17 UTC.