MCP server for interacting with the Scryfall MTG API
Games is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Publish a browser game from your assistant: ZIP from disk, own address, preview errors.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http games-mcp https://panel.klyo.pl/mcp
# 2 — ask your agent for something these tools do
# klyo_list_sites, klyo_preview_status, klyo_preview_diff and 36 more
Games costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http games-mcp https://panel.klyo.pl/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
39 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Wypisz domeny i wątki edycji należące do użytkownika (id wątku, domena, podgląd, licznik zmian). Read-only. Wywołaj NAJPIERW, by wybrać thread_id lub domain dla pozostałych narzędzi. Examples: • Pokaż moje strony • Wylistuj wątki dla domeny mojafirma.pl • Które strony mam u was?
| Parameter | Type | Required | Notes |
|---|---|---|---|
| domain | string | no | Opcjonalny filtr po domenie (np. mojafirma.pl). |
| limit | integer | no | Maks. liczba wątków (domyślnie 50). |
Stan podglądu (preview worktree) wskazanego wątku: czy są niezaakceptowane zmiany, ścieżki, subdomena podglądu. Read-only. Wymaga thread_id. Examples: • Jaki jest status podglądu wątku 12? • Czy mam niezapisane zmiany na tej stronie? • Pokaż link do podglądu wątku 7
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | integer | yes | Id wątku edycji (z klyo_list_sites). |
Lista zmienionych plików w podglądzie (ścieżka, +/- linie) PRZED publikacją. Read-only. Wymaga thread_id. Examples: • Co się zmieni jak opublikuję wątek 3? • Pokaż diff podglądu • Jakie pliki zmodyfikowało AI w wątku 9?
| Parameter | Type | Required | Notes |
|---|---|---|---|
| thread_id | integer | yes | Id wątku edycji (z klyo_list_sites). |
Odczytaj zawartość jednego pliku z podglądu (anti-traversal, limit 1 MiB). Read-only. Wymaga thread_id + path (relatywny do roota worktree). Examples: • Pokaż index.html z podglądu wątku 4 • Odczytaj plik styles.css z podglądu • Jak teraz wygląda about.html w wątku 11?
| Parameter | Type | Required | Notes |
|---|---|---|---|
| path | string | yes | Ścieżka pliku relatywna do roota podglądu (np. index.html). |
| thread_id | integer | yes | Id wątku edycji. |
List this account's games in the klyo games catalogue: name, address (slug), state (published, or rejected with the reason), size, visits and plays. Read-only. Call this FIRST to learn the slug the other tools need. Examples: • Which games do I have on klyo? • Is my game published yet? • Show the state of my games
No parameter schema on file.
Prepare a browser game for release on games.klyo.pl: the package (upload_id from klyo_upload_package, or a public zip_url), name, tagline, player description (at least 25 words, about 220 to be indexed by Google), genre from the list, text language and all ten answers of the content questionnaire, exactly what a person fills in in the studio wizard; limits are in the schema (name up to 30 char
| Parameter | Type | Required | Notes |
|---|---|---|---|
| ankieta | object | yes | Content questionnaire (as in the app stores): ten yes/no questions about what IS in the game. The answers decide the age label on the game page, whether ads are shown next to the game and whether the |
| bez_porno | boolean | yes | Statement by the account owner: the game has no nudity or sexual content. Must be true. We accept 18+ games for violence, but not sexual content: that is a condition of the catalogue, not a preferen |
| czas_partii | string | no | How long one round takes (“2-5 minutes”), in the jezyk_tekstu language. |
| etap | string | no | Which stage the game is at: w_budowie = in development (still changing), demo (a finished slice of a bigger game), gotowa = finished (the full game). ASK THE DEVELOPER, do not guess. With `w_bud |
| etap_dni | integer | no | Only with demo and w_budowie: after how many days (7 or 30) we remind the developer to change the stage; after the grace period a game without a decision leaves the catalogue. |
| haslo | string | yes | Tagline under the name: one sentence up to 80 characters PER LANGUAGE, no full stop at the end, plain text or one version per tag (<en>...</en><pl>...</pl>, each version counted on its own): what the |
| jezyk_tekstu | string | yes | Code of the language the name, tagline and controls are written in (pl, en, de, fr, es, pt, it, ru, uk, tr). ALWAYS give it. The description has its own <en> (required) and <pl> (+40 XP) versions, see |
| jezyki_ui | array | no | Languages of the MENU AND TEXT INSIDE THE GAME, not of the description. Players choose which languages they want to see games in, so this decides who the game is shown to. A game without a single word |
| kategoria | string | yes | Game genre from the list, UP TO THREE separated by commas (for example “platformowa,przygodowa” = platformer, adventure). Pick the ones that really describe the game, not every one that fits, or the f |
| nastroje | string | no | What the player is in the mood for, separated by commas, from the list: 5-minut, jeden-kciuk, rusz-glowa, adrenalina, klasyki, spokojne (5-minut = five-minute fun, jeden-kciuk = one thumb, rusz-glowa |
| nazwa | string | yes | ONLY the game's name, up to 30 characters PER LANGUAGE (as in Google Play and the App Store): “2048 Blockfall”, “Neon Coil: Family Arena”. One language: plain text in jezyk_tekstu. Several: one vers |
| opis | string | yes | Description for players in TWO versions (up to 4000 characters EACH, as in the studio), each in its own tag: <en>…</en> in English (REQUIRED, AT LEAST 25 words; without it the refusal `opis_en_wymagan |
| przeglad | object | no | Premium quality review, seven points with evidence. Required for stage gotowa and when no stage is given; may be omitted for demo and w_budowie. The server does not judge taste; it matches the d |
| przemoc_realistyczna | boolean | no | Legacy field: Realistic violence, blood or cruelty. Prefer the ankieta object with all the questions. |
| przemoc_rysunkowa | boolean | no | Legacy field: Cartoon or abstract violence, no blood. Prefer the ankieta object with all the questions. |
| seks | boolean | no | Legacy field: Nudity, sexual or suggestive content. Prefer the ankieta object with all the questions. |
| sklep_apple | string | no | Address of the same game in the App Store (https://apps.apple.com/…), if it is also an iPhone app. |
| sklep_play | string | no | Address of the same game in Google Play (https://play.google.com/store/apps/details?id=…), if it is also an app. A badge on the game page and in share texts; empty = no badge. |
| sterowanie_dotyk | string | no | How to play ON A PHONE, short and concrete (“swipe across the screen”), in the jezyk_tekstu language. |
| sterowanie_klawiatura | string | no | How to play ON A COMPUTER (“arrow keys and space”), in the jezyk_tekstu language. |
The way to release a game from a file on disk, with no tunnel and without exposing an unreleased game publicly. Returns three things at once: (1) paczki_w_poczekalni: packages already on the account that have not become a game yet, each with its upload_id; (2) bilet: a token valid for one hour ONLY for sending files, which you put in the Authorization: Bearer header (it opens no tool; you
No parameter schema on file.
Upload a NEW VERSION of a game that is already on the account (slug): from a file (upload_id from klyo_upload_package) or from a public zip_url. The game keeps its address, name, description, scores and hearts; only the files change. Do not create a second game to ship a fix: that splits players and records between two addresses. A published game does NOT change right away: the new version g
| Parameter | Type | Required | Notes |
|---|---|---|---|
| slug | string | yes | Game address on the account, for example lantern-thief (from klyo_my_games). |
| upload_id | string | no | ID of the NEW package sent to klyo (see klyo_upload_package). Preferred when the file is on disk. |
| zip_url | string | no | Public https address of the NEW ZIP package. Only when the package really is online. |
Roll a game (slug) back to the previous version, the one before the last klyo_release_version. Same move as “Restore” in the studio: the previous version's files are kept next to the current ones and come back with one switch, without uploading; the version we take down stays next to it (rolling back again swaps them). The game's address, scores and stats do not change. Refused with `brak_poprze
| Parameter | Type | Required | Notes |
|---|---|---|---|
| slug | string | yes | Game address in the catalogue (from klyo_my_games). |
Release to players the version waiting after klyo_update_game (slug). Same step as the “Release” button in the studio: players get the new version at once (anyone in the middle of a round sees a bar “update or finish the round”), the previous version stays with us, the game page is rebuilt and the developer's followers are notified. You may omit the kind of change (zmiana); then we use the one
| Parameter | Type | Required | Notes |
|---|---|---|---|
| nowosc | string | no | What is new: one sentence for the clip card in the feed. Only with funkcja. |
| przeglad | object | no | Premium quality review, seven points with evidence. Required unless zmiana is poprawka (a fix). The server does not judge taste; it matches the declaration against traces in the code and shows it |
| slug | string | yes | Game address on the account, for example lantern-thief (from klyo_my_games). |
| zmiana | string | no | Kind of change: poprawka = fix (the clip stays) | funkcja = feature (the clip stays, nowosc goes to the feed) | interfejs = interface (the old clip is taken down until a new one is recorded). |
Take this account's game (slug) off the portal. The first call removes it from the catalogue and takes its page down; the address stays yours and you can upload the game there again. A second call on a game that is already taken down removes it from your list for good. Scores and reviews stay attached to the address and are never handed to another game. Use it to clean up after a failed attempt,
| Parameter | Type | Required | Notes |
|---|---|---|---|
| slug | string | no | Game address in the catalogue, for example lantern-thief (from klyo_my_games). |
| upload_id | string | no | Package in the waiting room that never became a game (from klyo_upload_package or klyo_my_games → paczki). |
Visits to the game page and plays, day by day, for the given game (slug). Read-only. The developer's share of ad revenue is calculated from this. Examples: • How many people played my game this week? • Stats for lantern-thief • Show plays day by day
| Parameter | Type | Required | Notes |
|---|---|---|---|
| dni | integer | no | How many days of the daily series (default 30). |
| slug | string | yes | Game address in the catalogue, for example lantern-thief (from klyo_my_games). |
| sprawdz_google | boolean | no | Ask Google about this game's pages now (URL Inspection), at most once an hour per game. Each page then carries sprawdzono (when we asked) and odwiedziny (Google's last crawl). Google has no API to |
GAME PRODUCTION CONTRACT: CALL THIS FIRST, before you design or write a single line of a game for klyo. Returns the “studio quality” standard: screens (phone, tablet, desktop, portrait and landscape, resize), input (touch, mouse and keyboard), game loop, minimum content, sound, graphics, a catalogue of FREE game assets by genre (CC0 3D models, textures, sounds, fonts with direct download links and
No parameter schema on file.
GAME SKELETON ON KLYO KIT: call after klyo_game_requirements, before you write code. Returns two starter files (index.html, gra.js) to copy and the full kit API: game loop (menu, play and pause, game over, play again), touch, mouse, keyboard and gamepad input as one event, a canvas for any screen with safe areas, synthesized sound with no files (resumed after the app comes back from the background
| Parameter | Type | Required | Notes |
|---|---|---|---|
| rodzaj | string | no | Shape of the game: plansza = board game with turns (solo against minimax, on one device, online); zrecznosciowa = arcade, a real-time loop steered by finger or keys; logiczna (default) = puzzle, |
Full description of the klyo-gry-sdk.js kit: how a game embedded in the catalogue sends a score to the leaderboard, saves progress on the server, asks for full screen, inserts an ad break, offers a REWARDED ad and lets the player record a clip. Read-only, needs no input. CALL THIS RIGHT AFTER klyo_game_requirements, BEFORE YOU WRITE A GAME FOR klyo. Without it you will build a game with no leade
No parameter schema on file.
Set the tile players recognise the game by in the catalogue. Frames are screenshots FROM YOUR RUNNING GAME: we take them ourselves once the game is live at its own address, so they appear only AFTER release (klyo_publish_game), not during it. Call without klatka to get the list of available frames with their addresses; show them to the account owner, or look at them yourself and pick one that
| Parameter | Type | Required | Notes |
|---|---|---|---|
| klatka | integer | no | Number of the frame to set. OMIT it to get the list of frames to choose from first. |
| slug | string | yes | Game address on the account, for example lantern-thief (from klyo_my_games). |
Change the CONTENT of a game that is already in the catalogue: name, tagline, description, how to play on a phone and on a computer, round length, genre, shelves, mood, game languages, screen layout, score limit, stage, store links, content questionnaire and age. It does NOT touch the package: replacing files is klyo_update_game, which runs the game through the safety check again. A typo in the
| Parameter | Type | Required | Notes |
|---|---|---|---|
| ankieta | object | no | Content questionnaire (as in the app stores): ten yes/no questions about what IS in the game. The answers decide the age label on the game page, whether ads are shown next to the game and whether the |
| czas_partii | string | no | How long one round takes (“2-5 minutes”), in the jezyk_tekstu language. |
| etap | string | no | Which stage the game is at: w_budowie = in development (still changing), demo (a finished slice of a bigger game), gotowa = finished (the full game). ASK THE DEVELOPER, do not guess. With `w_bud |
| etap_dni | integer | no | Only with demo and w_budowie: after how many days (7 or 30) we remind the developer to change the stage; after the grace period a game without a decision leaves the catalogue. |
| haslo | string | no | Tagline under the name: one sentence up to 80 characters PER LANGUAGE, no full stop at the end, plain text or one version per tag (<en>...</en><pl>...</pl>, each version counted on its own): what the |
| jezyk_tekstu | string | no | Code of the language the name, tagline and controls are written in (pl, en, de, fr, es, pt, it, ru, uk, tr). ALWAYS give it. The description has its own <en> (required) and <pl> (+40 XP) versions, see |
| jezyki_ui | array | no | Languages of the MENU AND TEXT INSIDE THE GAME, not of the description. Players choose which languages they want to see games in, so this decides who the game is shown to. A game without a single word |
| kategoria | string | no | Game genre from the list, UP TO THREE separated by commas (for example “platformowa,przygodowa” = platformer, adventure). Pick the ones that really describe the game, not every one that fits, or the f |
| nastroje | string | no | What the player is in the mood for, separated by commas, from the list: 5-minut, jeden-kciuk, rusz-glowa, adrenalina, klasyki, spokojne (5-minut = five-minute fun, jeden-kciuk = one thumb, rusz-glowa |
| nazwa | string | no | ONLY the game's name, up to 30 characters PER LANGUAGE (as in Google Play and the App Store): “2048 Blockfall”, “Neon Coil: Family Arena”. One language: plain text in jezyk_tekstu. Several: one vers |
| opis | string | no | Description for players in TWO versions (up to 4000 characters EACH, as in the studio), each in its own tag: <en>…</en> in English (REQUIRED, AT LEAST 25 words; without it the refusal `opis_en_wymagan |
| przemoc_realistyczna | boolean | no | Legacy field: Realistic violence, blood or cruelty. Prefer the ankieta object with all the questions. |
| przemoc_rysunkowa | boolean | no | Legacy field: Cartoon or abstract violence, no blood. Prefer the ankieta object with all the questions. |
| seks | boolean | no | Legacy field: Nudity, sexual or suggestive content. Prefer the ankieta object with all the questions. |
| sklep_apple | string | no | Address of the same game in the App Store (https://apps.apple.com/…), if it is also an iPhone app. |
| sklep_play | string | no | Address of the same game in Google Play (https://play.google.com/store/apps/details?id=…), if it is also an app. A badge on the game page and in share texts; empty = no badge. |
| slug | string | yes | Game address on the account, for example lantern-thief (from klyo_my_games). |
| sterowanie_dotyk | string | no | How to play ON A PHONE, short and concrete (“swipe across the screen”), in the jezyk_tekstu language. |
| sterowanie_klawiatura | string | no | How to play ON A COMPUTER (“arrow keys and space”), in the jezyk_tekstu language. |
| strach | boolean | no | Legacy field: Scenes that may frighten children. Prefer the ankieta object with all the questions. |
Read _najpierw first: one object with what blocks the release (co), the parsed error (komunikat, miejsce file:line, biblioteka crate and version, urzadzenie device and browser), why (dlaczego, en.why) and how to fix it (jak_naprawic, en.how_to_fix). Each raw trace appears once, in bledy_przegladarki; bledy_rozbior[].linia points into it. Eyes inside the game: for a package
| Parameter | Type | Required | Notes |
|---|---|---|---|
| jezyki | array | no | With pelny: true: the languages to check (for example ["pl","en","de"]) instead of the ones the game declares. A language the game does not show is jezyk_niedostepny. |
| pelny | boolean | no | With zmierz: true: the production profile you run before etap: gotowa and before any release other than poprawka. On top of the four screens it adds a slow phone (CPU ×4, 3G network: frames, stu |
| sesja | string | no | Your test marker (1 to 24 characters: letters, digits, - and _). Open the preview on your side with ?s=<the same marker>, play, then pass it here: you get ONLY the errors from your own run, without |
| slug | string | no | Game address in the catalogue, for example lantern-thief (from klyo_my_games). |
| upload_id | string | no | ID of a package in the waiting room (from the upload response or from the preview). |
| zmierz | boolean | no | Measurement on request for a waiting-room package or a waiting version (workshop): we open the preview on four screens, collect errors and take thumbnails (dopasowanie.ekrany[].zrzut_adres). For an |
Your game's files to read, without a ZIP from the owner. Target: a game's slug or a waiting-room package's upload_id. Without path you get the list (path, size, whether it is text, hash); with path, the content of one text file, up to 200 KB at a time (read further with from_line, narrow with lines); with changes: true, what changed in the waiting version compared with the version
| Parameter | Type | Required | Notes |
|---|---|---|---|
| changes | boolean | no | Together with the list: what changed in the waiting version compared with the version players have. |
| from_line | integer | no | Line to start reading from (default 1). |
| lines | integer | no | Maximum number of lines (reading stops at 200 KB anyway). |
| path | string | no | File to read, relative to the game, for example js/gra.js. Without this field you get the file list. |
| slug | string | no | Game address, for example lantern-thief (from klyo_my_games). Give this or upload_id. |
| upload_id | string | no | A waiting-room package (from klyo_upload_package), when there is no game yet. |
Edits a game's text files (html, htm, js, mjs, css, json, svg, txt, xml, webmanifest) without a ZIP. Target: a game's slug or a waiting-room package's upload_id. The first edit opens a WORKSHOP: a copy of the game next to the version players have, with its own preview address. Players keep playing the previous version until you release the new one (klyo_release_version for a game, klyo_publish
| Parameter | Type | Required | Notes |
|---|---|---|---|
| checkpoint | string | no | A named workshop checkpoint (for example premium-ui-v1): a snapshot of the state BEFORE the changes of this call; may stand alone, without edits. An automatic auto-N checkpoint is created before e |
| discard | boolean | no | Abandon the workshop: the game loses the waiting version from the workshop (the version players have is untouched), a package returns to the files from its ZIP. Stands alone, without edits. |
| edits | array | no | Changes; applied all or none. Each: path and one of three: old_string with new_string, content or delete: true. |
| nowa | string | no | A game from scratch, without a ZIP: in the same call a package is created from the Klyo Kit skeleton (as in klyo_game_scaffold) and edits change it right away (you overwrite skeleton files without ` |
| revert | string | no | Return the workshop to a checkpoint (auto-N from an edit response or a name from checkpoint; the list is in klyo_game_files). Stands alone, without edits. The state before the revert is saved as |
| slug | string | no | Game address (from klyo_my_games). Give this or upload_id. |
| upload_id | string | no | A waiting-room package, when there is no game yet; klyo_publish_game later releases it with these edits. |
Really play your game and see it: you send input steps, you get screenshots (image content) and the game state. It runs on the OWNER'S device, never on the klyo server: the owner opens the klyo studio (https://dev.klyo.pl/) on a computer or phone and clicks "Allow" under "Your assistant wants to play …" (your call puts that request on the studio, also on one opened within 10 minutes); they see eve
| Parameter | Type | Required | Notes |
|---|---|---|---|
| close | boolean | no | End the session and close the game on the owner's device. |
| device | string | no | Which of the owner's devices (urzadzenie.id from an earlier answer); default: the most recently switched on. |
| request_id | string | no | Your id for this call: a retry with the same id returns the same result without playing again. |
| restart | boolean | no | Reload the game before the steps. |
| screen | string | no | Size of the game view on the owner's device (default: the whole device screen). |
| screenshots | integer | no | Screenshots taken after the steps (default 1 when there is no screenshot step). |
| slug | string | no | Your game's address (from klyo_my_games). Give this or upload_id. |
| steps | array | no | Input on one timeline of at most 3000 ms. Without at_ms a step starts when the previous one ends. |
| upload_id | string | no | A waiting-room package, when there is no game yet. |
Translations of a game's texts into the klyo languages (pl, en, de, fr, es, pt, it, ru, uk, tr). YOU TRANSLATE: the owner's assistant, on the owner's own AI plan; klyo runs no model and does not pay for translation. Two steps in one tool: (1) call with only slug to get the original field by field (oryginal), the original language, the languages still to do (do_tlumaczenia, with their state)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| slug | string | yes | Game address, for example lantern-thief (from klyo_my_games). |
| tlumaczenia | object | no | Omit to see what to translate. When saving: language code (pl, en, de, fr, es, pt, it, ru, uk, tr) → an object with ALL the fields from oryginal (nazwa, haslo, opis, sterowanie_dotyk, sterowanie_kla |
The developer's profile card on games.klyo.pl: “about me” and the tagline under the name. YOU WRITE: the owner's assistant, on the owner's own AI plan; klyo runs no model. Without o_mnie and haslo we return the current card, the released games (the only material you may write from) and the rules. With them, we save through the same check as the studio; an omitted field stays unchanged. Saving
| Parameter | Type | Required | Notes |
|---|---|---|---|
| haslo | string | no | One sentence up to 80 characters per language with no full stop; may have <pl>...</pl><en>...</en>, each version counted on its own. Omit to leave it as it is. |
| o_mnie | string | no | “About me” in the first person; two versions in tags <pl>…</pl><en>…</en>. Omit to only read. |
Types fields into the OPEN “New game” form in the developer's studio (dev.klyo.pl); the owner watches them fill in, corrects them and submits the form THEMSELVES. You write, on the owner's own AI plan; klyo runs no model and saves nothing: it is a draft in their browser. Without pola you get the list of fields, the allowed genres and moods, the rules and formularz_otwarty (whether the form is
| Parameter | Type | Required | Notes |
|---|---|---|---|
| pola | object | no | Fields to type in; omit to see what the form needs. |
Write a post in the klyo games community: a question, a request for playtesters, a launch or a game showcase. The post is visible immediately, with no moderation queue, and can be linked to a game from the catalogue (gra_slug); then readers get a “play” button. Examples: • Write a post on klyo about my game's launch • Ask for playtesters for my game on klyo games • Add a showcase of lantern-thi
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gra_slug | string | no | Optional: the catalogue game the post is about. |
| jezyk | string | yes | Language of the post. |
| link | string | no | Optional: address of the game in a store or on another site. |
| rodzaj | string | yes | pytanie = question | test = request for playtesters | premiera = launch | pokaz = showcase. |
| tresc | string | yes | Post text, at least 20 characters. Write like a person talking to people, without advertising slogans. |
| tytul | string | yes | Post title, 6 to 120 characters. |
Dla podanego adresu zwraca listę usterek WSKAZANYCH CO DO LINII w kodzie HTML: numer linii i kolumny, dokładny fragment kodu („jest”), gotowy kod do wstawienia („ma być”) i jedno zdanie, co to zmienia. W polu dla_agenta jest cały ten opis jako jeden blok tekstu — gotowy do wykonania bez dopytywania. Sprawdza: zakaz indeksowania, tytuł, opis pod wynikiem, nagłówek H1, język strony, adres kanonicz
| Parameter | Type | Required | Notes |
|---|---|---|---|
| adres | string | yes | Adres podstrony do sprawdzenia, np. mojafirma.pl/oferta/. |
| frazy | array | no | Opcjonalnie: słowa, po których ludzie trafiają na tę podstronę (np. z Search Console). Proponowany tytuł i opis powstaną z nich. |
Podaj listę adresów — na przykład skopiowaną z raportu „Nie znaleziono (404)” w Google Search Console — a odpowiem, co z każdym zrobić. PO CO OSOBNE NARZĘDZIE: klyo_adsense_check odkrywa strony IDĄC PO LINKACH z witryny. Google zna adresy z zupełnie innych źródeł: z DNS, z historii indeksu, z cudzych stron. Adres, do którego nic już nie linkuje, jest dla audytu niewidzialny, a w raporcie Google
| Parameter | Type | Required | Notes |
|---|---|---|---|
| adresy | array | yes | Pełne adresy https do sprawdzenia, do pięćdziesięciu naraz. Wklej je prosto z raportu Search Console. |
Sprawdź całą domenę (ze wszystkimi subdomenami, bo AdSense ocenia domenę w całości) tak, jak robi to recenzent Google: kod AdSense i ads.txt, robots dla robotów reklam, HTTPS, ilość własnej treści, powielenia, strony w budowie, martwe linki, język, polityka prywatności i jej treść, zgoda w UE, treści zakazane i ograniczone, rozmieszczenie reklam. Każda reguła ma cytat i adres dokumentacji Google o
| Parameter | Type | Required | Notes |
|---|---|---|---|
| adres | string | no | Domena do sprawdzenia, np. mojafirma.pl. Subdomena też zadziała — sprawdzimy całą domenę nadrzędną. |
| zadanie | string | no | Numer zadania z poprzedniej odpowiedzi (gotowe: false) — odbiór wyniku trwającej kontroli. |
Policz z prawdziwych danych Search Console (ostatnie 28 dni), gdzie reklama Google Ads ma sens: frazy, na których stronę widać, a prawie nikt nie klika (pozycja 4–30, CTR poniżej 2%), frazy poza zasięgiem organiku (pozycja > 30, tylko reklama tam dotrze) i frazy w pierwszej trójce, za które nie warto płacić. Zwraca wyrok jednym zdaniem, zadania (co / dlaczego / jak / zysk, z listami fraz, poka
| Parameter | Type | Required | Notes |
|---|---|---|---|
| customer_id | string | no | Numer konta Google Ads (10 cyfr, np. 123-456-7890) — wtedy analiza bierze witrynę przypiętą do tego konta. |
| witryna | string | no | Witryna z Search Console, np. sc-domain:mojafirma.pl albo https://mojafirma.pl/. Pomiń, żeby dostać analizę wszystkich witryn użytkownika. |
Ostatnie 7/28/90 dni z Google Search Console użytkownika dla witryna (sc-domain:domena.pl albo https://domena.pl/; właściciel klyo bez witryna dostaje sc-domain:klyo.pl). Zwraca sumy (kliknięcia, pokazania, klikalność, średnia pozycja) z poprzednim okresem, frazy (po czym nas znajdują), strony (co Google pokazuje), frazy_stron (pary strona → frazy z pozycją), dni (przebieg) oraz
| Parameter | Type | Required | Notes |
|---|---|---|---|
| dni | integer | no | Okno: 7, 28 (domyślnie) albo 90 dni. |
| konto | string | no | Adres e-mail podłączonego konta Google, gdy chcesz wymusić konkretne; zwykle dobierane po witrynie. |
| limit | integer | no | Ile wierszy na sekcję (domyślnie 50): frazy, strony, stron w frazy_stron i fraz na stronę. |
| sekcje | array | no | Które części zwrócić. Domyślnie wszystkie poza mapa_slow (tę daje klyo_mapa_slow). Sumy nagłówka i streszczenie są zawsze. |
| witryna | string | no | Witryna z Search Console: sc-domain:domena.pl (cała domena) albo https://domena.pl/. Właściciel klyo może pominąć (klyo.pl). |
Wnioski z Google Search Console liczone z par strona × fraza: utworz_strone (Google pokazuje stronę ogólną na konkretną frazę — brakuje osobnej podstrony), rozbuduj_strone (pozycja 8–30, o krok od pierwszej strony wyników), popraw_tytul (pozycja do 7, a klikalność poniżej połowy oczekiwanej), pokazane_bez_kliku (fraza z pokazaniami i zerem kliknięć) oraz spadek (kliknięcia niżej o 30 %+
| Parameter | Type | Required | Notes |
|---|---|---|---|
| dni | integer | no | Okno: 7, 28 (domyślnie) albo 90 dni. |
| konto | string | no | Adres e-mail podłączonego konta Google, gdy chcesz wymusić konkretne; zwykle dobierane po witrynie. |
| limit | integer | no | Ile wierszy na sekcję (domyślnie 50): frazy, strony, stron w frazy_stron i fraz na stronę. |
| sekcje | array | no | Które części zwrócić. Domyślnie wszystkie poza mapa_slow (tę daje klyo_mapa_slow). Sumy nagłówka i streszczenie są zawsze. |
| witryna | string | no | Witryna z Search Console: sc-domain:domena.pl (cała domena) albo https://domena.pl/. Właściciel klyo może pominąć (klyo.pl). |
Ile płacą reklamy w aplikacjach użytkownika (Google AdMob) — z naszej historii dzień po dniu, bez pytania Google na żywo. Zwraca wyrok jednym zdaniem, zadania (co widzimy / zrób / ile zyskam, z progami w progi), aplikacje (przychód, poprzedni okres, wyświetlenia, stawka za 1 000, klikalność, wypełnienie, najlepsze kraje, formaty), kraje (udział w przychodzie i wyświetleniach, stawka za 1
| Parameter | Type | Required | Notes |
|---|---|---|---|
| app_id | string | no | Identyfikator aplikacji AdMob (ca-app-pub-…~…, z pola app_id listy aplikacji) — zawęża wszystko do jednej aplikacji. |
| dni | integer | no | Okno pełnych dni do wczoraj: 7, 28 (domyślnie) albo 90. |
Odczyt zapisanych raportów GA4, bez zmiany kampanii. WITRYNA: historia dzienna, strony, źródła i zdarzenia. APLIKACJA: osobna platforma Android/iOS/Facebook, filtry dat, kraju, wersji, kampanii i formatu, waluta oraz strefa źródła. Unikalni użytkownicy okresu, osobodni i sesje są odrębne; powracający nie są różnicą totalUsers-newUsers. D1/D7/D30 zawierają licznik, mianownik, przedział i tylko dojr
| Parameter | Type | Required | Notes |
|---|---|---|---|
| dni | integer | no | Okno zakończonych dni, domyślnie do wczoraj: 7, 28 (domyślnie) albo 90. |
| do | string | no | Ostatni dzień YYYY-MM-DD, włącznie. |
| format | string | no | — |
| kampania | string | no | firstUserGoogleAdsCampaignId |
| kraj | string | no | ISO kraju, * dla wszystkich, pusty dla nierozpoznanego. |
| od | string | no | Pierwszy dzień YYYY-MM-DD, łącznie najwyżej 90 dni. |
| platforma | string | no | Jedna platforma, domyślnie Android. |
| property_id | string | no | Numer usługi Google Analytics (z listy uslugi poprzedniej odpowiedzi, np. "553522887"). Bez niego: pierwsza aplikacja (Firebase), a gdy jej nie ma — pierwsza witryna. |
| strefa | string | no | Strefa IANA zgodna ze źródłem, domyślnie Europe/Warsaw. |
| waluta | string | no | Waluta raportu GA4 ISO 4217, domyślnie PLN. |
| wersja | string | no | — |
Odczyt z konta Google Ads użytkownika za ostatnie 28 dni: kampanie (status, typ, strategia, budżet dzienny, pokazania, kliknięcia, koszt, konwersje, CPC, CTR) oraz frazy (dopasowanie, wynik jakości, koszt, konwersje) — do 300 fraz po koszcie. Kwoty w groszach waluty konta (waluta). Wymaga połączonego konta Google Ads i dostępu klyo do API — gdy go brak, zwraca jedno zdanie, co jest do zrobienia.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| customer_id | string | yes | Numer konta Google Ads (10 cyfr, np. 123-456-7890) z listy kont użytkownika. |
| slowa | boolean | no | Dołącz frazy z kosztami (do 300). Domyślnie true. |
Krzyżówka dla własności witryna (wymagane, np. sc-domain:games.klyo.pl — mapa jest per własność w Search Console, bo strony bierze z jej indeksowania): każda fraza-cel z popytem z planera Google Ads (szukan_miesiecznie) i stanem: brak_strony (żadna nasza strona nie mówi o tym w tytule ani adresie), poza_indeksem (strona jest, Google jej nie ma), niewidoczna (w Google, ale bez pokazań a
| Parameter | Type | Required | Notes |
|---|---|---|---|
| jezyki | array | no | Kody języków stron (np. ["pl","en"]); domyślnie języki obecne w adresach witryny. |
| konto | string | no | E-mail konta Google z Search Console, gdy witryna jest na kilku. |
| limit | integer | no | Ile fraz i zadań oddać (domyślnie 40); liczby stanu i streszczenie liczymy z całości, wszystkich mówi, ile było. |
| odswiez | boolean | no | true = zapytaj planer Google Ads o popyt teraz; false = tylko z naszej bazy; brak = odśwież, gdy popyt starszy niż 30 dni. |
| witryna | string | yes | Własność z Search Console, której mapę liczymy: sc-domain:games.klyo.pl albo https://domena.pl/. Wymagane. |
| zarodki | array | no | Frazy z ręki (do 20), od których planer ma wyjść. Zostają w mapie jako źródło „reka”, a ich popyt planer podaje osobno, dokładnie dla tych fraz. |
Realne liczby z planera Google Ads dla podanych fraz (do 20) i/lub adresu strony: średnie wyszukiwania miesięczne, konkurencja (0–100), stawka za górę strony (dół i góra widełek, w groszach). Domyślnie polski i Polska (jezyk, kraj nadpisują — kody Google). To jedyne źródło prawdziwych złotówek PRZED uruchomieniem kampanii: z tego liczysz budżet i CPC. Wymaga poziomu Basic dostępu klyo do API —
| Parameter | Type | Required | Notes |
|---|---|---|---|
| adres | string | no | Adres strony, z której planer ma wyjść (np. https://mojafirma.pl/). |
| customer_id | string | yes | Numer konta Google Ads (10 cyfr). |
| frazy | array | no | Frazy-zarodki (do 20). Można łączyć z adres. |
| jezyk | integer | no | Kod języka Google (domyślnie 1030 = polski). |
| kraj | integer | no | Kod kraju Google (domyślnie 2616 = Polska). |
| limit | integer | no | Ile pomysłów oddać, najpopularniejsze pierwsze (domyślnie 50). Odpowiedź mówi, ilu było wszystkich. |
| tylko_zarodki | boolean | no | Tylko podane frazy z ich liczbami (popyt na własne słowa), bez podobnych. |
Odczytaj dostępne dla tego konta prywatne rozmowy twórców z klyo. action=list zwraca skrzynkę, messages wymaga public_id rozmowy, file wymaga public_id i file_id z wiadomości i zwraca screenshot jako obraz albo kod jako tekst. Używa uprawnień uczestnika lub przypisanego opiekuna; nie otwiera dostępu do cudzych rozmów. Nie wysyła wiadomości, nie tworzy rozmowy i nie oznacza jej jako przeczytanej. T
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | — |
| after_id | integer | no | — |
| before_id | integer | no | — |
| file_id | integer | no | Identyfikator załącznika z messages; wymagany dla file. |
| limit | integer | no | — |
| public_id | string | no | Identyfikator rozmowy zwrócony przez list; wymagany dla messages i file. |
Zbadaj dowolną publiczną stronę i zwróć raport: na czym stoi (WordPress, Wix, Shopify, strona pisana na zamówienie), jak widzi ją Google (tytuł, opis, nagłówki, zakaz indeksowania), na jakie frazy celuje, czy wpuszcza asystentów AI, ile telefon naprawdę pobiera, czym mierzy ruch i przyjmuje płatności oraz listę usterek z kolejnością napraw. Podaj konkurent, żeby dostać drugi raport i listę `co_d
| Parameter | Type | Required | Notes |
|---|---|---|---|
| adres | string | yes | Adres badanej strony, np. mojafirma.pl albo https://mojafirma.pl/oferta/. Bez protokołu też zadziała. |
| konkurent | string | no | Opcjonalnie: adres konkurenta. Gdy podany, odpowiedź zawiera drugi raport oraz listę co_dorobic — czym badana strona odstaje od konkurenta. |
State of this connection to klyo: server version, key scope, account role, how many tools you see and whether you may write, plus the state of integrations (Google Search Console, Google Ads, AdMob, and for the owner also Cloudflare), each as ok, not_connected, auth_error or no_data, with what to do. Call it at the start of work and before you base a decision on a report whose section may
No parameter schema on file.
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Games or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.0.0.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Games can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.