Developer Documentation

Everything you need to integrate Assay scores into your agent, CI pipeline, or application.

Quick Start

The Assay API is free and requires no authentication for read access.

Base URL

https://assay.tools/v1

Fetch a package score

curl https://assay.tools/v1/packages/stripe-api

API Endpoints

GET
/v1/packages

List all packages. Params: page, per_page, category, sort, q, min_security_score, min_reliability_score

GET
/v1/packages/{id}

Get a single package with full scores and metadata

GET
/v1/packages/{id}/agent-guide

Machine-readable agent guidance for a package

GET
/v1/packages/updated-since?timestamp=ISO

Change feed — packages updated since a given time

GET
/v1/categories

List all categories with package counts

GET
/v1/categories/{slug}/packages

Packages in a specific category

GET
/v1/categories/{slug}/leaderboard

Top packages in category by score dimension

GET
/v1/compare?ids=a,b,c

Side-by-side comparison of up to 5 packages

GET
/v1/stats

Sitewide statistics and score distribution

GET
/v1/queue

Packages needing evaluation or re-evaluation

Examples

Search packages by name

curl "https://assay.tools/v1/packages?q=stripe&sort=af_score"

Compare two packages

curl "https://assay.tools/v1/compare?ids=stripe-api,square-api"

Get packages with high security scores

curl "https://assay.tools/v1/packages?min_security_score=80&sort=security_score"

Python example

import httpx
resp = httpx.get("https://assay.tools/v1/packages/stripe-api")
pkg = resp.json()
print(f"{pkg['name']}: AF {pkg['af_score']}/100")

Rate Limits

Endpoint Limit
/v1/* (read) 100 requests/day per IP
/v1/checkout/* 20 requests/day per IP
/v1/evaluations 10 requests/day (API key required)

Rate limit headers are included in every response. Contact us if you need higher limits.

MCP Server

Add Assay as a tool source for your AI agent. Copy this config into your MCP client settings:

{
  "mcpServers": {
    "assay": {
      "url": "https://assay.tools/mcp"
    }
  }
}

Score Badges

Embed a live score badge in your README or documentation:

![Assay Score](https://assay.tools/badge/your-package-id.svg)

Badges update hourly and are cached for 1 hour.

OpenAPI Spec

LLMs.txt

Machine-readable site description following the llms.txt specification: