protogrid

Search / io.github.marcosnovo/lexvibe

lexvibe

R0· no sign-in

One-step legal compliance for vibe-coded apps: privacy, terms, cookie banner and EU AI Act check.

v1.0.4 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality82good
Trust97of 100
Uptime, 30 days100%
Latency p50389 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "lexvibe": {
      "type": "http",
      "url": "https://golexvibe.com/api/mcp"
    }
  }
}
claude mcp add --transport http lexvibe https://golexvibe.com/api/mcp
[mcp_servers.lexvibe]
url = "https://golexvibe.com/api/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "lexvibe": {
      "type": "remote",
      "url": "https://golexvibe.com/api/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "lexvibe": {
      "type": "http",
      "url": "https://golexvibe.com/api/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=lexvibe&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZ29sZXh2aWJlLmNvbS9hcGkvbWNwIn0%3D"
}
{
  "servers": {
    "lexvibe": {
      "type": "http",
      "url": "https://golexvibe.com/api/mcp"
    }
  }
}
{
  "mcpServers": {
    "lexvibe": {
      "httpUrl": "https://golexvibe.com/api/mcp"
    }
  }
}
extensions:
  "lexvibe":
    enabled: true
    name: "lexvibe"
    type: streamable_http
    uri: "https://golexvibe.com/api/mcp"
    timeout: 300

Quality 82 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene79 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations10 of 10 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_install_snippet (idempotentHint); check_website (idempotentHint); check_ai_act (idempotentHint); …
  • pass
    tools.token_costabout 4,312 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changes3 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvabledeps.dev does not know @lexvibe/[email protected]

10 tools, about 4,312 tokens to load them all · tool set d338c31a66c7 · tools last changed 2026-10-17 · checked 2026-10-20 14:21 UTC

Tool changes

  • list_frameworkschangeddescription
    before

    List every privacy and AI framework LexVibe generates documents against — 60 laws across 60+ jurisdictions, including GDPR, ePrivacy, the EU AI Act, UK GDPR and PECR, Swiss nFADP, CCPA/CPRA and 18 US state privacy laws modelled individually, PIPEDA and Quebec Law 25, LGPD and other LatAm regimes, APPI, PIPA, PDPA, Australia's Privacy Act, India's DPDP, China's PIPL, Saudi and UAE PDPL, POPIA and more. Each entry carries its id, jurisdiction, effective date and official-text URL. Optionally filter by market pack or by jurisdiction. Read-only, instant.

    after · 91% of words in common

    List every privacy and AI framework LexVibe generates documents against — 55 laws across 46 jurisdictions, including GDPR, ePrivacy, the EU AI Act, UK GDPR and PECR, Swiss nFADP, 17 US state privacy laws modelled individually (CCPA/CPRA among them), PIPEDA and Quebec Law 25, LGPD and other LatAm regimes, APPI, PIPA, PDPA, Australia's Privacy Act, India's DPDP, China's PIPL, Saudi and UAE PDPL, POPIA and more. Each entry carries its id, jurisdiction, effective date and official-text URL. Optionally filter by market pack or by jurisdiction. Read-only, instant.

  • get_claim_statuschangeddescription
    before

    Check whether the user has confirmed a claim created with claim_app. While the user hasn't confirmed yet it returns {status: 'pending'} — wait a few seconds and call again (the link expires in 30 minutes). Once claimed it returns the REAL app id, the install snippet and the hosted privacy-policy URL: replace any placeholder (YOUR_APP_ID) snippet with the real one.

    after · 82% of words in common

    Check whether the user has confirmed a claim created with claim_app. While the user hasn't confirmed yet it returns {status: 'pending'} — wait a few seconds and call again (the link stays valid for 7 days). Once claimed it returns the REAL app id, the install snippet and the hosted privacy-policy URL: replace any placeholder (YOUR_APP_ID) snippet with the real one.

  • claim_appchangeddescription
    before

    Create a REAL LexVibe app in the user's account (replaces any YOUR_APP_ID placeholder). Returns a claim link: show it to the user so they can sign in and confirm — the link expires in 30 minutes. On confirmation LexVibe creates the app, scans the URL (if given), generates and hosts the legal documents. After the user confirms, call get_claim_status with the returned code to retrieve the real app id and install snippet. Provide at least `url` or `appName`.

    after · 84% of words in common

    Create a REAL LexVibe app in the user's account (replaces any YOUR_APP_ID placeholder). Returns a claim link: show it to the user so they can sign in and confirm — the link stays valid for 7 days, so the user can open it later. On confirmation LexVibe creates the app, scans the URL (if given), generates and hosts the legal documents. After the user confirms, call get_claim_status with the returned code to retrieve the real app id and install snippet. Provide at least `url` or `appName`.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 97 / 100

provenance90
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-2d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@lexvibe/[email protected] npmthis version is not known to the dependency resolver

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://golexvibe.com/api/mcp streamable-httpnoneyes100%389 ms2025-11-252026-10-20
packageregistryversionruntimesecrets
@lexvibe/mcpnpm1.0.4npx

Tools (10)

applicable_frameworksread-onlyGiven the markets a product serves, return every framework that applies, the documents it must publish, the strictest cookie-consent regime across those markets, and whether a universal opt-out signal (Global Privacy Control) has to be honoured. This is the read-only version of what generate_policies uses internally, so the answer matches the documents LexVibe would actually produce. Use it to answer 'I sell to the EU and Texas — what do I need?'. Read-only, instant.
check_ai_actread-onlyClassify a product's risk level under the EU AI Act — minimal, limited, high or prohibited — and return the applicable obligations, each with its compliance deadline (limited-risk transparency duties apply from Aug 2, 2026; Annex III high risk from Dec 2, 2027). The boolean parameters fall into three groups, all optional and defaulting to the safest 'not applicable' value: (1) transparency triggers — usesAI, interactsWithPeople, generatesContent, automatedDecisions; (2) the eight prohibited practices of art. 5 — socialScoring, realtimeBiometricPublic + realtimeBiometricLawEnforcement, emotionRecognitionWorkEducation, biometricCategorisationSensitive, untargetedFaceScraping, manipulativeOrExploitative, individualPredictivePolicing; (3) high-risk triggers — embeddedInRegulatedProduct, annexIII domains. Answer the boolean questions about what the system does; leave unknowns at their defaults, which never over-report risk. Read-only and instant.
check_storeread-onlyFree legal-compliance check of a mobile app from its PUBLIC App Store (apps.apple.com) or Google Play (play.google.com) listing URL — no repo or developer-account access needed. Follows the privacy-policy link the developer declared on the listing, analyzes that page, and returns detected data processing, compliance recommendations, whether the EU AI Act applies, and suggestedAnswers for generate_policies. Read-only.
check_websiteread-onlyFree legal-compliance check of a public website (no signup). Fetches the URL server-side and detects data processing relevant to compliance — analytics, marketing pixels, payments, generative AI, email collection, third-party sharing — then returns the legal documents and cookie-consent setup the site needs, whether the EU AI Act applies, and suggestedAnswers you can pass straight to generate_policies. Result contract: `fetched` is true only when the page HTML was actually read; when false, `fetchError` says why ("unreachable": the URL could not be resolved or connected; "blocked": the server answered with an error status) and the detected signals are NOT meaningful — report the check as inconclusive, not as clean. Run it again after adding any SDK, analytics, payment, auth or AI integration: when an appId is passed (or read from the installed LexVibe snippet) the result ALWAYS includes a `drift` key — status "in_sync", "outdated" (listing processing the hosted legal documents don't cover yet) or "unavailable" with a bounded `reason` (no-database, app-not-found, no-baseline, domain-mismatch, page-not-fetched) when the comparison could not be made; treat "unavailable" as unknown, never as in sync. Read-only.
claim_appCreate a REAL LexVibe app in the user's account (replaces any YOUR_APP_ID placeholder). Returns a claim link: show it to the user so they can sign in and confirm — the link stays valid for 7 days, so the user can open it later. On confirmation LexVibe creates the app, scans the URL (if given), generates and hosts the legal documents. After the user confirms, call get_claim_status with the returned code to retrieve the real app id and install snippet. Provide at least `url` or `appName`.
generate_policiesread-onlyGenerate the legal documents (privacy policy, terms of service and, if applicable, an AI disclosure) localized and tailored to the target markets (GDPR, UK GDPR, CCPA…). Returns Markdown drafts. Pass check_website's or check_store's suggestedAnswers as `answers` so the documents disclose the right processing. Anonymous remote generation is template-based and capped at 3 locales; AI-tailored, hosted and auto-updated documents require a LexVibe account (https://golexvibe.com).
get_claim_statusread-onlyCheck whether the user has confirmed a claim created with claim_app. While the user hasn't confirmed yet it returns {status: 'pending'} — wait a few seconds and call again (the link stays valid for 7 days). Once claimed it returns the REAL app id, the install snippet and the hosted privacy-policy URL: replace any placeholder (YOUR_APP_ID) snippet with the real one.
get_install_snippetread-onlyReturn what to install for a LexVibe app id. For web: the one-line <script> snippet (cookie banner with real script blocking + hosted policy links) to paste before </head>, plus a JSX variant for React/Next.js layouts. For iOS/Android: the hosted privacy-policy URL and the exact App Store Connect / Google Play Console fields to paste it into. No app id yet? Call claim_app to create one in the user's account.
list_frameworksread-onlyList every privacy and AI framework LexVibe generates documents against — 55 laws across 46 jurisdictions, including GDPR, ePrivacy, the EU AI Act, UK GDPR and PECR, Swiss nFADP, 17 US state privacy laws modelled individually (CCPA/CPRA among them), PIPEDA and Quebec Law 25, LGPD and other LatAm regimes, APPI, PIPA, PDPA, Australia's Privacy Act, India's DPDP, China's PIPL, Saudi and UAE PDPL, POPIA and more. Each entry carries its id, jurisdiction, effective date and official-text URL. Optionally filter by market pack or by jurisdiction. Read-only, instant.
lookup_frameworkread-onlyLook up a privacy or AI law by id and get structured, primary-sourced facts: full name, jurisdiction, effective date, applicability threshold, the documents it requires, the rights it grants, its cookie-consent regime, whether it requires honouring Global Privacy Control, key articles, and a link to the OFFICIAL text (plus the supervisory authority). Use it to answer 'what does the TDPSA require?' or 'when does the EU AI Act apply?' with citations instead of guesses. Call list_frameworks first if you don't know the id. Read-only, instant, no signup.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.marcosnovo/lexvibe",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
  "remotes": [
    {
      "url": "https://golexvibe.com/api/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.0.4",
  "packages": [
    {
      "version": "1.0.4",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@lexvibe/mcp",
      "runtimeHint": "npx",
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "environmentVariables": [
        {
          "name": "LEXVIBE_APP_ID",
          "description": "Your LexVibe app id (used in the installed snippet and API calls). Optional: if unset, tools ask for the id explicitly and warn about the placeholder."
        },
        {
          "name": "LEXVIBE_API_URL",
          "default": "https://golexvibe.com",
          "description": "Base URL of the LexVibe API. Only needed for self-hosting / development."
        },
        {
          "name": "LEXVIBE_CDN_URL",
          "default": "https://golexvibe.com",
          "description": "Base URL the widget script is served from. Only needed for self-hosting / development (defaults to the LexVibe CDN, or to LEXVIBE_API_URL when that is set)."
        },
        {
          "name": "LEXVIBE_EVENTS_URL",
          "description": "Endpoint that receives anonymous tool-usage events (mcp_tool_call) for the Platform analytics. Defaults to the LexVibe events endpoint (or LEXVIBE_API_URL + /api/events when LEXVIBE_API_URL is set). Only needed for self-hosting."
        },
        {
          "name": "LEXVIBE_TELEMETRY",
          "default": "1",
          "description": "Set to 0/false/off to disable anonymous usage telemetry. DO_NOT_TRACK=1 is also honored."
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/marcosnovo/lexvibe-mcp",
    "source": "github"
  },
  "websiteUrl": "https://golexvibe.com",
  "description": "One-step legal compliance for vibe-coded apps: privacy, terms, cookie banner and EU AI Act check."
}