selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Veridrop logo

Self-host Veridrop

v0.1.0

AI API relay authenticity and compliance detector

BetaOpen SourceAGPL-3.0
Updatedlast month
LanguagePython
Setup difficultyModerate
Stars
692
Ports
8000 (FastAPI web app when started locally with uvicorn), 8765 (Localhost port of the shipped systemd unit, intended to sit behind a reverse proxy)
Install with pip

What is Veridrop?

Should you self-host Veridrop?

Veridrop scores 45/100 on selfhost.directory (how scoring works) and ranks #9 of 13 in API. It has 692 GitHub stars.

It shipped 1 stable release in the past year. The latest, v0.1.0, came out on 15 August 2026.

Setup is moderate: expect some configuration beyond a single command. It is AGPL-3.0-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Hoppscotch Community Edition (83/100, 80 705 stars). It scores higher overall, so compare the two before you pick. See Veridrop vs Hoppscotch Community Edition side by side.

Features

  • AI API relay authenticity probing
  • API-key privacy handling
  • Asynchronous detection API
  • Baseline comparison against official APIs
  • Capability checks (PDF, tool use, structured output)
  • CLI Tooling
  • Cryptographic thinking-signature verification
  • IP rate limiting and preflight model probe
  • Long-context needle-in-a-haystack probesNot available for the Gemini protocol.
  • Multi-protocol support
  • Protocol compliance checks
  • Relay leaderboard
  • Shareable reports with JPG cards
  • Three run modes
  • Web detection service

Veridrop README

How to install Veridrop

Install Veridrop with pip

Environment variables
ANTHROPIC_BASE_URL, ANTHROPIC_API_KEY, ANTHROPIC_MODEL
git clone git@github.com:canarybyte/veridrop.git
cd veridrop
python3 -m venv venv
./venv/bin/pip install -e ".[dev,web]"

Provides the relay-detector CLI; the web app runs via `./venv/bin/uvicorn web.server:app --host 0.0.0.0 --port 8000`.

How to configure Veridrop

  • ANTHROPIC_API_KEY
  • ANTHROPIC_BASE_URLhttps://api.anthropic.comCopy to .env and fill in your values

    Copy to .env and fill in your values

  • ANTHROPIC_MODELclaude-opus-4-7
  • --api-key$ANTHROPIC_API_KEYAPI key

    API key

  • --base-url$ANTHROPIC_BASE_URL中转站根 URL

    中转站根 URL

  • --max-concurrent3并发请求数

    并发请求数

  • --modestandard`quick` / `standard` / `full`

    `quick` / `standard` / `full`

  • --modelclaude-haiku-4-5测试目标模型

    测试目标模型

  • --outputstdoutJSON 报告输出路径

    JSON 报告输出路径

  • --protocol自动`anthropic` / `openai` / `gemini`

    `anthropic` / `openai` / `gemini`

  • --timeout30单请求超时秒数

    单请求超时秒数

  • VERIDROP_WISHLIST_PATH/opt/veridrop/web_data/wishlist.txtPath of the model-wishlist text file the web app appends requests to.

    Path of the model-wishlist text file the web app appends requests to.

Veridrop releases & version history

FAQ

Claude Code became dumber — did the relay swap the model?

Run the detector with the same base_url and key your coding tool uses: a missing thinking signature points to a swapped model or stand-in gateway, while a valid signature points instead to truncated context or an injected system prompt.

How do you test a relay for watering down?

Three stages: verify the model (thinking signature for Claude, foreign usage keys for GPT), verify token accounting with controlled requests and stream versus non-stream parity, and verify capability by hiding three facts in a long text plus testing tool calls and structured output.

What does a "watered down" relay mean?

It means you get less than advertised: swapping in a cheaper or different model, over-counting tokens, or cutting capabilities such as context length, thinking, tool calling or multimodal input.

Is there a dedicated Claude relay checker, and how does it differ from the OpenAI one?

The Claude page leans on the server-signed thinking signature worth 25% of the score, while the OpenAI page has no equivalent signature and instead inspects protocol fields and usage fingerprints such as leftover claude_* keys.

How do you detect a relay sending GPT requests to a Claude backend?

The usage object is the giveaway: native OpenAI responses only carry prompt_tokens, completion_tokens and total_tokens, so claude_cache_creation_* keys or usage_source: anthropic indicate protocol conversion.

How do you spot Kiro / Amazon Q pretending to be Claude?

Those Amazon gateways run Claude traffic through a simplified Bedrock interface that returns no Anthropic server signature, so the thinking_signature detector scores them 0 and the overall test fails.

Can asking the model "who are you" verify authenticity?

Not reliably — models answer identity questions as trained and a relay can inject a system prompt. Veridrop weights the identity check at only 5% and trusts cryptographic signatures instead.

What fake tactics do relays commonly use?

Five common ones: serving Claude via Kiro, Amazon Q or Bedrock stand-ins, running Claude for GPT requests, downgrading to a cheaper variant, stripping capabilities such as thinking or PDF, and injecting an extra system prompt.

How can I tell I am getting real Claude / GPT / Gemini?

Veridrop combines three evidence classes — protocol fields, capability fingerprints such as the thinking signature, and usage fields that may leak cross-vendor traces — into its 7-10 detectors.

Are "token relay" and "API relay" the same thing?

They mean the same thing: relays resell model APIs billed by token, so both names refer to the same service, and the two things worth checking are whether the model is genuine and whether tokens are over-counted.

What are the risks of using a relay's API key?

The FAQ lists five observed patterns, including silently swapping in another model, breaking advanced features such as tool calls or PDF reading, inflating token counts, advertising models that are not actually available, and changing access rules without notice.

Are relays legal, and what could go wrong?

It is a legal grey area, but the practical risks are real: relays can disappear with your balance, answer differently from the official model, and may log your prompt content.

What is the difference between a relay and the official API?

Official APIs have fixed fields, signatures and error formats, while relays vary widely: some rewrite usage fields, drop thinking blocks, substitute another model or inject an extra system prompt.

What is an AI API relay?

A relay is a third-party forwarding service that proxies your requests to OpenAI, Anthropic or Google and returns the response; they exist because some regions cannot reach the official domains, because wholesale quota is resold cheaper, and because they unify several vendors behind one interface.

More in Testing

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…