Treg: Call 3,000+ tool endpoints with one token
A tool-routing layer for agent teams: one token reaches 3,000+ endpoints without separate provider signups.
GitHub superdesigndev/treg Updated 2026-09-23 Branch main Stars 2.2K Forks 218
Python Agent tools OpenRouter FastAPI CLI Self-hosting

🧭 Decision Guide

Try it if you

  • Your agent needs SEO, backlink, social, or scraping tools across 60+ providers.
    The README opening states “3,000+ catalogued endpoints across 60+ providers” and lists SEO, backlinks, social, and scraping.
  • Your team wants to share provider credentials through one X-Treg-Token without handing keys to agents.
    The README opening says team keys can be called by every teammate's agent without the credential leaving the server; later it specifies the X-Treg-Token header.
  • You use Claude Code and want to install treg as a plugin before running treg mcp install.
    The “Or install it as a Claude Code plugin” section provides the /plugin marketplace add, /plugin install, and treg mcp install flow.
  • You need to self-host the service and can provide tmux and uv for the local FastAPI server.
    The “Run it locally” section requires tmux and uv, provides scripts/dev-local.sh up, and identifies FastAPI as a server dependency.

Skip it if you

  • You only need the CLI to connect to an existing registry but are preparing to install the full server dependencies.
    The README explicitly says pip install tools-registry provides only the CLI; running a registry requires tools-registry[server].
  • Your tools frequently return responses over 8 MiB that require settlement or ownership evidence.
    The “Architecture” section says these large responses return 502 and are not charged.
  • Your production review requires a fully public production topology and live configuration.
    The README says the official production topology and live settings are maintained in a private operator runbook.
  • You need to pin the project to a formal version number or release artifact.
    Project metadata reports 0 releases and the latest version as “No releases”.

Requirements

  • Local development requires tmux and uv; the README says “One command (needs tmux + uv)”.
  • Install the server with pip install "tools-registry[server]"; this extra adds FastAPI, database drivers, and encryption dependencies.
  • Before running from source, execute uv sync; the README says it creates the virtual environment from uv.lock and pulls server development dependencies.
  • The local default server address is http://localhost:18790; direct execution listens on 0.0.0.0:18790.
  • For the Claude Code plugin, the README provides /plugin marketplace add superdesigndev/treg and /plugin install treg@treg.

First step (verbatim from README)

curl -fsSL https://treg.to/install.sh | sh

Watch out

  • Fish Audio speech output is binary stdout, so redirect it to a file such as speech.mp3.
    The Fish Audio section states “Speech is binary stdout” and uses > speech.mp3.
  • Tools marked strict_query reject undeclared, repeated, or unsupported query parameters and request bodies.
    The Quickstart follow-up notes that catalog tools marked strict_query enforce these validations.
  • Local server development uses a separate SQLite database named treg-dev.db and page-displayed email OTPs.
    The “Run it locally” section explicitly names the own sqlite DB (treg-dev.db) and email OTP dev mode.
  • Distinguish the CLI package from the server extra before self-hosting, or you will only get the treg command.
    The Installing to run a server section says the base package is CLI only and requires tools-registry[server] for the server.

Not stated in the README

  • The README does not provide the complete catalog of 3,000+ endpoints, per-endpoint price table, or price ceilings.
  • The README does not state the SLA, quotas, concurrency limits, or data-retention policy of the Render-hosted service.
  • The README does not provide the private operator runbook's production topology, deployment steps, or high-availability configuration.
  • The README does not state the number of active users, paid calls, or production cases represented by the 2,222 stars.
  • The README does not explain the compatibility policy, upgrade commitment, or changelog behind the 0 releases.
  • The README omits the full Teams, Configuration, Tests, and License sections, so team permissions, test coverage, and license details cannot be determined from the provided material.

💡 Deep Analysis

6
Yes I need team agents to use Stripe, OpenAI, and Resend keys without letting credentials leave the server. Does Treg’s sharing model satisfy that constraint?
For: An engineering administrator managing Stripe, OpenAI, and Resend credentials who wants every member’s Agent to share tools without copying secrets

Yes, because the README explicitly supports binding team secrets to upstream URLs while agents hold only a Treg token.

  • The sharing flow uses treg secret add STRIPE_KEY --value sk_live_123 and treg add stripe --base-url https://api.stripe.com --secret STRIPE_KEY, separating secret storage from proxy routing.
  • treg upload env --select openai,stripe,resend supports importing multiple environment variables.
  • During proxying, Treg resolves the tool by host, injects the credential, and strips X-Treg-Token before forwarding. The README also says the key stays on the server.
  • treg tool ls exposes shared team tools, while treg calls provides an audit log.

This fits shared credentials, but it does not by itself establish complete enterprise governance. Secret rotation, offboarding, role granularity, and production-environment isolation require further verification.

  • README · 1. Endpoints: `treg secret add`, `treg add`, and `treg upload env`
  • README: “the key stays on the server, never in the skill”
  • README: “your `X-Treg-Token` is stripped before the upstream sees it”
  • README: “treg tool ls” and “treg calls”
treg upload env --select openai,stripe,resend     # or straight from the .env
Not stated in the README:The provided README excerpt does not specify organization roles, tool-level permissions, or automatic offboarding behavior.;It does not say whether secret rotation automatically propagates to every bound tool.
Yes I am building an Agent with Claude Code and do not want separate provider accounts for SEO, social trends, and web scraping. Can Treg give me one-token discovery and invocation?
For: A Superdesign team engineer building an agent with Claude Code who wants one token for SEO, social-trend, and web-scraping tools

Yes, because Treg’s unified entry point is specifically designed for agents calling tools rather than models.

  • The README lists “3,000+ catalogued endpoints across 60+ providers,” including SEO, backlinks, social, trends, and scraping capabilities.
  • Discovery is task-oriented: treg catalog search "backlinks for a domain" finds a capability without requiring prior knowledge of the vendor.
  • The Claude Code plugin “Installs with no token and no configuration”; its first run guides sign-in and runs treg mcp install.
  • Every tool uses the same X-Treg-Token, while upstream credentials are injected server-side and remain outside the Agent.

This does not guarantee that every catalogued tool will work. Provider quotas, account status, regional restrictions, and special authentication requirements still apply.

  • README: “3,000+ catalogued endpoints across 60+ providers”
  • README: “Ask for the task, not the tool”
  • README: “Or install it as a Claude Code plugin”
  • README: “Your token identifies you on every call (`X-Treg-Token` header)”
curl -fsSL https://treg.to/install.sh | sh
Not stated in the README:The README does not provide real-time availability, latency, or service-level data for each catalogued tool.;It does not specify how well the Claude Code plugin generates parameters or recovers from tool errors.
Yes I use Fish Audio S2.1 Pro, need to write speech output to `speech.mp3`, and must handle strict query parameters. Is the Treg CLI suitable for this automation pipeline?
For: A Python automation engineer processing Fish Audio S2.1 Pro speech generation and feeding binary output into a CI file pipeline

Yes, provided the pipeline redirects binary stdout to a file and builds requests from the catalogued input definition.

  • The README gives a complete Fish Audio S2.1 Pro example and saves binary speech with > speech.mp3; without redirection, binary output can corrupt terminal or script output.
  • The example passes the model through --header model=s2.1-pro and sends text as JSON, which fits CLI automation.
  • The README states that strict_query tools reject undeclared, repeated, or unsupported query parameters and invalid request bodies.
  • Input definitions can be inspected with treg catalog get, while voice resources can be listed with treg resources list --provider fishaudio --kind voice.

If the pipeline depends on very large responses or consistent cross-provider error semantics, the README does not establish that Treg provides them. Fish account limits still apply.

  • README Quickstart: “Speech is binary stdout, so redirect it to a file”
  • README Fish Audio example: `treg call fishaudio.tts.s2-1-pro ... > speech.mp3`
  • README: “Tools marked `strict_query` reject undeclared or repeated query parameters”
  • README: “Catalog tool inputs are described by `treg catalog get`”
treg call fishaudio.tts.s2-1-pro --method POST --header model=s2.1-pro \
  --data '{"text":"Hello from treg","format":"mp3"}' > speech.mp3
Not stated in the README:The README does not specify CLI behavior for non-zero exit codes, retries, or partial output.;It does not say whether Fish Audio errors are normalized into a stable machine-readable format.
Yes I need to publish internal SKILL.md files, CLIs, and HTTP tools as team capabilities and let member agents install them from one directory. Does Treg cover registration, sharing, and consumption end to end?
For: A Claude Code platform maintainer who needs to publish internal SKILL.md files, CLIs, and HTTP tools through one directory so member agents can install them consistently

Yes, because Treg treats a skill, its secrets, and its tools as one shareable capability unit.

  • The README defines a skill as “SKILL.md recipe + its secrets + its tool(s),” allowing the whole capability to be registered and maintained together.
  • treg upload skills --dir ~/.claude/skills --all uploads a skills directory, while teammates can install one with treg skill install seo-blog-writer.
  • API calls from an installed skill go through the Treg token, and the README explicitly says the key stays on the server rather than inside the skill.
  • The Claude Code plugin loads the treg:treg skill and guides CLI sign-in plus MCP installation, covering the Agent-side onboarding path.

If an internal CLI requires a complex local runtime, private network access, or non-standard authentication, registry sharing alone may not solve deployment and execution-environment issues.

  • README · 3. Skills: “a skill is a whole capability (`SKILL.md` recipe + its secrets + its tool(s))”
  • README: `treg upload skills --dir ~/.claude/skills --all`
  • README: `treg skill install seo-blog-writer`
  • README: “the key stays on the server, never in the skill”
treg upload skills --dir ~/.claude/skills --all   # register a folder of skills in one pass
Not stated in the README:The provided README excerpt does not specify skill versioning, dependency locking, or rollback.;It does not describe fine-grained authorization or approval flows for installing private skills.;It does not say whether Treg installs or isolates the runtime when a local CLI fails.
It depends I need to self-host Treg inside the company network, use SQLite during development, and maintain a FastAPI service with a Python team. Does the project provide a sufficient startup and server-installation path?
For: An engineering lead who must self-host the registry inside the company network, develop with SQLite, and maintain a FastAPI service with a Python team

It depends: the development and small-scale self-hosting path is fairly complete, but production operations remain your responsibility.

  • The README provides scripts/dev-local.sh up, which starts a hot-reload server, an isolated treg-dev.db, and development OTP mode.
  • Direct execution uses uv sync, uv run python -m treg upgrade, and uv run python -m treg. The project is predominantly Python, which fits a Python maintenance team.
  • Installing the server from a package requires pip install "tools-registry[server]"; the base package provides only the CLI.
  • Self-hosting requires generating and protecting TREG_SECRET_KEY, because encrypted credentials are stored centrally on the server.

The production topology is not public: the README points to a private operator runbook. High availability, backup, monitoring, and upgrade procedures therefore cannot be confirmed from the public documentation alone.

  • README Part 2 · Self-hosting & development: `scripts/dev-local.sh up`
  • README: “its own sqlite DB (`treg-dev.db`)”
  • README: “install the server extra — `pip install "tools-registry[server]"`”
  • Project insight: credentials use Fernet encryption; self-hosting still requires database, key, and monitoring operations
scripts/dev-local.sh up        # server on http://localhost:18790, dev-safe settings
Not stated in the README:The README does not disclose the production database type, scaling model, backup strategy, or monitoring metrics.;The project has no recorded releases, so upgrade compatibility and rollback procedures are unknown.
It depends I need agents to call external tools while controlling credential and data boundaries. Is Treg’s hosted proxy suitable for production, or do I need to self-host it?
For: A security architect at an enterprise with strict data-residency and provider-compliance requirements, evaluating hosted versus self-hosted boundaries

It depends: Treg reduces credential propagation, but a unified proxy alone does not satisfy strict residency or compliance requirements.

  • The proxy stores and decrypts credentials server-side before injecting them into requests. Agents need only one token, reducing secret copying but concentrating high-value keys in the Treg server.
  • The official hosted service is treg.to, and the README says it is hosted on Render. The excerpt does not specify processing locations, retention periods, or cross-border data paths.
  • The project supports self-hosting and documents TREG_SECRET_KEY, a SQLite development database, and server installation, allowing the control plane to remain inside an organization’s network.
  • Project metadata lists the license as Other and shows no release history. Commercial deployment, redistribution, upgrade commitments, and audit materials cannot be assumed from normal open-source expectations.

Hosted Treg may be evaluated for ordinary internal automation. Customer-sensitive data, residency restrictions, or strict audit requirements still call for self-hosting and a separate compliance review.

  • Project insight: credentials are stored and decrypted server-side, while the Agent needs only one unified token
  • README: “Built for the Superdesign team, live at `treg.to`”
  • README: “anyone can self-host”
  • Project data: license is `Other`; latest_release is empty and release_count is 0
uv run python -m treg keygen   # print a fresh Fernet key for TREG_SECRET_KEY
Not stated in the README:The README does not specify hosted-service residency regions, log retention, encryption boundaries, or subprocessors.;It provides no SOC 2, ISO 27001, DPA, or other compliance evidence.;It does not state whether the self-hosted version is fully synchronized with the hosted service.

✨ Highlights

  • Covers 60+ providers and 3,000+ endpoints with per-call pricing
  • Uses one X-Treg-Token without exposing provider accounts to agents
  • Supports four credential injectors: env, OAuth, CLI keychain, and secret_file
  • Combines the CLI, Claude Code plugin, and MCP workflow

🔧 Engineering

  • Use treg catalog search to discover SEO, social, and scraping tools by task
  • treg call forwards requests to providers such as Fish Audio through one interface
  • OAuth auto-refreshes tokens, probes credentials, and notifies owners when they fail

⚠️ Risks

  • The base pip package only provides the CLI; the server needs tools-registry[server]
  • Responses over 8 MiB requiring settlement evidence return 502
  • The repository has no releases; its latest version is listed as No releases
  • Production topology is documented in a private operator runbook, so public deployment details are incomplete

👥 For who?

  • Teams whose Python agents need unified access to tools from multiple providers
  • Developers automating workflows with Claude Code, MCP, or the CLI
  • Organizations that need to share team keys, OAuth credentials, and CLI credentials