npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

teste-no-mcp

v1.3.0

Published

MCP server for Teste.no — continuous testing control center for websites, APIs, and webshops

Readme

teste-no-mcp

MCP (Model Context Protocol) server for Teste.no — a continuous testing control center for websites, APIs, and webshops.

This package is a thin stdio client that connects Cursor, Claude, or any MCP-compatible host to your Teste.no instance via the tRPC API. It does not embed a database or queue — it calls your Teste.no API over HTTP with a Bearer token.

Quick start

1. Create an API token

In Teste.no, go to Settings → API Keys and create a token with the scopes you need:

  • read — list targets, findings, incidents, runs, stats
  • write — trigger tests, manage incidents, record deployments
  • admin — create/update/delete targets, muting rules, system health

2. Configure Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "teste-no": {
      "command": "npx",
      "args": ["-y", "teste-no-mcp"],
      "env": {
        "TESTE_NO_API_URL": "http://localhost:4207",
        "TESTE_NO_API_KEY": "tno_<your-api-key>"
      }
    }
  }
}

3. Verify connectivity

TESTE_NO_API_URL=http://localhost:4207 \
TESTE_NO_API_KEY=tno_xxx \
npx -y teste-no-mcp verify

Or from the package directory:

npm run verify

Environment variables

| Variable | Required | Default | Description | |----------|----------|---------|-------------| | TESTE_NO_API_KEY | Yes | — | API token (prefix tno_) from Settings → API Keys | | TESTE_NO_API_URL | No | http://localhost:4207 | Base URL of the Teste.no API server |

Available tools (30)

Read tools (16)

| Tool | Description | |------|-------------| | list_targets | List monitoring targets with status and uptime | | get_target | Target details including composite scores | | get_target_scores | Security/SEO/Performance/Accessibility scores (0-100) | | list_findings | Open issues, filter by severity/target/status | | get_finding | Finding detail with evidence and AI analysis | | list_incidents | Grouped operational issues | | get_incident | Incident detail with linked findings and deployment correlation | | list_runs | Recent test runs, filter by target/status/slug | | get_run | Run detail with metrics, score, and findings | | active_runs | Currently running and queued tests | | team_stats | Team-wide overview stats | | target_stats | Per-target statistics | | daily_trends | Time-series data for trend analysis (up to 90 days) | | get_site_map | Latest crawl snapshot with page inventory and SEO issues | | list_maintenance_windows | Scheduled maintenance windows for a target | | list_tests | All 43 available test definitions (plugins) |

Write tools (9)

| Tool | Description | |------|-------------| | trigger_test | Run a specific test by slug or ID | | trigger_all_tests | Fan-out scan of all enabled tests for a target | | acknowledge_incident | Mark an incident as acknowledged | | resolve_incident | Resolve an incident | | mute_finding | Mute an open finding | | create_maintenance_window | Schedule alert suppression window | | delete_maintenance_window | Remove a maintenance window | | record_deployment | Track a deployment for incident correlation | | recompute_scores | Force recompute composite scores |

Admin tools (5)

| Tool | Description | |------|-------------| | create_target | Add a new website/API/webshop target | | update_target | Update target properties | | delete_target | Permanently delete a target | | create_muting_rule | Auto-mute findings by pattern | | system_health | Platform health report (queues, stuck runs, stats) |

Admin tools require admin scope and the token owner must be in ADVANCED UI mode.

Bundled Cursor rule

The package includes a .cursor/rules/teste-no-mcp.mdc file that teaches agents when to call which tools. Install it globally:

npx -y teste-no-mcp install-cursor-rule

Or copy it manually to your project's .cursor/rules/ directory.

Architecture

┌──────────────┐     stdio (JSON-RPC)     ┌──────────────────┐
│  Cursor IDE  │ ◄──────────────────────► │  teste-no-mcp    │
│  (MCP host)  │                           │  (this package)  │
└──────────────┘                           └────────┬─────────┘
                                                    │ HTTP + Bearer
                                                    ▼
                                           ┌──────────────────┐
                                           │  Teste.no API    │
                                           │  (Fastify+tRPC)  │
                                           └────────┬─────────┘
                                                    │
                                            ┌───────┴───────┐
                                            │  PostgreSQL    │
                                            │  Redis+BullMQ  │
                                            └───────────────┘

The MCP package is a zero-dependency client (only @modelcontextprotocol/sdk and zod). All business logic, authorization, and data access happen in the Teste.no API.

Development (monorepo)

If developing inside the teste.no monorepo:

cd packages/teste-no-mcp
pnpm install
pnpm dev   # tsx watch mode

Publishing

cd packages/teste-no-mcp
npm version patch   # or minor/major
npm publish

The prepare script runs tsc before publish to ensure dist/ is built.

License

MIT