CompatLab

io.github.siddiksawaniv1.0.0Updated Oct 9, 2026

Read recorded npm loading evidence across pinned Node.js, Bun and Deno runtimes.

VerifiedStreamable HTTPWeb executableDeveloper ToolsData & Analytics

Overview

AI-generated overview

Lets an assistant read recorded npm package loading evidence across pinned Node.js, Bun and Deno runtimes via a remote read-only MCP endpoint.

What it does
CompatLab exposes two read-only tools, check_package and get_report, over a remote Streamable HTTP MCP endpoint. They return exact package versions, runtime pins, coverage details and links to existing reports about how published npm artifacts load across pinned Node.js, Bun and Deno runtimes. The tools only read existing evidence; they never submit or trigger new scans.
When to use it
Use it when you need to check whether a published npm package has recorded loading evidence for specific JavaScript runtimes before adopting or upgrading it. It is suited to compatibility questions where an existing report is enough, not to requesting fresh scans.
Requirements
A remote MCP client that supports Streamable HTTP, connecting to the provider's endpoint. No account, API key, environment variable or header is declared, and the read API is anonymous.
Before you install
Reports describe observed loading behavior, coverage and environment limits, not a general compatibility verdict; missing evidence is not proof of incompatibility. The read-only tools do not submit scans, and public reports are anonymous.

Installation

In SourceWeft

  1. Open CompatLab in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "compatlab": {
      "type": "http",
      "url": "https://compatlab.me/mcp"
    }
  }
}

README

CompatLab

CompatLab tests published npm artifacts across pinned JavaScript runtimes. Reports distinguish observed loading behavior, coverage, and environment limits from broader claims of compatibility.

Production domain: compatlab.me. Read the methodology before interpreting a passing report.

Agents can read existing evidence through the anonymous API or connect a remote MCP client to https://compatlab.me/mcp using Streamable HTTP. The read-only check_package and get_report tools return exact versions, runtime pins, coverage and report links; they never submit scans. See MCP setup and validation. Missing evidence is not a compatibility verdict.

The local engine resolves and prepares public npm artifacts with scripts disabled, seals their dependency tree, and probes them across pinned Node, Bun, and Deno runtimes. The CLI supports bounded checks and explicit snapshot reuse or lock-based rebuilds. The worker includes host ownership, capacity reservations, recovery and hostile-code qualification. The PostgreSQL catalog and private control service provide transactional admission, durable leases, authenticated result ingestion and snapshot-local dispatch. The anonymous website supports discovery, explicit scan requests, durable progress, report matrices, evidence and reproduction downloads. SSH operator controls, deployment packaging, encrypted off-host backups, retention and release-qualification gates are included; public admission defaults to disabled. See the operations runbook and qualification record. See website setup, reports, orchestration, catalog and admission, worker lifecycle, local execution, preparation, and runtime profiles for limits and prerequisites.

Development

Named assertions and CI artifacts extend the maintainer workflow. Assertions use commit-pinned offline fixtures and separate behavioral evidence. The Linux/runsc CLI can check a pre-publication archive with a distinct source identity and caller-supplied provenance.

The public maintainer section is coming soon. Its optional account implementation uses GitHub App login, encrypted OAuth tokens, live repository authority checks, revocation and account quotas, but sign-in and release monitoring stay disabled in this deployment. Public reports remain anonymous.

Use Node.js 24.21.0 from .node-version and pnpm 12.8.1 from package.json.

sh
corepack enablepnpm install --frozen-lockfilepnpm checkpnpm cli --helppnpm cli doctor --json

pnpm check runs formatting/lint checks, a strict workspace build, test type checking, and unit/CLI tests. Build before running the CLI or tests directly. Development checks work on macOS and Linux; a Docker daemon is needed for doctor, sandbox tests and the local PostgreSQL test server. See database qualification for the separate integration gate.

doctor reports whether a Linux amd64 Docker server has a registered runsc runtime. It returns exit code 1 when prerequisites are missing and never executes package code. Passing it does not qualify a host for untrusted execution. There is no fallback to running packages on the developer's machine.

On a prepared Linux amd64 host with runsc:

sh
pnpm buildpnpm test:sandbox

The smoke test builds a digest-pinned fixture image and checks ESM/CommonJS completion, module failure, fake stdout success, missing results, and abnormal exit. It uses authored fixtures only. CI installs a checksum-pinned gVisor release on a disposable GitHub-hosted runner; that installer is not for development or production machines.

Repository structure

PathImplemented responsibility
apps/cliPrerequisites, checks, CI archives, reproduction, SSH administration and backup encryption
apps/webAnonymous discovery, scan requests, durable progress and report pages
packages/engineRegistry resolution, analysis, planning and bounded probe orchestration
packages/catalogPostgreSQL identities, admission, leases, result validation, recovery and cache lookup
packages/contractsCanonical vocabulary and bounded completion validation
services/workerPreparation, sealed storage, runtime supervision and local evidence storage
services/controlPrivate WireGuard-bound worker API and reconciliation
harnessesAutomatic loading and separate named assertion completion protocols
services/maintainerRelease reconciliation, comparison and independently retried email
runtime-imagesDigest-pinned minimal runtime image recipe
fixturesAuthored module/protocol and preparation archive fixtures
infraPinned service packaging, worker provisioning, backup and recovery configuration
scriptsContainment, corpus, deployment and recovery qualification
docsArchitecture, delivery sequence, research, and decision records

Delivery and contribution

The fourteen-PR delivery plan covers the public MVP and gated maintainer workflows. The architecture plan, PRD v1.1, and research notes define the design. The original PRD is preserved as historical reference.

All project changes use feature branches and pull requests. See CONTRIBUTING.md for checks and review expectations, and SECURITY.md for reporting security issues. The repository is maintained by siddiksawani and licensed under MIT.

For operating the public site, see production operations and search discovery. The deferred maintainer release-monitoring workflow is described in monitoring and deployment.

Source: README.md at commit ac0b9bf

Tools

0
Tool metadata has not been indexed yet.

Version history

1
  1. v1.0.0LatestOct 9, 2026