Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,517Letters: 13Defects: 1,322counted 4 min ago
teppi

MCP servercom.hookdetector/hookdetector

Real TikTok and Instagram hooks that already work, in any language, with why each travelled.
UNRATEDActivestreamable-httpapi.hookdetector.com

Overview

Score?
UNRATED 0.423
of what a free look can see, on 10 looks
Looks
11
last 10 hr ago
Tools
33
changed 10 hr ago

More info

URL
api.hookdetector.com/mcp
streamable-http
Says it is
hookdetector
protocol 2025-06-18
In the record since
8 days ago

Among servers18,413 with a card

0median 0.606 · this server 0.423 · highest on record 0.8561

Toolsfrom sha256:c13a3d058d…020093 · +0 −0 10 hr ago

The tools this server lists, read out of the definition it returned
ToolSchema
admin_adjust_credits
Owner only: add or remove an account's credits, as POST /v1/admin/accounts/{account_id}/credits. A change that would take the balance below zero is 422 credits_below_zero a
input · output
admin_list_accounts
Owner only: every account, newest first, as GET /v1/admin/accounts: {total, accounts: [{id, email, name, label, credits, created_at, last_seen_at, runs, hooks, charged_tota
input · output
admin_list_actions
Owner only: the audit of password sign-ins and credit changes, newest first, as GET /v1/admin/actions: {actions: [{id, action, actor_email, target_account_id, detail, creat
input · output
admin_list_runs
Owner only: every account's research runs, newest first, as GET /v1/admin/runs: {runs: [{run_id, account_id, email, topic, language, country, status, requested, hooks, rese
input · output
admin_overview
Owner only: the whole service at a glance, as GET /v1/admin/overview. Counts of accounts and people; runs (total, last_24h, last_7d, failed_24h, in_flight); hooks; credits
input · output
approve_access_request
Owner only: approve an access request. Makes a one-use code, marks the request approved and emails the code. The code is in this result once, with emailed true or false; wh
input · output
balance
Your account and remaining credits right now: account_id, credits, key_prefix and key_id of the key making this call, label, created_at, and that key's scopes, credit_limit
input · output
chat
One conversational turn, for an agent relaying a person's words. It either asks ONE clarifying question (action "clarify"), answers about delivered hooks or the tool (actio
input · output
clear_decision
Undo keep_hook: the hook goes back to having no verdict, so it leaves list_keeps and its export row carries none. Returns {"hook_id", "verdict": null}. Clearing a hook with
input · output
create_access_code
Owner only: make an access code to hand out. max_uses 1 to 100000 (default 1), expires_in_days 1 to 365 (optional), note your own. email binds it to one person: then only G
input · output
create_account
Create an account and get an API key with free credits. Needs a beta access code (access_code, HD-XXXX-XXXX; case and dashes do not matter): without one the error is 403 ac
input · output
create_key
Create another API key on your account, for example one per agent or machine, so you can revoke one without touching the others. name is up to 60 characters. Give the key
input · output
delete_account
Erase your account and everything in it, for good: every API key, run, hook, keep or reject decision, conversation and message. Unspent credits go with it. It cannot be und
input · output
embed_hook
Official TikTok or Instagram embed HTML for a hook, so the clip plays inside your own page. kind is "embed", or "fallback" when the creator disabled embedding or the clip i
input · output
export_run
A finished run's hooks as a file a creator can open: format "csv" (default; one row per hook, opens in any spreadsheet, formula-like cells defused with a leading quote), "j
input · output
find_hooks
Start hook research on a topic across TikTok, Instagram and YouTube Shorts (Shorts only, never long-form YouTube; platform "youtube"). What it does: searches both platform
input · output
get_conversation
One chat conversation: every message in order (role, content, run_id, created_at) and every run it holds, with their hooks, plus nullable language and country search picker
input · output
get_hook
One hook with every field: its opening line, transcript, watch_url and the vertical player_url (null only for an unusable id or a photo post found before 2026-09-26; runs d
input · output
get_run
A research run: its status, progress, charge and every hook it produced. wait_seconds 0 to 50: wait up to that long for the run to finish, returning the moment it is done
input · output
keep_hook
Keep or reject a hook: verdict is "keep" (default) or "reject", and the last verdict wins. Kept hooks come back from list_keeps, across all runs. Free.
input · output
list_access_codes
Owner only: every access code, newest first, with code_id, code_prefix, email, note, source, max_uses, uses, expires_at, revoked_at, created_at and usable. Never the code i
input · output
list_access_requests
Owner only: every access request, newest first, optionally only one status (pending, approved, rejected). Each has request_id, email, note, status, code_id, code_prefix, cr
input · output
list_conversations
Your chat conversations, most recently active first, limit 1 to 100 (default 30) per page: conversation_id, title, created_at, updated_at, language, country and messages (t
input · output
list_keeps
The hooks you kept with keep_hook, newest decision first, across all runs or within one run_id, limit 1 to 100 (default 100) per page. Returns {"kept": [...], "count": n on
input · output
list_keys
Your API keys and what each may do. keys: key_id, name, prefix, created_at, last_used_at and current (true for the key making this call). access, per key_id: scopes, credit
input · output
list_runs
Your research runs, newest first, without their hooks, limit 1 to 100 (default 20) per page. Returns {"runs": [...], "next_cursor"}: pass next_cursor back as cursor for the
input · output
reject_access_request
Owner only: reject a pending access request. Nothing is emailed. An approved or rejected request is 409 request_already_decided. Free.
input · output
remix_hook
Make it mine: write up to n new opening lines (1 to 5, default 3) for your niche that keep a real hook's structure, the device that made it travel, with the subject swapped
input · output
request_access
Ask for the beta access code a new account needs (create_account's access_code). email is where the code is sent; note is optional (who you are, up to 500 characters). The
input · output
revoke_access_code
Owner only: revoke an access code (code_id from list_access_codes). It admits nobody from now on; accounts it already made keep working. 404 access_code_not_found for an un
input · output
revoke_key
Revoke one of your API keys at once: key_id from list_keys, or "original" for the signup key. Any key may revoke itself (the result says so, and that key stops working imme
input · output
showcase
Real hooks this service has delivered, for a wait screen: talking heads only, each hook_id, still_url (a JPEG, no key needed), platform, creator, views and line (the banner
input · output
usage
Your credits and what you have spent: credits (balance now), spent_total, reserved_now (credits held by runs still in flight, refunded in part when they finish), runs_total
input · output
Verify it yourselfnpx teppi-check https://api.hookdetector.com/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M3E48YTPPNCT32PFF1M886M7