treg
官方一个MCP服务器和一个密钥即可访问3,700多个按调用付费的API:SEO和反向链接、人物和公司信息丰富、社交、广告、抓取、图像和视频生成。远程访问地址为https://treg.to/mcp/v2/(OAuth)或自托管。
你可以用 Treg MCP 做什么?
- 搜索工具目录 — 让您的助手根据功能查找工具,例如“搜索某个域名的反向链接”,并并排比较各提供商的报价。
- 无需提供商密钥即可调用工具 — 让您的助手调用目录端点(如
treg call hunter.people.email.find)来丰富人员或公司信息,按调用次数从您的余额中扣费。 - 使用注入的凭据运行供应商 CLI — 让您的助手执行诸如
treg run stripe -- get /v1/balance或treg run gh -- pr list之类的命令,而您无需持有 API 密钥。 - 注册并分享您自己的工具 — 指示您的助手使用
treg scan扫描项目,然后上传其.env密钥、技能和 CLI,以便您的整个团队都能使用它们。 - 安装并运行工作流技能 — 让您的助手拉取现成的技能(如
lead-signals)来寻找有购买意向的客户,或使用make-ugc端到端生成 AI 用户生成内容视频。 - 管理团队和访问权限 — 让您的助手创建组织、邀请队友,或通过
treg org create和treg org access等命令限制成员对特定工具的访问范围。
托管 MCP 服务器
npx add-mcp 'https://treg.to/mcp/v2/'可安装到 Claude Code、Codex、Cursor 等客户端
文档
Treg(面向工具的开源路由)

OpenRouter,但面向的是智能体工具而非模型。 让智能体指向一个基础 URL 并携带一个令牌, 它就能完成工作:一个涵盖众多提供商的数千个端点的精选目录 —— SEO 与外链、 社交与趋势、人物与公司信息丰富、广告、爬取、图像与视频生成 —— 按次计费,低至一分钱, 无需注册提供商。此外还有你自己团队的密钥、技能和 CLI,每位队友的 智能体都可以调用,而凭据永远不会离开服务器。
描述任务,而非工具。 你无需知道哪家供应商出售外链数据,也无需 持有他们的账户。搜索你想做的事,查看价格,然后调用即可。
为 Superdesign 团队打造,上线于 treg.to —— 任何人都可以自行托管。
为什么存在
智能体完成实际工作所需的工具,要么藏在没人会为单次运行而购买的订阅后面 —— Semrush 每月 139 美元、Moz 每月 99 美元、Crunchbase 每月 99 美元、Apollo 每席位 59 美元 —— 要么藏在注册墙后面,要么根本没有公开 API(仅限邀请、仅限合作伙伴、仅限应用审核)。 treg 承载这些账户,并按次收取几分钱。
两类工具,一个令牌
- 目录 —— treg 可以用自己的密钥或通过无需提供商密钥的已验证公共 路由来服务的外部端点。自有密钥调用使用团队的预付费余额;匿名调用 免费。无需提供商账户。新验证账户在创建符合条件的团队时,一次性获得 1.00 美元免费额度。
- 你自己的工具 —— 队友注册的任何内容:付费 API 账户、OAuth 连接、
供应商 CLI、
SKILL.md。你自己的密钥始终优先于 treg 的,并且这些调用 永远不会被计量。
第二部分的词汇表:
- 工具 = 注册表使用组织的凭据为你调用的东西。两种类型:
- 端点 —— 上游
base_url+ 凭据绑定(每个绑定向请求中注入一个 密钥;一个请求可以携带多个,例如一个 OAuth Bearer 和一个developer-token头)。 - CLI —— 一个供应商二进制文件(
stripe、gh、vercel、……),运行时注入凭据。
- 端点 —— 上游
- 技能 / 捆绑包 = 一个配方(
SKILL.md)+ 其密钥 + 其工具,一起注册。
唯一规则: 代理转发,绝不模拟上游,并且在服务端注入认证 —— 因此它能经受上游 API 变更,调用者永远不会持有密钥。
第 1 部分 · 使用注册表
访问 treg.to(托管在 Render 上)—— 仪表盘、 登录以及下面的每个 URL 都在那里。
快速开始
与仪表盘的 入门 指南流程相同:
# 1. install the CLI — also points it at the registry
curl -fsSL https://treg.to/install.sh | sh
# 2. sign in (GitHub default · --email for a one-time code · --token for agents/CI)
treg login
# 3. do something useful immediately — no key, nothing registered
treg catalog search "backlinks for a domain" # find a tool by what it DOES
treg call tikhub.tiktok.user.profile --query uniqueId=tiktok
treg balance # exactly what that cost
# (or `treg onboard` for the guided walkthrough)
Fish Audio 提供 S2.1 Pro 语音、公共语音发现和私有语音克隆。
语音是二进制标准输出,因此请将其重定向到文件。发现的语音的 _id 或团队语音 ID 就是
TTS 的 reference_id;在 treg 的 Fish 账户上创建的语音是持久的团队资源:
treg call fishaudio.tts.s2-1-pro --method POST --header model=s2.1-pro \
--data '{"text":"Hello from treg","format":"mp3"}' > speech.mp3
treg call fishaudio.voices.discover --query self=false --query licensed=false --query language=en
treg resources list --provider fishaudio --kind voice
使用你自己的 Fish 密钥时,请求仍然是受限的、不计量的上游转发,账户边界由 Fish 负责。
目录工具输入由 treg catalog get <id> 描述。标记为 strict_query 的工具会拒绝未声明或重复的查询参数、不支持的值和请求体。
你的令牌在每次调用中标识你(X-Treg-Token 头),并且对所有工具都相同。
发现你的团队共享了什么:treg tool ls · 检查凭据健康状态:treg health。
或者将其安装为 Claude Code 插件
/plugin marketplace add superdesigndev/treg
/plugin install treg@treg
无需令牌、无需配置即可安装。该技能以 treg:treg 加载,并在首次运行时
引导你的智能体完成其余步骤 —— CLI、登录,然后 treg mcp install —— 这样你最终会拥有
命令行 和 treg 的工具。其他智能体:npx skills add superdesigndev/treg -s treg
(或查看 工作流技能 了解其余内容)。
参见 docs/CLAUDE-PLUGIN.md。MiniMax Code / MiniMax Agent 用户:相同的
技能通过 MiniMax 插件市场提供(docs/MINIMAX-PLUGIN.md)。
工作流技能
现成的配方,你的智能体可以端到端运行,每次调用都通过 treg:
| 技能 | 你的智能体可以做什么 |
|---|---|
treg | 查找并调用目录中的任何工具,以及你自己的工具 |
lead-signals | 从公共信号(投诉、工作变动、招聘、融资、工具采用)中寻找市场中的买家,并监控某个主题、竞争对手或账户列表(treg.to/leads-signals) |
make-ugc | 制作 AI UGC 视频:热门钩子、主持人、人物特写片段、字幕(treg.to/ugc) |
install.sh 会为你安装所有这些。要将其添加到现有智能体,请改用
(skills.sh CLI):
npx skills add superdesigndev/treg # every public skill
npx skills add superdesigndev/treg --skill lead-signals # just one
treg skill bootstrap # same set, with the treg CLI you already have
工作流技能在 treg 上运行,因此请先设置好它(上面的快速开始,或将你的智能体指向 treg.to/llms.txt)。
Claude.ai 连接器
Claude 连接器目录界面是 https://treg.to/mcp/v2/。它只暴露精选的
目录端点,并将读取调用与写入调用分开,以便 Claude 接收准确的安全
信号。现有的 /mcp/ 界面仍然可用于目录端点、团队拥有的工具
和导入的技能。参见 MCP 与 OAuth 架构
了解边界和实现,以及
提交运行手册 了解发布门禁。
调用你没有密钥的工具
目录按端点做什么来分组:关键词与排名跟踪、外链与权威度、 AI 可见性、趋势与发现、发布到社交媒体、人物与公司信息丰富、广告 管理与创意、衡量。
treg catalog # every platform, busiest first
treg catalog search "find a work email" # by the job, not the vendor
treg catalog get hunter.people.email.find # params, PRICE, example response
treg call hunter.people.email.find --query domain=reddit.com --query full_name="Alexis Ohanian"
目录调用如何被服务 —— 凭据阶梯,按顺序:
- 你的团队为该提供商注册了自己的工具 → 使用该工具、该密钥;
- 你的团队为该提供商存储了密钥 → 通过虚拟工具注入;
- 两者都没有,且端点有已验证的公共路由 → 无需提供商密钥,免费;
- 否则 → treg 自己的密钥,从团队的预付费余额中计费。
匿名价格假设调用者不发送提供商凭据头。忠实
转发会保留调用者头,因此调用者提供的提供商密钥可以使用该密钥的额度。
你自己的凭据始终优于 treg 的,因此连接你已经付费的密钥会使这些调用
不再消耗余额,而不是重复计费。treg 没有发布价格的端点会被
拒绝,而不是免费服务 —— 系统会提示你改为连接自己的密钥。当多个提供商
提供同一能力时,treg catalog search 会并排显示它们及价格;选择权在
你 —— treg 不会默默为你挑选或在提供商之间切换。(当 treg 自己的
某个提供商账户余额不足时,它可能会通过 treg 拥有的中继账户服务相同端点,
并在响应中披露;团队可以选择退出。)你选择加入的例外:treg.<capability> 路由端点,treg 会为你选择提供商并指明。
treg balance # credit left, calls in flight, recent spend
treg topup # add funds, or set up automatic top-ups
余额不足时返回 HTTP 402,携带 balance_micro、estimated_cost_micro 和 topup_url,
这样智能体无需阅读文字即可采取行动。
Enrich Arena 位于 /enrich-arena,在仪表盘之外。比较信息丰富答案与每个供应商的成本和速度,
一键投票选出最佳答案,或观看顺序瀑布流。支持能力兼容的
异步提供商也参与其中;Arena 在内部处理提交和轮询。浏览是
公开的;提交需要登录,可计费的尝试使用你团队的积分。参见
Arena 指南。
共享与使用你自己的工具
零思考路径 —— 将 treg 指向一个项目,它会自动找出可共享的内容:
treg scan # read-only preview: the keys, skills & CLIs upload would register
treg upload # register them (encrypted server-side); idempotent, --replace to update
treg upload 扫描 .env(将密钥与约 80 个已知提供商匹配)、每个技能
子目录以及已安装的目录 CLI。三类内容进入注册表 —— 以下是如何
共享和使用每一类:
1. 端点(HTTP API)
共享 —— 一个上游 URL,可用存储的密钥调用,或从 .env 批量导入:
treg secret add STRIPE_KEY --value sk_live_123
treg add stripe --base-url https://api.stripe.com --secret STRIPE_KEY
treg upload env --select openai,stripe,resend # or straight from the .env
使用 —— 智能体原生方式:构建真实的上游请求并加上代理前缀。
treg 按主机解析工具,注入凭据,并忠实转发其他所有内容
(你的 X-Treg-Token 在上游看到之前会被剥离):
Real request: GET https://api.intercom.io/conversations?per_page=5
Through treg: GET https://treg.to/call/https://api.intercom.io/conversations?per_page=5
header: X-Treg-Token: <your token>
或者 CLI 简写 —— 以及 treg calls 用于审计日志:
treg call intercom conversations --query per_page=5
treg call stripe v1/balance
2. CLI
共享 —— 自动:treg upload 检测已安装的目录 CLI(stripe、gh、vercel、……)
并注册它们;仅配方的目录 CLI 技能(例如 stripe-cli)也会自动变为可运行。
使用 —— treg run 执行供应商 CLI 并注入组织的凭据,因此你永远
不需要持有密钥或登录:
treg run stripe -- get /v1/balance
treg run gh -- pr list
treg run --server agentmail-cli inboxes list # runs on the registry server: the key never reaches you
--local(默认)在你的机器上运行;--server 在注册表上运行并流式返回输出。
对于整个会话,treg shell start 打开一个子 shell,其中每个已注册的 CLI 都会自动
注入 —— 只需正常使用 stripe、gh、……;exit 恢复。treg runs 是审计日志。
3. 技能
共享 —— 技能是一个完整的能力(SKILL.md 配方 + 其密钥 + 其工具),
一起注册,这样整个团队运行相同的技能,并在一个地方维护:
treg upload skills --dir ~/.claude/skills --all # register a folder of skills in one pass
使用 —— 将任何共享技能拉入你的智能体;其 API 调用通过 treg 使用你的令牌, 因此密钥留在服务器上,永远不会出现在技能中:
treg skill install seo-blog-writer # writes into ./.claude/skills/ (--all for the library)
手动注册 —— 当启发式方法无法识别工具时
# multi-credential tool (e.g. google-ads: OAuth bearer + a developer-token header)
treg tool add google-ads --base-url https://googleads.googleapis.com \
--bind "secret=<oauth-id>,injector=oauth" \
--bind "secret=<dev-id>,name=developer-token,format={secret}"
# one skill, step by step
treg skill init --dir ./my-skill # drafts treg.json (guesses base_url, finds secrets)
treg skill add --dir ./my-skill # registers recipe + secrets + tool, atomically
# OAuth via the browser (mints the first token, treg holds it and auto-refreshes)
treg oauth connect gsc --client-secret client_secret.json \
--scopes https://www.googleapis.com/auth/webmasters.readonly
每个命令的完整选项:USAGE.md。
使用 treg.to 时,CLI 会向 PostHog 发送匿名命令使用数据(不包含参数或凭据)。
使用 TREG_TELEMETRY=0 或 DO_NOT_TRACK=1 禁用。
参见 分析详情。
团队
一个账户最多可以拥有 10 个团队。作为成员加入其他团队不计入此限制。
所有内容都限定在组织范围内:一个令牌 = 一个 (user, org) 成员资格,每个密钥、工具
和技能都属于当前组织。角色:所有者 / 管理员 / 成员 / 查看者。
treg org create "Acme" # make a team, become owner
treg org invite teammate@acme.com # invite by email (pick role + tool access)
treg org join <code> --email you@acme.com # accept an invite (creates you if new)
treg org ls | use <slug> | members # switch orgs, see the roster
treg org access <member> --tools a,b # per-member tool access (admin+)
深入了解
-
反馈:
treg feedback submit friction "The pagination example is unclear."分享问题或建议,不要包含私人信息。参见 反馈说明。 -
评价:
treg review CALL_ID useful在使用受邀目录调用的结果后为其评分;not_sure也可以。省略私人数据并继续任务。 -
USAGE.md—— 完整的tregCLI 参考。 -
/llms.txt—— 智能体入门文件:调用 协议、发现、认证、CLI、技能。一次获取即可让智能体了解整个注册表。 -
仪表盘 位于 treg.to —— 完整的增删改查、引导式 教程(帮助 → 教程),以及可复制的智能体设置说明。
-
API —— CLI 所做的一切都是纯 HTTP;交互式 OpenAPI 文档位于
/docs。 代理端点是/call/{...};所有端点都接受X-Treg-Token头。
第 2 部分 · 自行托管与开发
本地运行
一条命令(需要 tmux + uv;它会自行同步虚拟环境):
scripts/dev-local.sh up # server on http://localhost:18790, dev-safe settings
这会在 tmux 中以热重载模式运行服务器,使用自己的 sqlite 数据库(treg-dev.db),并启用电子邮件 OTP 开发
模式(登录码显示在页面上 —— 无需邮件发送器)。日常使用:
scripts/dev-local.sh cli login # sandboxed CLI: never touches your real ~/.treg/config.json
scripts/dev-local.sh logs # server output · status / restart / down
scripts/dev-local.sh reset # wipe the dev DB + CLI sandbox for a fresh start
或者直接运行服务器,不使用 tmux:
bash scripts/build-dashboard.sh # Node 22.12+ and npm; build the Dashboard
uv sync # create the venv from uv.lock (pulls the server deps for dev)
uv run python -m treg upgrade # prepare schema + run idempotent release tasks without serving
uv run python -m treg # serve on 0.0.0.0:18790 (add --reload for dev)
uv run python -m treg keygen # print a fresh Fernet key for TREG_SECRET_KEY
安装以运行服务器(非源码方式): 基础包仅包含 CLI。要运行注册表,请安装服务器附加组件 —
pip install "tools-registry[server]"— 它会添加 FastAPI、数据库驱动和加密功能。仅安装pip install tools-registry只会提供treg命令,用于与现有注册表通信。
官方托管服务可在 treg.to 获取。其生产拓扑和实时设置维护在私有 操作手册 中。
配置
环境变量(前缀 TREG_,从 .env 读取):
| 变量 | 默认值 | 用途 |
|---|---|---|
TREG_DATABASE_URL | sqlite+aiosqlite:///./treg.db | 数据库 URL(开发环境用 SQLite,生产环境用 Postgres) |
TREG_READ_DATABASE_URL | (空) | 可选的 SQLite / PostgreSQL 只读数据源;为空则复用主数据源。需要调用方主动选择;现有查询不受影响。参见 只读数据源设置。 |
TREG_SECRET_KEY | (空) | 用于静态加密密钥的 Fernet 密钥;为空 → 会生成临时密钥(密钥在重启后无法保留) |
TREG_PUBLIC_URL | https://treg.to | treg 的公共基础地址,用于构建 OAuth 回调 URI |
TREG_SESSION_SECRET | (空) | 为仪表板会话 Cookie 签名;回退到 TREG_SECRET_KEY。生产环境请设置真实值 |
TREG_GITHUB_CLIENT_ID / _SECRET | (空) | GitHub OAuth 登录(回调 <public_url>/auth/github/callback);为空则隐藏按钮 |
TREG_GOOGLE_CLIENT_ID / _SECRET | (空) | Google OAuth 登录(重定向 <public_url>/auth/google/callback);为空则隐藏按钮 |
TREG_INSTAGRAM_CLIENT_ID / _SECRET | (空) | Instagram 应用 ID 和密钥,用于直接 Instagram 登录(重定向 <public_url>/oauth/callback) |
TREG_META_CLIENT_ID / _SECRET | (空) | Meta 应用凭据,用于 Facebook 主页、Meta 广告和可选的 Instagram page-tools |
TREG_OAUTH_REVIEW_PENDING | instagram-login,page-messages | 逗号分隔的注册表审核密钥,其能力必须保持受限;托管审核状态私下维护。 |
TREG_RESEND_API_KEY / TREG_EMAIL_FROM | (空) | 通过 Resend 发送事务性邮件(OTP 验证码 + 邀请);发件人必须是 Resend 验证过的发件人 |
TREG_BLOCKED_EMAIL_DOMAINS | (空) | 逗号分隔的电子邮件域名,在每次注册/登录入口和团队创建时被拒绝(包含子域名,不区分大小写)。为空则不阻止任何内容 — 代码中不附带任何列表 |
TREG_ADMIN_TOKEN | (空) | 跨租户超级管理员令牌;授权所有 /admin/* 端点。为空则禁用环境变量路径(只有 is_superadmin 用户能访问 /admin)。请保持其长且保密。 |
TREG_EMAIL_DEV_MODE | false | 为 true 时,/auth/email/start 会在响应中返回 OTP(无需邮件发送器)— 仅限开发/本地环境,切勿用于生产环境。 |
TREG_KV_URL | (空) | 共享键值存储(Redis 协议),用于所有 worker 必须一致的计数器,目前用于每团队审核邀请预算。为空 = 进程内回退方案,适用于单 worker |
本地开发无需 .env — 每个设置都有可用的默认值(临时密钥、sqlite)。
⚠️ 在迁移或重新部署前请备份以下内容: Fernet 密钥(
TREG_SECRET_KEY)和数据库(生产环境为 Postgres;本地 sqlite 运行为treg.db)。丢失 Fernet 密钥将导致所有已存储的密钥无法恢复。
架构
/call 的请求流程: 解析工具(按 URL 主机 + 最长 base_url 前缀,或按名称)→ 解密其密钥 → 应用每个绑定的注入器 → 流式传输到上游 → 即发即弃的审计记录。基础设施中继仅流式传输字节,不包含业务逻辑。调用应用会缓冲需要结算或所有权证据的响应,上限为 8 MiB;更大的响应返回 502 而不计费,而不是返回截断的成功。无需正文证据的授权免费最终下载会完整流式传输,自有密钥和自有工具的响应也是如此。
模块映射(src/treg/):
| 模块 | 角色 |
|---|---|
proxy.py | relay() — 整个产品浓缩于一个函数:忠实的流式代理 |
injectors.py | 认证形态的接缝:env、cli_auth、secret_file、oauth 将密钥放入请求头/查询参数 |
oauth.py | 令牌新鲜度(单飞刷新)+ 连接流程(同意 URL、代码交换) |
health.py | 凭据健康:刷新 OAuth、探测工具、向任何异常工具的所有者发送 webhook |
convert.py | 将技能目录搭建为可注册的捆绑包清单 |
api.py | API — 唯一的大脑;CLI 和技能是其上的瘦客户端 |
cli.py | treg CLI |
models.py | SQLModel 表:Org、User、Membership、Invite、Secret、Tool、Bundle、PendingOAuth、CallRecord |
crypto.py config.py db.py audit.py | Fernet 加密 + 令牌 · 设置 · 异步数据库 · 延迟审计写入器 |
4 种认证形态(每个绑定 injector):env(纯字符串 / API 密钥)· secret_file(JSON 令牌文件,提取字段)· oauth(JSON OAuth 令牌,可自动刷新)· cli_auth(从 CLI 的钥匙串中提取的材料)。
忠实中继契约: 代理仅修改三项内容,其余全部原样传递:
- 逐跳传输请求头(每跳重新推导),
- treg 自身的控制头和边缘转发头(
x-treg-token、x-treg-org、ngrok-skip-browser-warning、x-forwarded-*、via等)以及 treg 的会话 Cookie — 全部剥离,绝不泄漏到上游, - 注入的凭据。
OAuth,获取首个令牌的三种方式: 手动上传(放入 token.json)· 自动刷新(如果令牌带有 refresh_token + 客户端凭据,treg 会保持其新鲜,您无需重新上传)· 托管连接流程(treg oauth connect → 浏览器同意 → treg 自行捕获令牌)。
健康检查: 为工具提供可选的探测({method, path, expect_status});定期运行(按需或通过 cron)会验证每个凭据、刷新 OAuth,并向任何异常凭据的所有者发送 webhook。
深度设计见 docs/context/(按子系统分片)。
测试
uv run --with pytest-xdist pytest -n auto -q # daily local default (same shape as CI)
uv run --frozen python -m pytest -q # serial: debugging one test, or order
覆盖范围:代理步行骨架、所有注入器形态、按用户认证 + CRUD + 审计、技能组合器、URL 透传 + 忠实中继、OAuth 刷新 + 连接流程、健康检查、treg run/shell、上传/扫描、组织 + 邀请、仪表板 API、CLI。
贡献与文档
treg/
├── src/treg/ # the package (api, cli, proxy, injectors, oauth, health, convert, models, …)
│ └── web/ # dashboard, landing, tutorial, llms.txt, skill.md, install.sh
├── tests/ # pytest suite (CI + local default: pytest-xdist -n auto)
├── docs/
│ ├── context/ # design fragments (codemap system) + generated index
│ └── ONBOARDING.md # first-time bootstrap
├── USAGE.md # full treg CLI reference
└── pyproject.toml
按子系统的设计文档是 docs/context/ 中的分片,每个都引用其 src/treg/* 来源。在此仓库中与 AI 代理协作?/tools-registry-context 技能会为您正在处理的内容加载正确的分片,并保持文档同步 — 推送前请运行 /tools-registry-context sync。
路线图: MCP 支持 · 更细粒度的权限层级 · 静态密钥管理加固 · 可能的 Loopni 合并。
许可证
Apache 2.0 附加条款(LICENSE):可自由使用 — 包括商业用途、在组织内部使用(鼓励自托管自己的注册表)。限制:未经书面许可,不得将代码作为竞争性的托管/管理注册表服务分发给第三方(jason@superdesign.dev)。在您自己的产品中使用托管的 treg.to API — 通过 X-Treg-Meta 和 usage/by-tag 进行透传计费 — 无需许可即可;这是调用我们的 API,而非分发我们的软件。
固定客户读取范围
对于受限的客户代理,treg org agent-new bot --pin customer=cust_A 强制执行归属,并将调用/运行历史、归档结果和共享提供商的异步所有权限制到该固定范围。外部或未归属的 ID 返回 404;未固定的操作员保留组织级视图和共享余额。BYOK 账户访问和公共媒体 URL 保留其现有权限。参见 多租户契约 了解多个固定、迁移和重放行为。