← Files Stayspan Schengen DaysARCHIVED FILE

.codex-plugin/plugin.json

9.98 KB · Nov 3, 2026 · 19:09 UTC

↓ Download file

{
  "name": "schengen-days",
  "version": "1.0.1",
  "description": "Plan short stays with a rolling 90/180 day counter.",
  "author": {
    "name": "Zovo",
    "email": "support@zovo.one",
    "url": "https://zovo.one"
  },
  "homepage": "https://schengen-days.zovo.one",
  "license": "Proprietary",
  "keywords": [
    "schengen calculator",
    "90/180 rule calculator",
    "schengen 90 day rule",
    "how many days can I stay in Europe",
    "schengen days left",
    "schengen visa calculator",
    "90 days in 180 days",
    "schengen overstay",
    "days in Europe calculator"
  ],
  "skills": "./skills/",
  "mcpServers": "./.mcp.json",
  "interface": {
    "displayName": "Stayspan Schengen Days",
    "shortDescription": "Count and plan Schengen stays",
    "longDescription": "Plan Schengen short stays with a rolling 90/180 rule calculator and a daily CSV download. Stayspan Schengen Days counts entry and exit dates, reports days used and days left, identifies overstay dates and checks proposed consecutive trips.\n\nUse the interactive calendar to inspect a date, add or remove stays and recalculate. Trip planning returns the maximum stay from your entry date, the last exit that meets the rule and an entry date that supports your requested length. Reset projections show how window headroom returns over the next 180 days, assuming no further visits. Window headroom can differ from maximum consecutive stay.\n\nFor example, check a visit from January 1 through March 31, 2026 as of March 31, 2026, or plan a 30-day trip from July 1, 2026 after that visit. Accepts ISO dates and US text dates such as March 5, 2026. Shared exit/entry dates merge and count once; other overlaps are refused. Open stays end at the check date.\n\nShort stays only. Calculation aid, not legal advice; a border officer makes the decision. Bilateral agreements, special visa-waiver rules, residence permits and long-stay visas are not included. Check visa validity, permitted entries and any shorter visa-sticker allowance separately. Up to 60 stays spanning 1,100 days, years 1900\u20132100. Enter only applicable days in the Schengen area; historical country membership is not inferred.",
    "developerName": "Zovo",
    "category": "Travel",
    "capabilities": [
      "Interactive",
      "Read"
    ],
    "websiteURL": "https://schengen-days.zovo.one",
    "supportURL": "https://schengen-days.zovo.one/support",
    "privacyPolicyURL": "https://schengen-days.zovo.one/privacy",
    "termsOfServiceURL": "https://schengen-days.zovo.one/terms",
    "defaultPrompt": [
      "Check my Schengen stay January 1\u2013March 31, 2026 as of March 31, 2026.",
      "Plan 30 Schengen days from July 1, 2026 after my January 1\u2013March 31, 2026 stay.",
      "Find reset dates after my January 1\u2013March 31, 2026 stay; use March 31, 2026 as the reference date."
    ],
    "brandColor": "#0F766E",
    "brandColorDark": "#6AD6BD",
    "composerIcon": "./assets/icon.svg",
    "logo": "./assets/logo.png"
  },
  "extensions": {
    "com.openai": {
      "onboardingSkill": "./skills/schengen-days/SKILL.md",
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Exactly 90 days",
              "prompt": "Check January 1\u2013March 31, 2026 as of March 31, 2026 for my Schengen days left.",
              "tools_triggered": "calculate_schengen_days",
              "expected_behavior": "Returns 90 days used, 0 days left and 0 overstay days. No overstay date is reported. Provides a daily CSV and calendar."
            },
            {
              "description": "91-day overstay",
              "prompt": "Check January 1\u2013April 1, 2026 as of April 1, 2026 for Schengen overstay dates.",
              "tools_triggered": "calculate_schengen_days",
              "expected_behavior": "Returns 91 days used, 0 days left and 1 overstay days. First overstay date: 2026-04-01. Provides a daily CSV and calendar."
            },
            {
              "description": "Plan full length later",
              "prompt": "Plan 30 days from April 1, 2026; my past Schengen stay was January 1\u2013March 31, 2026.",
              "tools_triggered": "plan_schengen_trip",
              "expected_behavior": "Returns a maximum of 0 consecutive days from the requested entry. First entry for the requested length: 2026-06-30. Provides a daily CSV and states the calculation limits."
            },
            {
              "description": "Days return",
              "prompt": "Find days returning after January 1\u2013March 31, 2026, using March 31, 2026 as the reference date.",
              "tools_triggered": "find_schengen_reset_dates",
              "expected_behavior": "Returns 90 days used and 0 days left. First available date: 2026-06-30; full window headroom date: 2026-09-27. Provides the daily projection CSV."
            },
            {
              "description": "US text leap day",
              "prompt": "Count February 28\u2013March 1, 2024 as of March 1, 2024, including the leap day.",
              "tools_triggered": "calculate_schengen_days",
              "expected_behavior": "Returns 3 days used, 87 days left and 0 overstay days. No overstay date is reported. Provides a daily CSV and calendar."
            }
          ],
          "negative": [
            {
              "description": "No day-count tool needed for a nationality-based visa eligibility question; this plugin does not determine visa requirements.",
              "prompt": "Do US citizens need a visa for a vacation in Europe?"
            },
            {
              "description": "Residence-permit validity and renewals are outside the short-stay model; do not call the tools for permit eligibility.",
              "prompt": "Can I renew my German residence permit after it expires?"
            },
            {
              "description": "Booking and flight search are outside the date-counting scope.",
              "prompt": "Book a flight from New York to Paris for next month."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "This plugin does not sell products or process payments.",
        "demo_recording_url": "https://schengen-days.zovo.one/demo"
      },
      "publication": {
        "countries": [],
        "release_notes": "Initial release: rolling short-stay counter, consecutive trip planning, future day availability, interactive calendar and daily CSV.",
        "translations": {
          "pl-PL": {
            "subtitle": "Dni pobytu w strefie Schengen",
            "description": "Oblicz dni kr\u00f3tkiego pobytu zgodnie z zasad\u0105 90/180. Sprawd\u017a wykorzystane dni, daty przekroczenia limitu, mo\u017cliw\u0105 d\u0142ugo\u015b\u0107 kolejnej podr\u00f3\u017cy i powr\u00f3t dost\u0119pnych dni. Interaktywny kalendarz oraz plik CSV. Narz\u0119dzie pomocnicze, nie porada prawna. Nie uwzgl\u0119dnia um\u00f3w dwustronnych, zezwole\u0144 na pobyt, wiz d\u0142ugoterminowych ani dodatkowych ogranicze\u0144 wizy."
          },
          "de-DE": {
            "subtitle": "Schengen-Aufenthalte planen",
            "description": "Berechnen Sie Kurzaufenthalte nach der 90/180-Tage-Regel. Pr\u00fcfen Sie verbrauchte Tage, \u00dcberschreitungen, m\u00f6gliche Reisedauer und wieder verf\u00fcgbare Tage. Interaktiver Kalender und CSV-Download. Rechenhilfe, keine Rechtsberatung. Bilaterale Abkommen, Aufenthaltstitel, Langzeitvisa und zus\u00e4tzliche Visabeschr\u00e4nkungen sind nicht enthalten."
          },
          "es-ES": {
            "subtitle": "Cuenta tus d\u00edas en Schengen",
            "description": "Calcula estancias cortas seg\u00fan la regla de 90 d\u00edas en 180. Consulta d\u00edas usados, excesos, duraci\u00f3n posible del pr\u00f3ximo viaje y fechas de recuperaci\u00f3n. Calendario interactivo y descarga CSV. Ayuda de c\u00e1lculo, no asesor\u00eda legal. No incluye acuerdos bilaterales, permisos de residencia, visados de larga duraci\u00f3n ni l\u00edmites adicionales del visado."
          },
          "fr-FR": {
            "subtitle": "Comptez vos jours Schengen",
            "description": "Calculez les courts s\u00e9jours selon la r\u00e8gle des 90 jours sur 180. Consultez les jours utilis\u00e9s, les d\u00e9passements, la dur\u00e9e possible du prochain voyage et les dates de r\u00e9cup\u00e9ration. Calendrier interactif et t\u00e9l\u00e9chargement CSV. Aide au calcul, sans conseil juridique. Accords bilat\u00e9raux, titres de s\u00e9jour, visas de long s\u00e9jour et restrictions suppl\u00e9mentaires du visa exclus."
          },
          "ja-JP": {
            "subtitle": "\u30b7\u30a7\u30f3\u30b2\u30f3\u6ede\u5728\u65e5\u6570\u3092\u8a08\u7b97",
            "description": "180\u65e5\u9593\u306b90\u65e5\u307e\u3067\u306e\u77ed\u671f\u6ede\u5728\u30eb\u30fc\u30eb\u306b\u57fa\u3065\u3044\u3066\u8a08\u7b97\u3057\u307e\u3059\u3002\u4f7f\u7528\u65e5\u6570\u3001\u8d85\u904e\u65e5\u3001\u6b21\u306e\u65c5\u884c\u306e\u53ef\u80fd\u306a\u671f\u9593\u3001\u65e5\u6570\u304c\u623b\u308b\u65e5\u3092\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002\u64cd\u4f5c\u3067\u304d\u308b\u30ab\u30ec\u30f3\u30c0\u30fc\u3068CSV\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u306b\u5bfe\u5fdc\u3002\u8a08\u7b97\u88dc\u52a9\u3067\u3042\u308a\u6cd5\u7684\u52a9\u8a00\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u4e8c\u56fd\u9593\u5354\u5b9a\u3001\u6ede\u5728\u8a31\u53ef\u3001\u9577\u671f\u30d3\u30b6\u3001\u30d3\u30b6\u56fa\u6709\u306e\u5236\u9650\u306f\u5bfe\u8c61\u5916\u3067\u3059\u3002"
          },
          "pt-BR": {
            "subtitle": "Conte dias no espa\u00e7o Schengen",
            "description": "Calcule estadias curtas pela regra de 90 dias em 180. Consulte dias usados, excessos, dura\u00e7\u00e3o poss\u00edvel da pr\u00f3xima viagem e datas de recupera\u00e7\u00e3o. Calend\u00e1rio interativo e download CSV. Aux\u00edlio de c\u00e1lculo, n\u00e3o orienta\u00e7\u00e3o jur\u00eddica. Acordos bilaterais, autoriza\u00e7\u00f5es de resid\u00eancia, vistos de longa dura\u00e7\u00e3o e limites adicionais do visto n\u00e3o est\u00e3o inclu\u00eddos."
          }
        }
      }
    }
  },
  "apps": "./.app.json"
}

SHA-256: 93574a413facd4363d155fdfc155120513236193ac0ecbda002cd55fcb89f344