MCP setup
RecommendedMCP gives an agent three read-only calculation tools over stdio. The server stays on your machine and needs no SCHNGN account or API key.
Verify the connection
Restart or refresh your MCP client, then ask it to list SCHNGN tools. You should see all three operations below.
codex mcp get schngn --json Agent skill
The skill teaches an agent when to call SCHNGN, how to shape explicit stay ranges, and when to refuse legal-status questions.
What the skill adds
- Prefers the MCP tools instead of reimplementing the date math.
- Keeps inputs to entry and exit dates for continuous Schengen stays.
- Stays within ordinary short-stay planning and points exceptional cases to official authorities.
Interface
CLI
Use the JSON CLI in scripts and agent shells. It reads strict JSON from stdin or a file and returns one JSON result.
Commands: schngn usage, schngn check-stay, and schngn latest-exit.
schngn usage --input request.json Interface
REST + OpenAPI
Start a loopback-only HTTP service for tools that speak REST. It serves a live OpenAPI document and refuses non-local bind addresses.
OpenAPI: http://127.0.0.1:37491/openapi.json
schngn-api Interface
TypeScript
Import the pure engine for low-level date math or the capability package for the strict agent contract.
Packages: @schngn/engine and @schngn/capability
npm install @schngn/capability import { calculateUsage } from '@schngn/capability';
const result = calculateUsage({
stays: [{ entryDate: '2026-01-01', exitDate: '2026-01-12' }],
referenceDate: '2026-02-01'
});Tool reference
Every interface exposes the same versioned calculation contract. Dates use YYYY-MM-DD and stay ranges include both entry and exit days.
calculate_schengen_usage
- Input
{ stays, referenceDate, includeCountedDays? }- Purpose
- Calculate days used and remaining on an explicit reference date.
check_schengen_stay
- Input
{ existingStays, candidateStay }- Purpose
- Check a proposed continuous stay on every day.
latest_safe_schengen_exit
- Input
{ existingStays, entryDate }- Purpose
- Find the latest safe exit for a stay with a known entry date.
Privacy boundary
The calculation boundary is local, but the full agent path may include cloud services.
LOCAL
SCHNGN runtime
The runtime performs no persistence, telemetry, logging of submitted dates, or outbound network requests.
HOST
Agent host and model provider
Your MCP client or agent host can send prompts, tool arguments, and results to its model provider. Review that provider's privacy and retention policies before using real travel dates.
Requirements
Node.js 24+. No SCHNGN account or API key is required. No hosted SCHNGN endpoint or network connection is required for calculation.
Scope and limitations
This capability models explicit continuous stays under the ordinary Schengen 90/180-day rule. It does not classify countries, decide visa or residence rights, or apply bilateral agreements. It is not legal advice.
Planning aid only. Competent authorities decide the authorized stay.