Skip to main content

Agentic CLI for discovering and searching Vercel Templates

Project description

Vercel Templates Discovery

Agentic CLI for discovering, indexing, and searching Vercel Templates. No public API exists — this tool fills the gap for agents and developers who want a searchable, local catalog with install commands.

Quick start (Python)

# Install from PyPI (once published)
pip install vercel-templates-discovery

# Or install locally for development
pip install -e ".[dev]"

# Or run via Docker
docker run --rm ghcr.io/imkxnnny/vercel-templates-discovery:latest vercel-templates --help

# Index the catalog
vercel-templates index

# 3. Search
vercel-templates search "AI chatbot"
vercel-templates search "ecommerce" --limit 3

# 4. Show details
vercel-templates show /templates/next.js/chatbot

# 5. Export to JSON
vercel-templates export --output templates.json

Quick start (TypeScript / WSL)

# Install globally from npm (published)
npm install -g @imkxnny/vercel-templates-discovery

# Or work locally
cd ts
npm install

# Build once, or run via tsx
npm run build
npm run typecheck:all
npm test

# Index the catalog
npx tsx src/cli.ts index

# Search / show
npx tsx src/cli.ts search "AI chatbot" --json
npx tsx src/cli.ts show /templates/next.js/chatbot --json

Why this exists

Vercel maintains a curated library of high-quality templates, but provides no SDK, CLI, or API for discovering them. This tool:

  • Crawls the Vercel Templates gallery (~277 templates).
  • Extracts metadata, GitHub URLs, and install commands.
  • Stores everything in a local SQLite cache with full-text search.
  • Exposes a simple CLI that agents can call or shell out to.

Architecture

vercel_templates/          # Python implementation
├── config.py              # categories, cache path, constants
├── scraper.py             # crawler + detail extractor + SQLite cache
└── cli.py                 # Typer CLI

ts/                        # TypeScript / Node implementation
├── src/
│   ├── scraper.ts         # crawler + detail extractor
│   ├── db.ts              # SQLite cache + FTS5 search
│   ├── cli.ts             # Commander CLI
│   ├── mcp-server.ts      # stdio JSON-RPC MCP server
│   └── index.ts           # library exports
├── tests/
│   └── scraper.test.ts    # vitest tests
└── package.json

The scraper uses fetch + cheerio + regex to parse Vercel's server-rendered pages and Next.js flight payloads. Because the catalog is small, the entire index can be rebuilt in under a minute.

Commands

Command Description
index Crawl and index the full catalog
search QUERY Full-text search over titles, descriptions, tags
show SLUG Show full details for a template
export Dump the indexed catalog to JSON
stats Show framework/category counts
serve Start the REST API server

REST API server

Run the server with:

vercel-templates serve
# or
vercel-templates serve --host 0.0.0.0 --port 8080

Endpoints:

Endpoint Description
GET /health Health check
GET /templates?q=...&limit=... Search or list templates
GET /templates/{slug} Get one template by slug (e.g. /templates/next.js/chatbot)
GET /categories List frameworks and use cases

Agentic usage

The CLI is designed to be easy for agents to consume:

# JSON output for downstream parsing
vercel-templates search "AI chatbot" --json
vercel-templates show /templates/next.js/chatbot --json

MCP server

An MCP (Model Context Protocol) server is included for direct agent integration:

# Start the MCP server
python -m vercel_templates.mcp_server
# or
vercel-templates-mcp

Available tools:

  • search_templates(query, limit) — search the catalog
  • get_template(slug) — get full details for a template
  • list_categories() — list available categories/frameworks

Example MCP client config (Claude Desktop / Cursor):

{
  "mcpServers": {
    "vercel-templates": {
      "command": "python",
      "args": ["-m", "vercel_templates.mcp_server"]
    }
  }
}

Hermes skill

A Hermes skill wrapper is provided under skills/vercel-templates/. Copy or symlink the skill into your Hermes profile's skills/ directory:

# Windows native Hermes example
copy /Y skills\vercel-templates %LOCALAPPDATA%\hermes\skills\vercel-templates
# or Hermes profile path: ~/.hermes/profiles/default/skills/vercel-templates

The skill exposes the same three tools as the MCP server and can be used directly by Hermes agents.

Project status

See docs/PROJECT_PLAN.md for the roadmap, milestones, and backlog.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vercel_templates_discovery-0.2.3.tar.gz (78.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vercel_templates_discovery-0.2.3-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file vercel_templates_discovery-0.2.3.tar.gz.

File metadata

File hashes

Hashes for vercel_templates_discovery-0.2.3.tar.gz
Algorithm Hash digest
SHA256 0bb32539cc01a501b2d184c5b1d9d2471982661ca0b7fd4a9a756c396ead1587
MD5 0fa7e069843b94b8da1c874ad84b1ae8
BLAKE2b-256 ba44fcc0fa8f95fa0158b0387f91d5cb17d79e1cc18a6523b535911c4d1292ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for vercel_templates_discovery-0.2.3.tar.gz:

Publisher: publish-pypi.yml on imKXNNY/vercel-templates-discovery

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vercel_templates_discovery-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for vercel_templates_discovery-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d4ec5b9aa0ca475ef348055bcbc198ba81d023719e5bb38f9e7ff0f84224d57e
MD5 407ad57d42debedcb5cbd21b85419e78
BLAKE2b-256 61d9a2f7434951ac50a0d60d56194e27abb5814397feef625e93ca39a52883bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for vercel_templates_discovery-0.2.3-py3-none-any.whl:

Publisher: publish-pypi.yml on imKXNNY/vercel-templates-discovery

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page