Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Mit Google anmelden, um Bewertungen zu schreiben.Prototyp · alle 30 Min. aktualisiert
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

Testsy

von testsy-aiVersion 1.0.2i★ 0iLäuft in der Cloud
Name in der Registrydev.testsy/testsy

So installierst du es

What it does

Run plain-English web QA tests and inspect check results and evidence.

  • Connects Läuft in der Cloud
  • Account or key Works without a key · add Authorization if you have one (often raises limits)
  • Category Sonstiges

Installation

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

4/4 Prüfungen bestanden · Was du fragst, läuft über den Server des Anbieters (app.testsy.dev) · ✓ Befehle geprüft am 13. Nov. 2026

Zuerst: Welche KI nutzt du?

Wähle deine App, dann erscheinen die Schritte unten.

Klappt mit Claude · etwa 2 Min.

Kein Schlüssel, nichts zu installieren · Einmal auf claude.ai oder in der Desktop-App einrichten, dann im Chat nutzen · kostenlose Konten können 1 hinzufügen · bei Team/Enterprise fügt ein Owner ihn hinzu

  1. Öffne die Connectors-Seite von Claude

    CustomizeConnectors

    CustomizeConnectors1Add2https://…3Add4
  2. Klicke „Add“ → „Custom“ → „Web“ und fülle diese 2 Felder aus

    Kopiere jeden Wert in das gleichnamige Feld in Claude und klicke Continue

    Name · NameTestsy
    Remote MCP server URL · Adressehttps://app.testsy.dev/mcp

    Klicke auf der von Claude erkannten Anmelde-Seite auf Continue · wähle bei Authentication, was der Anbieter angibt (Sign in now, Sign in when needed oder No sign in), dann Add

  3. Im Chat einschalten

    +ConnectorsTestsy

  4. Ausprobieren

    Nutze Testsy und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn Claude sagt, dass es Testsy nutzt, oder ein Werkzeug von Testsy in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit ChatGPT je nach Tarif

Volles MCP: ChatGPT Business, Enterprise oder Edu im Web · Pro: verbindet mit Lese-/Abrufrechten, Werkzeuge, die Daten ändern, gehen evtl. nicht · Plus: in der Doku nicht bestätigt; siehst du auf der Plugins-Seite eine Option für eigene MCP-Server, kannst du es versuchen · nur Web

  1. In ChatGPT im Web die Seite zum Hinzufügen von MCP öffnen

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. Name und Adresse eintragen

    Namen eingeben, Adresse unter Connection einfügen, Risikohinweis abhaken und Create as a plugin klicken

    Name · NameTestsy
    Connection · Adressehttps://app.testsy.dev/mcp
  3. Testsy im Chat auswählen

    Neuen Chat öffnen und vor dem Tippen Testsy aus deinen Plugins wählen

  4. Ausprobieren

    Nutze Testsy und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn ChatGPT sagt, dass es Testsy nutzt, oder ein Werkzeug von Testsy in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von OpenAI abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit Claude Code · etwa 2 Min.

Kein Schlüssel, nichts zu installieren

  1. Terminal öffnen

    Mac: Command+Leertaste drücken und Terminal tippen · Windows: PowerShell öffnen

  2. Diesen Befehl einfügen und Enter drücken

    claude mcp add --transport http --scope user testsy https://app.testsy.dev/mcp
  3. /mcp in Claude Code eingeben

    Testsy sollte in der Liste als verbunden erscheinen

  4. Ausprobieren

    Nutze Testsy und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn Claude Code sagt, dass es Testsy nutzt, oder ein Werkzeug von Testsy in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit Cursor · etwa 2 Min.

Kein Schlüssel, nichts zu installieren

  1. Mit diesem Button Cursor öffnen

    In Cursor öffnen

    Cursor fragt nach einer Bestätigung; klicke Install

  2. KI-Chat in Cursor im Agent-Modus öffnen

  3. Ausprobieren

    Nutze Testsy und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn Cursor sagt, dass es Testsy nutzt, oder ein Werkzeug von Testsy in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von Cursor abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit VS Code · etwa 2 Min.

Kein Schlüssel, nichts zu installieren

  1. Mit diesem Button VS Code öffnen

    In VS Code öffnen

    VS Code fragt nach einer Bestätigung; klicke Install

  2. KI-Chat in VS Code im Agent-Modus öffnen

  3. Ausprobieren

    Nutze Testsy und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn VS Code sagt, dass es Testsy nutzt, oder ein Werkzeug von Testsy in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von VS Code abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Andere Apps mit MCP, etwa Windsurf, Zed oder Gemini CLI, fügen Server unterschiedlich hinzu. Sieh in der App-Liste nach

Alle Apps mit MCP ansehen →

Adresse für Apps, die über das Web verbinden

Adressehttps://app.testsy.dev/mcp

JSON-Einstellungen stehen unten unter „Für Entwickler“

Hängst du fest? Frag Leute, die Testsy nutzen💬 Diskussion →
Für Entwickler: Terminal-Befehle und JSON-Einstellungen

Über das Web

Claude Code

claude mcp add --transport http --scope user testsy https://app.testsy.dev/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "testsy": {
      "url": "https://app.testsy.dev/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "testsy": {
      "type": "http",
      "url": "https://app.testsy.dev/mcp"
    }
  }
}

Werte, die du selbst einträgst

  • Authorization geheim HTTP header
    Optional: Bearer followed by a Testsy workspace API key. Without it, clients sign in with OAuth when a tool is first called; listing the tools needs neither.

Die Beschreibungen sind noch im englischen Original.

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

Auf einen Blick

Downloads pro Wochei
Nicht auf npm/PyPI
Bestätigte Domain
✓ testsy.dev
Verbindung
Läuft in der Cloud
Transport
streamable-http
Neueste Versioni
1.0.2
Kategoriei
Sonstiges
In der Registry veröffentlichti
10. Nov. 2026
Code zuletzt geänderti
10. Nov. 2026
Entwickler
testsy-ai
Website
testsy.dev
Registry-Status
Aktiv

Welche Apps ihn nutzen können

Basierend darauf, wie sich dieser Server verbindet, und auf der eigenen Doku jeder App, geprüft am 10. Nov. 2026.

Verbinden sich über das Internet in

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

Alle Apps, mit Vor- und Nachteilen →

Was er kann

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

  • get_workspace

    The workspace this key belongs to: its id, name and plan, and this period's usage.

  • get_usage

    Plan, runs used this billing period, included runs, extra-run packs and runs left.

  • get_network

    How our browsers reach your sites: the static addresses to allow-list, the country they browse from, and the countries available.

  • set_browse_from

    Choose the country our browsers visit your sites from (web tests), or automatic: the site's own country.

  • list_projects

    The projects in this workspace (a project groups the tests of one site or app).

  • get_project

    One project.

  • create_project

    Create a project, for example one per site or app.

  • update_project

    Rename a project or change its description.

  • delete_project

    Archive a project: its tests stop running; past runs stay in the run history.

  • list_tests

    The tests of a project, each with its latest run.

  • get_test

    One test: its start address, requirement, plan, options and latest run.

  • create_test

    Create a test of a website (url) or of an app (platform android or ios, and appId; device phone or tablet and osVersion, default a phone on the latest OS). Pass `plan` (from plan_test, after the requester confirmed it): it is stored as the approved checklist and the tester follow

  • update_test

    Change a test: its title, start address, requirement, plan or options. Only the fields you pass change; within `options`, only the options you pass change and the others keep their values.

  • delete_test

    Archive a test: it stops running; past runs stay in the run history.

  • plan_test

    Have the assistant draft a test from a plain-language description, or revise a plan, without saving anything. Returns the proposed steps, checks, values to record, assumptions and any questions only the requester can answer. Show the plan to the requester; to change it, call agai

  • list_test_files

    Files a test can upload during its steps (for example an import file).

  • add_test_file

    Add a file the tester can upload during the test: up to 25 MB, up to 10 files per test. REST: send the raw bytes as the body with the file name in the X-File-Name header (or ?name=), or JSON {name, contentBase64}. MCP: name and contentBase64. A file with the same name replaces th

  • delete_test_file

    Remove one of a test's files.

  • list_credentials

    The sign-in accounts stored for a project: names, usernames and sites. Passwords are never returned.

  • add_credential

    Store a sign-in account the tester can use. The password is encrypted, never returned, and never sent to the tester's AI: the tester types it. Tests refer to the account by name ("Sign in as the account \"customer\""). Through MCP the password passes through your AI agent: prefer

  • delete_credential

    Delete a sign-in account. Tests that sign in with it stop running until it is added again or they are edited.

  • list_endpoints

    Calls into your own systems the tester may make during a run (for example "create a voucher"). Headers are never returned.

  • add_endpoint

    Add a call the tester may make into your system. It sees only the name, the description and what the call returned. Using endpoints in a run needs a paid plan. bodyTemplate may contain {{param}} placeholders the tester fills in. Headers (for example Authorization) are encrypted a

  • delete_endpoint

    Delete an endpoint.

  • run_test

    Start a run of one test. Runs take minutes: poll get_run until final is true. watchUrl opens the run live without signing in. App tests run the newest build of their app unless buildId names another (see list_builds). watchUrl is a view-only link anyone can open (no sign-in) to w

  • run_project

    Start a run of every test in a project (a suite). Each started run has a watchUrl to watch it live without signing in. buildIds: builds to use; each app test runs the one of its own app. Tests that could not start are listed in skipped with the reason. REST: send an Idempotency-K

  • list_runs

    Recent runs, newest first, optionally for one test or project or with one status; or the runs with the given ids.

  • get_run

    A run: its status, and once final the verdict, the headline, each check's result with the reason, the values read, and links to the video, screenshots and the result page.

  • wait_run

    Wait up to seconds (default 25, at most 55) for a run to finish, then return it: one call instead of polling get_run every few seconds. Call it again while final is false. The answer comes back the moment the run is final (verdict, checks and evidence in), or when the time is up

  • stop_run

    Stop a queued or running run. A run you stop is not counted.

  • create_watch_link

    A view-only link to watch a run live and read its result, with no sign-in, valid while it runs and for some hours after. Runs started here get one automatically; this makes another, or one for a run started from the web app. The link shows the live screen, the steps and checks so

  • revoke_watch_link

    Turn off every watch link of a run straight away.

  • list_share_links

    The share links made for a run, with when they expire and how often they were opened.

  • create_share_link

    A read-only link to a run's result, replay and video that anyone can open without signing in, until it expires.

  • delete_share_link

    Turn off a share link straight away.

  • list_schedules

    When tests run by themselves: every schedule in the workspace, or those of one test or project.

  • create_schedule

    Run a test by itself: on chosen weekdays, or monthly on a day, at a time in a time zone. Each scheduled run counts like any other run.

  • update_schedule

    Pause or resume a schedule.

  • delete_schedule

    Delete a schedule.

  • list_devices

    The phones and tablets app tests can run on, and their OS versions (latest first). Pass device and osVersion to create_test, update_test, run_test or run_project. A new app test runs on a phone with the latest OS unless you choose otherwise; the version is saved with the test, so

  • list_builds

    The app builds uploaded to a project (Android .apk, iOS Simulator .app zipped), newest first, with the largest size and part size for uploads.

  • get_build

    One build: its app id, version, status and any warnings.

  • find_build

    Is this build already uploaded? Looks up the project's newest ready build by the file's sha256, else by a native fingerprint; build is null when neither matches. A sha256 match means the exact file is uploaded: run it with run_test {buildId} / run_project {buildIds} instead of up

  • create_build_upload

    Start a build upload and get signed links that upload the file without an API key: run the returned command in a shell, or PUT each part and POST complete to the links. The build is then checked and ready to run. For AI agents: tool arguments cannot carry a build, so hand the byt

  • import_build

    Fetch a build from an https link (an EAS, Bitrise, S3 or GitHub artifact link, up to the build size limit) into the project; it is checked and ready to run. Nothing to upload from your side. The link must be https to a public host name; up to 3 redirects are followed. headers (op

  • complete_build_upload

    Finish the upload with every part's etag. The build is checked (app id, version, whether our devices can run it) and returned. Use the returned build.id in run_test {buildId} or run_project {buildIds} to run the new build. Uploading alone does not start a run. The command from cr

  • delete_build

    Delete a build. Runs that used it keep their results; a build a test pins cannot be deleted.

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 14. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde über die Domain testsy.dev bestätigt (die Registry prüft, wem die Domain gehört)

  • ✓ Bestanden

    Wird noch gepflegt

    Code zuletzt geändert: vor 4 Tagen

  • – Nicht zutreffend

    Hat eine Lizenz

    Nicht relevant: Cloud-Server des Inhabers von testsy.dev; du führst keinen Code aus dem Repo aus

  • ✓ Bestanden

    Endpunkt antwortet

    Antwort in 354 ms (HTTP 200)

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Keine Anmeldung nötig

  • ✓ Bestanden

    Keine versteckten Anweisungen in Tool-Beschreibungen

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

Diskussion

Fragen, Tipps teilen oder melden, dass etwas nicht geht. Sortiert nach „hilfreich“.

Noch keine Beiträge. Stell die erste Frage oder teile einen Tipp.

Beiträge hier stammen von Nutzern, nicht vom PopNx-Team.

Mit Google anmelden, um zu posten

Nutzerbewertungen

Noch keine Bewertungen

Mit Google anmelden, um zu bewerten

Im Vergleich mit anderen in Sonstigesi

  • Mehr Sterne als 0 % der anderen 19732 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 90 % der anderen 19732 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 19732 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 Testsy sicher?

Er hat 4 von 4 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 vor 4 Tagen geändert, und die neueste Version (1.0.2) 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 und funktioniert daher auch in Apps mit Remote-MCP, etwa ChatGPT im Web (volles MCP ab Business; Pro nur lesend).

Was kann ich stattdessen nutzen?

In derselben Kategorie: World Monitor, Claude Flow, Windmill

Andere in derselben Kategorie

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

World Monitor

Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 97 tools.

von koala73Weit verbreitet★ 90.571Aktualisiert gestern

Läuft in der Cloud✓ vom Dienst · worldmonitor.app

Claude Flow

AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.

von ruvnetWeit verbreitet↓ 13.513/Wo.★ 81.591Aktualisiert vor 14 Monaten

Läuft auf deinem Computer

Windmill

Run Windmill scripts and flows and manage jobs, schedules, resources and variables.

von windmill-labsWeit verbreitet★ 18.572Aktualisiert vorgestern

Läuft in der Cloud

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.

Testsy integrations

Turn release checks into saved plain-English tests, inspect failed runs, and keep regression coverage after a fix. These packages connect coding agents to your Testsy workspace through the hosted MCP endpoint.

The three shared skills are testsy-check-release, testsy-investigate-run, and testsy-regression-from-bug. See example requests. All skills preserve expected behavior and distinguish app failures from blocked, inconclusive and execution-error outcomes.

This directory is the standalone, MIT-licensed integration package. Its license covers these integration files only; it does not license the Testsy service or the parent repository.

Published repositories (2026-10-24)

RootRepositoryInstall
sourcehttps://github.com/testsy-ai/testsy-integrationscanonical skills/, manifests, CLI copy, action
claude-marketplacehttps://github.com/testsy-ai/testsy-claude-plugins/plugin marketplace add testsy-ai/testsy-claude-plugins
cursorhttps://github.com/testsy-ai/testsy-cursordirectory submission pending
geminihttps://github.com/testsy-ai/testsy-gemini-extensiongemini extensions install https://github.com/testsy-ai/testsy-gemini-extension
actionhttps://github.com/testsy-ai/testsy-actionuses: testsy-ai/testsy-action@v1
registryMCP Registry dev.testsy/testsy 1.0.0published with DNS proof on testsy.dev (scripts/ops/mcp-registry-publish.sh)

scripts/ops/integration-publish.sh " " [tag] republishes a root after npm run export.

Build and check

Node.js 22 or later is required; no dependencies or API calls are needed:

npm run check

npm run build npm run export npm run archives

Run these commands inside integrations/testsy in the parent repository. In a standalone checkout, run them at the repository root. dist/ contains independent client packages, two local marketplace catalogs, the pinned GitHub Action and MCP Registry metadata. Every package is assembled from the same skills/ source; generated manifests do not embed credentials. The checks establish local packaging and mock-API behavior. They do not establish live-client compatibility, marketplace approval or successful hosted runs. See release requirements.

npm run export prepares independent repository roots in release/, using an explicit file allowlist for the standalone source package. It never copies the parent checkout or its Git history, initializes Git or publishes anything. release/export.json inventories every exported file by SHA-256. npm run archives prepares deterministic testsy- .tar.gz archives in release/archives/, with SHA256SUMS and release.json. Each archive extracts into one testsy- / directory. Review and copy only the chosen repository root when publishing; never run publication commands from the private parent checkout.

From the parent Testsy application checkout, npm run downloads writes the same archives and checksum metadata to the landing site's fixed apps/landing/public/downloads/testsy/ directory for its next deployment. Download publication does not create a marketplace listing. A downloaded source package supports the build commands above; a native client package is already assembled and uses its own README for installation. Run npm run downloads:check in the parent checkout to verify that the checked-in public archives still match the current package; it does not alter the public assets.

Before building in the parent repository, refresh shared configuration with npx tsx scripts/ops/config-gen.ts from its root. Edit shared/hosts.ts for addresses and apps/customer/public/cli/testsy-ai.mjs for the canonical CLI. The generator copies those into this package. In an exported standalone checkout, generated files are checked-in release inputs.

Connect your workspace

Create a workspace API key in Testsy Settings → API keys, with the run and edit permissions needed for your workflow. Keep it in a secret manager, client settings or TESTSY_AI_API_KEY environment variable. Never paste it into a prompt, screenshot or committed config. Read-only investigation needs only read access. Runs use your workspace allowance and may perform the actions described in the test.

The current endpoint and native configuration are in config.json and manifests/. API keys remain supported independently of OAuth directory connections.

Codex

After building, add the local catalog with codex plugin marketplace add ./dist/codex-marketplace, then install Testsy from that marketplace in your supported Codex client. For the downloaded catalog, extract testsy-codex-marketplace.tar.gz and use ./testsy-codex-marketplace in that command. Configure the MCP connection separately so Codex reads the bearer token from the environment rather than storing a literal key in the plugin:

codex mcp add testsy --url "$(node -p "require('./config.json').app + '/mcp'")" --bearer-token-env-var TESTSY_AI_API_KEY

Set TESTSY_AI_API_KEY securely in the environment of the client, restart it, and check its MCP and skill lists. The Codex package contains skills only; the command above supplies its API-key connection. CLI/server names can be namespaced by the host.

Claude Code

Set TESTSY_AI_API_KEY securely in the environment, then load the package for a local session:

claude --plugin-dir ./dist/claude

Published marketplace: /plugin marketplace add testsy-ai/testsy-claude-plugins, then /plugin install testsy@testsy (verified in a clean Claude Code profile, 2026-10-24). For a local build instead, run /plugin marketplace add /absolute/path/to/dist/claude-marketplace and /plugin install testsy@testsy in Claude Code. Restart the session afterwards.

Cursor

The package in dist/cursor contains a native Cursor manifest declaring the TESTSY_AI_API_KEY variable and its HTTP MCP config. It is prepared for repository submission or a team-managed plugin import; set the variable through Plugins → Configure. It is not already listed in Cursor's public marketplace.

For direct use before a listing is approved, copy the three skill folders into your project's .cursor/skills/, and merge the mcpServers entry from manifests/cursor.mcp.json into your MCP configuration using Cursor's supported secret/environment mechanism. Do not overwrite existing project configuration. Verify tool discovery in Cursor before running a test.

Gemini CLI
gemini extensions install ./dist/gemini

Supply the API key in the sensitive Testsy API key setting when prompted. Restart Gemini CLI, then inspect its MCP and skill lists. The manifest declares the environment variable explicitly because Gemini extensions sanitize inherited environment variables.

ChatGPT and portable plugin hosts

dist/portable-skills is a skills-only Agent Plugins v1 package. It needs a separate Testsy connection capable of supplying the tools. dist/openai-oauth-candidate also contains the remote MCP endpoint for OAuth discovery. Treat it as a release candidate until authorization, workspace isolation, refresh and revocation pass against the deployed service, followed by clean-install testing and directory review.

Portable Agent Plugins v1 HTTP headers are literal; ${TESTSY_AI_API_KEY} in a portable mcp.json would be sent literally. This package therefore uses native client secret mechanisms for direct API-key installs, and never claims portable API-key interpolation.

skills.sh and other Agent Skills hosts

The source skills/ directory uses standard SKILL.md files. Copy the selected skill folders into the supported skill directory of your client and connect Testsy MCP separately. Publish an exported, reviewed repository before advertising a repository-based skills install command. There is no public repository or marketplace listing implied by this source package.

CI and command line

The versioned CLI is bundled as bin/testsy.mjs and the action in action.yml executes that pinned copy. It does not fetch executable code from a mutable website at run time. The CLI supports the existing TESTSY_AI_* environment variables for compatibility.

node bin/testsy.mjs version

node bin/testsy.mjs projects node bin/testsy.mjs run --project p_myproject --junit testsy-junit.xml

Exit codes: 0 satisfies the configured gate, 1 a selected failure status, 2 usage/API/run-start failure, 3 polling timeout. The default gate fails on failed,error; use --fail-on failed,error,blocked,inconclusive,cancelled when a release requires conclusive completion of every selected test.

After copying the built action into .github/actions/testsy of your application repository:

steps:
  • uses: actions/checkout@v4
  • uses: actions/setup-node@v4 with: node-version: '22'
  • uses: ./.github/actions/testsy with: api-key: ${{ secrets.TESTSY_API_KEY }} project: p_myproject fail-on: failed,error,blocked,inconclusive,cancelled
  • uses: actions/upload-artifact@v4 if: always() with: name: testsy-results path: testsy-junit.xml

Published as testsy-ai/testsy-action (uses: testsy-ai/testsy-action@v1, release v1.0.0; verified on real GitHub Actions in the private sandbox, 2026-10-24). Pin a commit SHA in production workflows. Pin that commit SHA in production workflows. Mobile build inputs accept APKs and zipped iOS Simulator apps; check current runner availability before relying on app execution.

Registry and publication

server.json describes the existing remote MCP server, with a secret Authorization header. The dev.testsy/testsy namespace requires domain ownership authentication. Publication, public repository creation and directory review are separate external steps; see RELEASING.md.

Official format references checked on 2026-10-21: OpenAI plugin packaging, Agent Plugins specification, Claude plugin manifest, Claude marketplaces, Cursor plugins, Gemini extensions, MCP Registry remote servers.