Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

IYT Test

von nikolai-shilinVersion 1.0.1i★ –iLäuft in der Cloud
Name in der Registryio.github.nikolai-shilin/iyt-test

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Sailing exam practice for IYT levels and the Racing Rules: questions, mock exams, theory. EN/RU.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft in der Cloud
  • Transport: Streamable HTTP
  • Kategorie: Sonstiges

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

Du brauchst

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:

  1. Öffne Settings → Connectors
  2. Tippe auf Add custom connector
  3. Füge die Adresse unten ein und tippe auf Add
  4. Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
SettingsConnectors1+ Add2https://…3
https://iyt.rycrentals.com/api/mcp

Führe das in deinem Terminal aus

claude mcp add --transport http iyt-test https://iyt.rycrentals.com/api/mcp

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "iyt-test": {
      "url": "https://iyt.rycrentals.com/api/mcp"
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "iyt-test": {
      "type": "http",
      "url": "https://iyt.rycrentals.com/api/mcp"
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

ChatGPT verbindet sich nur mit Servern im Internet:

  1. Öffne ChatGPT im Web → Settings → Connectors (Apps)
  2. Tippe auf Create oder Add (bei manchen Tarifen musst du zuerst Developer mode unter Advanced einschalten)
  3. Füge die Adresse unten ein, gib ihr einen Namen und speichere
  4. Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
SettingsConnectors1+ Create2https://…3
https://iyt.rycrentals.com/api/mcp

Menünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Tool-Namen und -Beschreibungen genau so, wie der Server sie am 6. Nov. 2026 gemeldet hat. Geschrieben hat sie der Entwickler, nicht wir; wir zeigen sie als reinen Text.

  • list_levels

    The levels with a question bank (IYT courses, the Racing Rules of Sailing, the charter check-in): topics, number of questions, mock-exam settings and which topics have a theory article.

  • get_questions

    Random practice questions of a level, of one topic or difficulty when given, without the answers.

  • check_answer

    Whether an option of a question is right: the right option, the one-line note that names the rule, and the theory section that explains it.

  • search_questions

    Questions whose text, options, rule reference or topic have the words (e.g. "cardinal mark", "MAYDAY"), without the answers.

  • start_mock_exam

    A mock exam of a level: the exam's number of questions spread evenly over all topics, with the time allowed and the pass mark, without the answers.

  • grade_exam

    The marks of a finished mock exam: the score, pass or fail, the result per topic, every mistake with the right answer and its note, and the theory sections to read. A question with option null was not answered and counts as wrong.

  • question_of_the_day

    Today's question, the same one the Telegram bot @iyt_test_bot sends: one text question per day (UTC), for one level when a level is given, without the answer.

  • list_theory

    The theory articles: one per topic, each in sections. With a level, the sections of its articles; without, which topics of every level have an article. Some topics have no article yet.

  • get_theory

    A theory article, or one section of it, as text: the rule, the reason, tables and links to the drawings. Study notes close to the syllabus, not official IYT text.

  • search_theory

    The sections of the theory articles that have the words (e.g. "scope", "cardinal marks"), with an excerpt of each.

  • explain_question

    A question with its answer, the note that names the rule and the full text of the theory section that explains it.

  • practice_section

    The questions on what a theory section explains, at random, without the answers.

  • get_figure

    The drawing of a question or of a theory section as SVG markup.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 9. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto nikolai-shilin bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • ✓ Bestanden

    Endpunkt antwortet

    Antwort in 487 ms (HTTP 200)

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Keine Anmeldung nötig

  • ✓ Bestanden

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Wir haben 13 Tool-Beschreibungen gelesen und keine versteckten Anweisungen an die KI gefunden

Im Vergleich mit anderen in Sonstigesi

  • Mehr Sterne als 0 % der anderen 18728 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 91 % der anderen 18728 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 18728 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist IYT Test sicher?

Er hat 3 von 3 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft in der Cloud des Entwicklers. Du verbindest dich übers Internet, ohne etwas zu installieren, aber was du sendest, läuft über die Server des Entwicklers.

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.0.1) kam vor 4 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Systemdox

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

von formulahendryAm Anfang↓ 66/Wo.★ 440Aktualisiert vor 14 Monaten

Läuft auf deinem Computer

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

von desktop-commanderWachsend★ 211Aktualisiert vor 4 Tagen

Läuft in der Cloud✓ desktopcommander.app

Systemdox

Your architecture in your agents' context: checks, specs, ADRs and docs over MCP, at write time.

von pugliesewebWachsend↓ 3028/Wo.Aktualisiert heute

Läuft auf deinem Computer

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

IYT Test

Practice questions for IYT certification levels — a Telegram mini app and a website. Every question is a situation ("you see this mark ahead — where is the safe water?"), drawn as a figure where it can be, with four options and a one-line note naming the rule. First level: Bareboat Skipper (100 questions, 10 topics).

Status (2026-11-02): design and question bank done; the Telegram mini app (practice, mock exam, progress, profile) and a small bot are built and deployed (Vercel). Website not started.

What is in the repo

README.md                       this file

docs/ PLAN.md goal, decisions, next steps question-bank.md JSON format of a bank, authoring rules, how to build it figures.md the figure spec: every type, its fields, an example figure-style.md the agreed look of the rendered figures (cameras, looks, own boat, lights, annotations) design.md look & feel, components, the 21 screens, how to use the viewer data-model.md proposed database (Supabase) and how progress is computed theory.md the theory articles: format of an article, authoring rules, check and build superpowers/plans/ implementation plans (theory articles: 2026-11-05-theory-articles.md) design/ flows.html hi-fi user flows (viewer: pages / overview, day / night) questions.html the whole bank as the student sees it, filter by topic flows.css flows.js viewer + test UI pieces app.css app tokens and base components (day and night) test-icons.js the app's icon set (24 grid, 2 px line) + svg()/paintIcons(), shared by the viewer and the app icons.html the icon sheet: every glyph at 24 px and in the topic circle, day / night icons.js older base set (Telegram chrome in the mockups; a few basics follow Lucide) figures.js figure generator (JSON spec → SVG) figure-style-spike.html reference renderer for figure-style.md (three.js from a CDN; open over HTTP) figure-schematic.js plan-view schematic renderer (the companion diagram to every realistic figure) figure-style/ sample renders of the ten example questions; hires/ at 2560 × 1600, schematic/ their plan views logo-black.svg RYC logo data/ build_bank.py source of the Bareboat Skipper bank — edit here, then run build_level.py builds the other levels from bank/ / .json (+ .ru.json) bank/ / .json VHF Radio Operator, International Crew, Flotilla Skipper: 20 questions per topic; Charter Check-in: 50; Yachtmaster Coastal, Offshore and Ocean, Racing Rules of Sailing: 100 questions/ .json the built banks the apps read questions/ .ru.json Russian translation of each bank (overlay) i18n.py extract strings to translate / check an overlay theory/ / .json theory articles, one per topic of every level (+ .ru.json): 90 in all, each with figures check_theory.mjs checks the articles against docs/theory.md and the banks (npm run check:theory) miniapp/ index.html app.js app.css the Telegram mini app (static, no framework, no backend) build.mjs builds miniapp/dist (the folder to host): the app, design files, fonts and minified banks, each linked file renamed after its content (h/…) so phones cache it for good, and the list of banks written into index.html so only the current level's bank loads at start fonts/ Merriweather and Carlito (woff2, Latin + Cyrillic, OFL), served with the app pages.mjs site.css the site around the app: a page per level and per theory article (EN + RU), sitemap, llms.txt site.mjs the public address, the bot and the IndexNow key indexnow.mjs npm run seo:ping: tells Bing and Yandex which pages changed bot/ core.mjs the bot's replies: /start /exam /progress /settings open the app, /daily asks a question daily.mjs the daily question of the day to everyone who has it on bot.mjs runs core.mjs by long polling (local testing) scripts/setup.mjs sets the bot's name, descriptions, commands and menu button scripts/webhook.mjs points Telegram at the Vercel webhook, or removes it api/ telegram.mjs Vercel function: Telegram's webhook, runs core.mjs daily.mjs Vercel cron (09:00 UTC daily): runs bot/daily.mjs settings.mjs the app's question-of-the-day switch (users.daily_question), checked with Telegram initData admin.mjs every student's results, flagged and reported questions (admins can take a flag off), joins/answers/wrong answers per hour and day for the admins (ADMINS in settings.mjs — @fullcrimp; ADMIN_USERNAMES adds more) mcp.mjs the MCP server: the banks and the theory articles as tools for AI assistants (public, read-only)

Mini app

npm run dev                     # http://localhost:5173 — works in a normal browser too

Screens follow docs/design/flows.html: A1–A9 practice (set-up sheet, Check → why → Next, results, mistakes), B1–B5 mock exam (40 questions spread over all topics, timer that pauses while the app is closed, flag + grid, pass/fail), C1 progress, C2 profile (theme, shuffle, reset). Mastery = right twice in a row. Progress is saved per user in Telegram CloudStorage (localStorage in a browser), so there is no server or database yet. Inside Telegram the app uses the native Back, Main and Secondary buttons and haptics; outside it draws the same bar itself. Deep links: ?screen=exam|progress|profile|practice|level, or startapp= with the same values. Languages: English and Russian interface (follows the Telegram language until switched in Profile; the choice is saved, like the theme). All 1000 questions are translated in data/questions/bareboat-skipper.ru.json (terms: docs/glossary-ru.md); see docs/question-bank.md.

It is live at https://iyt.rycrentals.com and connected to @iyt_test_bot: the bot's menu button opens the app, and the bot itself runs as a webhook on the same Vercel project (api/telegram.mjs). To set it up again from scratch:

  1. Put TELEGRAM_BOT_TOKEN, WEBAPP_URL and TELEGRAM_WEBHOOK_SECRET (openssl rand -hex 32) in .env.local, and the same three in the Vercel project's Production env.
  2. npx vercel deploy --prod — builds miniapp/dist and deploys the webhook function next to it.
  3. npm run bot:setup — name, descriptions, commands, menu button → the app. Then make it the bot's Main Mini App in @BotFather (Bot Settings → Configure Mini App → Enable Mini App, send WEBAPP_URL): the bot's profile gets an Open button and t.me/iyt_test_bot?startapp= links open the app straight away. Telegram has no API for this; npm run bot:setup -- --check shows whether it is on.
  4. npm run bot:webhook — tells Telegram to send updates to WEBAPP_URL/api/telegram (-- --check shows its state).

To try bot changes locally: npm run bot:webhook -- --delete, then npm run bot (long polling), and npm run bot:webhook again when done — Telegram delivers to a webhook or to polling, not both.

Question of the day

Every day (Vercel cron, 0 9 * * * UTC — 13:00 Dubai, 12:00 Moscow) the bot sends one text question with A–D buttons to each user who has it on; the answer and the note come back in the same message. Everyone gets the same question that day. The bot saves each user who writes to it in Supabase users (daily_question on by default).

  • Per user: a switch button under the daily question and in /settings ("Question of the day: on/off").
  • Whole bot: DAILY_QUESTION=off in the Vercel env stops the send for everyone (users' own switches stay).
  • Users who block the bot are marked (blocked_at) and skipped until they write again.

Needs on Vercel: SUPABASE_URL, SUPABASE_SECRET_KEY, CRON_SECRET (openssl rand -hex 32), and the migration supabase/migrations/20261102150000_daily_question.sql. Try it: npm run bot:daily -- --to (add --ru for Russian) sends today's question to one chat; npm run bot:daily -- --dry counts who would get it.

Not in this version (needs the Supabase backend in docs/data-model.md): DE/ES, the streak reminder, cross-device sync with the website, theory notes, the share image.

Search engines and AI assistants

Search engines and most AI crawlers read a page without running its JavaScript, so next to the app the build writes the site as plain pages (miniapp/pages.mjs, styled by miniapp/site.css over the app's own CSS), at https://iyt.rycrentals.com (SITE in miniapp/site.mjs):

AddressPage
/the app; its copy of Home links every level
/ the level: questions, topics, the mock exam, every topic with its article
/ / the topic's theory article with its drawings, then sample questions (one per section, a drawn one where there is one) with the answer, the note and a link to the section that explains it
/aboutwhat IYT Test is and is not, the author, the MCP server
/ru, /ru/ , /ru/ / , /ru/aboutthe same in Russian; /ru lists the levels

Every page has its own title and description, a canonical link, hreflang links to its other language, link preview tags and structured data (breadcrumbs; Article and Quiz on a topic). Nothing is written by hand but the strings in pages.mjs: a new article or a new level gets its pages on the next build. A section's opener (qa in docs/theory.md: the question a student would ask, answered in a sentence or two) goes under its heading and into the page's FAQPage data, the passage search engines and AI assistants quote. The build also writes robots.txt (AI crawlers named and let in, search and training alike: the content is free and the MCP server gives it out anyway), sitemap.xml (every page with its other language), llms.txt (the site's map for AI assistants), 404.html, the IndexNow key file and pages.json (each address with a hash of its page). npm run dev serves the pages at their clean addresses, as Vercel does (cleanUrls).

After a production deploy:

  • npm run seo:ping tells Bing and Yandex (IndexNow) which pages are new, changed or gone since the last ping (the live pages.json against miniapp/.indexnow-sent.json, which is not in git); -- --dry lists them, -- --all sends every page, -- --check only checks the key file is live.
  • Once, by hand (each needs your account): add iyt.rycrentals.com in Google Search Console, verify it with the DNS TXT record it gives (on the rycrentals.com zone), and submit sitemap.xml; then Bing Webmaster Tools → Import from Google Search Console; then Yandex Webmaster → add the site, verify (DNS or meta tag), add the sitemap.

MCP server

api/mcp.mjs gives the question banks and the theory articles to AI assistants (Claude, ChatGPT and anything else that speaks the Model Context Protocol): a student adds https://iyt.rycrentals.com/api/mcp as a remote MCP server (a custom connector) and practises in their own assistant. It is public and read-only: no sign-in, nothing is saved, and it returns only what the app already serves. How to connect it is on ht

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen