자체 방문 통계는 항상 수집됩니다. 사용자가 공개 페이지를 어떻게 이용하는지 파악하는 데 쓰이는 Google Analytics(로그인한 워크스페이스는 제외)는 동의한 경우에만 사용됩니다. 자세한 내용은 개인정보 처리방침을 참고하세요.

TikHub API 토큰과 API Helper 스킬, AI 에이전트로 직접 테스트해 보니

커뮤니티판 TikHub API Helper에는 오래된 스냅샷이 들어 있어 경로의 25.7%가 이미 사라졌습니다. 토큰 설정, 요청 속도 제한, AI 에이전트 호출, 가격을 테스트했습니다.

점선을 사이에 두고 두 장면으로 나뉜 일러스트입니다. 왼쪽에서는 머리가 둥근 작은 로봇이 어수선한 캐비닛 앞에 서 있습니다. 로봇은 긴 끈에 매달린 황동 열쇠를 들고 있고, 그 끈은 색이 바래고 찢어진 회색 카드가 든 서랍으로 이어집니다. 로봇 뒤에는 팔각형 표지판이 달린 회색 문이 닫혀 있습니다. 오른쪽에서는 같은 로봇이 잘 정리된 카드 상자에서 청록색 카드 한 장을 읽고 있고, 로봇 앞의 청록색 문은 열려 있습니다. 담긴 의미: 토큰과 오래된 엔드포인트 목록만 가진 AI 에이전트는 명확한 기능 카드 한 장을 가진 에이전트보다 훨씬 적은 일을 해냅니다.

“tikhub api helper” 검색 결과 1위에 오르는 Claude Code 스킬은 TikHub의 제품이 아닙니다. 개발자 한 명이 개인 GitHub 계정에서 관리하는 커뮤니티 프로젝트입니다. 아래에서는 이를 커뮤니티 저장소 A라고 부릅니다. 2026-11-06 새벽(싱가포르 시간, SGT, UTC+8)에 파일을 하나하나 확인했습니다. 엔드포인트 스냅샷에는 경로가 1,120개 있으며, 그중 288개(25.7%)는 당일 TikHub 문서에 더 이상 없습니다. SKILL.md의 예시 호출 4개 중 3개는 현재 문서에 없는 파라미터 이름을 사용합니다. 스킬은 TIKHUB_TOKEN을 설정하라고 안내하지만, 코드는 TIKHUB_API_TOKEN을 읽습니다.

더 큰 문제는 HTTP 클라이언트입니다. 이 스킬은 Python 내장 urllib과 기본 User-Agent로 요청을 보냅니다. 싱가포르에서 SGT 00:20과 00:25에 두 차례 테스트했습니다. 이 기본 헤더로 api.tikhub.io와 api.tikhub.dev에 보낸 요청은 모두 HTTP 403과 “error code: 1010”을 받았습니다.

토큰이 필요 없는 헬스 체크조차 실패했습니다. 같은 TikTok 또는 Douyin 요청 1,000건에 대한 TikHub의 공개 가격은 $1.00입니다. 저희가 실제로 호출한 3건은 건당 $0.000556이 들었으므로 1,000건이면 $0.556이고, TikHub가 1.8배 비쌉니다. TikHub는 일일 사용량 할인을 적용한 뒤 한 엔드포인트에서 하루 약 117,900건을 호출해야 저희와 같은 가격이 됩니다.

이 글은 “tikhub api token”, “tikhub api helper”, “api tikhub io”를 검색하는 분들을 위해 한 가지 구체적인 질문에 답합니다. 토큰은 이미 발급받았습니다. 이제 AI 에이전트가 스스로 엔드포인트를 찾고, 호출하고, 오류를 처리하게 하려는 상황입니다.

토큰은 어디에 보관하고 어떻게 통제해야 할까요? 요청 속도 제한은 어떻게 동작할까요? 커뮤니티 Helper를 그대로 써도 될까요? TikHub 쪽은 문서, API 파일, 요금 페이지, 공개 GitHub 저장소만 사용했습니다.

TikHub에는 회원가입하지 않았습니다. 다른 사람의 토큰으로 유료 엔드포인트를 호출하지도 않았습니다. EveryInfra 쪽 수치는 모두 같은 날 밤 실제 호출에서 얻었으며, 본문에 각 열람과 호출 시각을 적었습니다.

tikhub api token 발급 방법: 권한, 만료일, 상태

TikHub 토큰은 사용자 센터에서 만듭니다. 문서 사이트의 README - English 끝에 있는 “Get API Token” 섹션에 네 단계가 나와 있습니다. 회원가입 후 로그인합니다. 사용자 센터에서 API 토큰 메뉴를 열고 토큰을 만듭니다.

토큰을 복사해 요청 헤더에 넣습니다. 토큰은 비밀로 유지하고 헤더에서만 사용합니다. 중국어 README도 같은 내용입니다. 튜토리얼 및 FAQ 페이지에는 사용자당 API 키를 최대 100개까지 만들 수 있다는 내용이 더 있어, 프로젝트마다 키를 하나씩 쓰기 쉽습니다.

여기까지는 이전 글 TikHub API 키, 문서, GitHub 직접 테스트에서 다룬 내용과 같습니다. 이 글은 한 걸음 더 나아갑니다. 토큰을 만든 뒤 일부 엔드포인트만 호출하도록 제한할 수 있을까요? 만료일을 정할 수 있을까요? 잠시 비활성화할 수 있을까요? 이 세 가지 통제 수단에 따라 스스로 판단하는 AI 에이전트에게 토큰을 안전하게 맡길 수 있는지가 갈립니다.

TikHub의 현재 공개 문서에서는 이 세 가지 통제 수단의 설정 방법을 찾지 못했습니다. 현재 README와 api.tikhub.io의 openapi.json(2026-11-06 SGT 00:16 열람)은 상태 코드 설명에서만 이를 언급합니다. 401의 원인 6가지에는 “API token has expired”와 “status is invalid or not activated”가 있습니다. 403의 원인에는 “API token lacks required permissions”가 있습니다. 즉 세 가지 상태는 존재하지만, 문서에는 설정 방법이 나와 있지 않습니다.

설정 안내는 이전 자료에서 찾았습니다. 2024-12-05에 배포된 TikHub Python SDK 1.13.0 버전의 PyPI 페이지에는 토큰에 사용자 지정 Scopes를 설정하고, Expire Date를 지정하고, Status로 토큰을 직접 비활성화할 수 있다고 나와 있습니다. 또한 프로젝트마다 알맞은 Scopes를 지정한 토큰을 하나씩 쓰도록 강력히 권장하며, 그렇지 않으면 권한 부족으로 요청이 실패한다고 설명합니다. 2.2.0 버전(2026-10-03)에서는 이 섹션이 사라졌습니다. 새 문서는 대시보드에서 API 키를 복사해 TIKHUB_API_KEY로 설정하라고만 안내합니다.

TikHub 사용자 센터에 로그인하지 않았으므로, 세 가지 통제 수단이 지금도 대시보드에 있는지는 확인할 수 없습니다. 확인한 내용은 다음과 같습니다. 이전 문서에는 세 가지를 설정할 수 있다고 나와 있었습니다. 현재 문서에는 설정 방법이 없습니다. 상태 코드 설명에는 여전히 세 가지 상태가 모두 나옵니다.

EveryInfra에서는 세 가지 통제 수단이 모두 /docs의 계정 섹션에 있습니다. 콘솔의 “API 키 → 권한”에서 키별로 제품을 끌 수 있습니다. 꺼진 제품을 호출하면 403 capability_denied가 반환됩니다. 비활성화된 키로 호출하면 401이 반환됩니다. 키 관리, 계정 설정, 지원 티켓의 세 가지 쓰기 권한은 기본적으로 꺼져 있습니다. 이 권한은 사람이 콘솔에서 직접 켜야만 합니다.

키로 다른 키를 만들 수는 있지만 하루 20개까지입니다. 일부 작업은 항상 콘솔에서만 할 수 있습니다. API 키 전체 값 확인 또는 교체, 권한 및 IP 허용 목록 변경, 키 재활성화, 결제가 여기에 해당합니다. 의도적으로 이렇게 설계했습니다. AI 에이전트가 키를 가질 때 가장 큰 위험은 잘못된 호출 한 번이 아니라 에이전트가 계정을 변경하거나 써서는 안 될 돈을 쓰는 것입니다.

아래 표는 양쪽을 비교합니다. TikHub 쪽의 “문서에 없음”은 현재 공개 문서에서 설정 방법을 찾지 못했다는 뜻입니다. 기능이 없다는 뜻은 아닙니다.

액션TikHub(공개 문서, 2026-11-06 확인)EveryInfra(/docs, 2026-11-06 확인)
토큰 생성사용자 센터 → API 토큰 → 생성, 사용자당 최대 100개콘솔 → API 키 → 생성, API 키 전체 값은 한 번만 표시
호출 범위 제한2024년 문서: Scopes, 현재는 403 설명에 “token lacks permissions”만 있음제품을 끄면 403 capability_denied 반환
유효 기간2024년 문서: Expire Date, 현재는 401 설명에 “token has expired”만 있음만료 없음, 대신 비활성화 또는 교체
일시 비활성화2024년 문서: Status, 현재는 401 설명에 “status invalid or not activated”비활성화된 키는 401 반환, 재활성화는 콘솔에서만 가능
에이전트의 계정 변경 가능 여부문서에 없음쓰기 권한 기본 꺼짐, 키로 만드는 키는 하루 20개
환경 변수 이름TikHub SDK 및 TikHub 플러그인: TIKHUB_API_KEYEVERYINFRA_API_KEY

가장 중요한 것은 두 번째 행입니다. 엔드포인트를 스스로 고르는 에이전트는 언젠가 예상하지 못한 엔드포인트를 고르게 됩니다. 예를 들어 TikTok 프로필을 읽게 하려 했는데, 호출당 $0.02인 Douyin Xingtu 엔드포인트를 호출할 수 있습니다. TikHub가 아직 Scopes를 지원한다면 토큰을 만들 때 필요한 플랫폼만 선택하세요.

대시보드에 그 옵션이 더 이상 없다면 남은 통제 수단은 두 가지입니다. 에이전트마다 토큰을 하나씩 쓰고, 잔액에는 필요한 금액만 넣어 두는 것입니다. 저희의 제품 단위 스위치는 엔드포인트 단위 스코프보다 세밀하지 않습니다. 대신 스위치 하나로 CAPTCHA 해결이나 프록시처럼 데이터 수집과 관계없는 제품 전체를 끌 수 있습니다.

요청 속도 제한: TikHub는 엔드포인트별 초당, EveryInfra는 계정별 분당으로 계산합니다

에이전트에게 토큰을 맡기고 나면 다음으로 흔히 겪는 문제가 요청 속도 제한입니다. 에이전트는 병렬 호출을 즐겨 쓰며, 한 번에 요청 십여 건을 보내는 일도 흔합니다. TikHub의 openapi.json은 “QPS: 10/Second”로 시작합니다. 요금 페이지의 FAQ에 더 자세한 설명이 있습니다. 제한은 계정 단위가 아니라 엔드포인트 단위로 적용됩니다.

기본값인 초당 10건은 API 경로마다 따로 적용되므로, 서로 다른 엔드포인트는 병렬로 호출할 수 있습니다. 더 높은 속도가 필요하면 RPS 패널에서 RPS 플랜을 구매할 수 있습니다. 요청 요금과 별도로 매월 청구됩니다. 2024년 문서는 조금 달랐습니다. 토큰 소유자의 이메일별로 엔드포인트마다 제한이 적용되며, 대부분 초당 5건이라고 되어 있었습니다.

문서에는 “기본 10”이라고 되어 있습니다. 엔드포인트별 실제 값은 토큰 없이 읽을 수 있는 가격 목록 엔드포인트에 있습니다. SGT 00:18:13에 가격이 책정된 엔드포인트 1,471개를 읽고 rate_limit 필드를 집계했습니다. 1,397개 엔드포인트가 초당 10건을 허용합니다.

47개는 5건, 14개는 3건, 10개는 1건을 허용합니다. 20건, 4건, 2건을 허용하는 엔드포인트가 각각 1개씩 있습니다. 즉 74개 엔드포인트는 기본값이 아닙니다. 기본 속도로 동작하는 에이전트는 초당 1건만 허용하는 엔드포인트에서 429 응답을 반복해서 받게 됩니다.

세로축이 로그 스케일(눈금 한 칸마다 10배)인 막대 차트입니다. 가격이 책정된 TikHub 엔드포인트 1,471개를 초당 허용 요청 수별로 묶었습니다. 초당 20건: 1개. 초당 10건: 1,397개(회색, 기본값). 5건: 47개. 4건: 1개. 3건: 14개. 2건: 1개. 1건: 10개. 기본값이 아닌 엔드포인트 74개는 청록색입니다.

EveryInfra는 엔드포인트가 아니라 계정 단위로 제한을 계산합니다. 요금 페이지에 따르면 기본값은 계정의 모든 키를 합쳐 분당 60건입니다. 키를 늘려도 처리량은 늘지 않습니다. 더 빠른 속도가 필요하면 30일간 쓸 수 있는 속도 팩을 구매할 수 있습니다. 분당 180건은 $10, 분당 600건은 $30입니다.

총 충전액 구간이 높을수록 요청 속도 제한의 허용량도 늘어납니다. 제한을 넘으면 429 rate_limited와 함께 몇 초 기다려야 하는지 알려 주는 Retry-After 헤더를 받습니다. 429 코드와 Retry-After는 RFC 6585 4절에 정의되어 있으며, 두 서비스 모두 이를 사용합니다.

두 방식에는 각각 장단점이 있습니다. TikHub의 엔드포인트별 요청 속도 제한은 여러 엔드포인트를 동시에 호출할 때 전체 처리량이 높습니다. 초당 10건이라는 수치도 EveryInfra의 기본값인 분당 60건보다 훨씬 빠릅니다. 반면 EveryInfra는 계정 단위로 요청 속도를 제한하므로 에이전트가 1,471개의 개별 제한을 기억할 필요가 없습니다. 숫자 하나만 알면 됩니다.

요청 속도 제한TikHubEveryInfra
집계 기준엔드포인트별 개별 집계(동일 토큰 소유자 기준)계정 전체(모든 키 합산)
기본대부분 초당 10건, 74개 엔드포인트는 이보다 낮거나 높음분당 60건
속도 상향RPS 패널에서 구매하는 월간 RPS 플랜스피드 팩(30일, $10부터) 또는 충전 등급
제한 초과 시429 "Request too fast"Retry-After가 포함된 429 rate_limited
에이전트가 알아야 할 것엔드포인트별 요청 속도 제한(가격표의 rate_limit)계정 전체에 적용되는 요청 속도 제한 하나

커뮤니티 Helper와 관련해 한 가지 더 짚을 점이 있습니다. Helper의 SKILL.md에는 "엔드포인트당 QPS 초당 10, 타임아웃 30~60초, 오류 시 최대 3회 재시도"라고 적혀 있습니다. 이 문구는 TikHub openapi.json의 앞부분에서 가져온 것입니다. 그러나 Helper 클라이언트에는 재시도 코드가 없습니다.

타임아웃은 30초로 고정되어 있습니다. 429를 받으면 "HTTP 429"를 모델에 그대로 전달할 뿐입니다. 모델은 SKILL.md를 읽고 클라이언트가 대신 재시도해 준다고 생각합니다.

tikhub api helper는 누가 만들었고, 무엇이 들어 있나

"tikhub api helper"를 검색하면 상위 결과에 tikhub_api_skill이라는 GitHub 저장소(커뮤니티 저장소 A)와 이 저장소를 소개하는 스킬 디렉터리 페이지가 나옵니다. LobeHub 스킬 마켓플레이스와 Shyft가 그 예입니다. 저장소 소유자는 개인 계정이며, TikHub의 GitHub 조직에 속해 있지 않습니다. 저장소 설명은 이 저장소를 TikHub API용 "Codex/Claude Code 에이전트 스킬"이라고 소개할 뿐, TikHub가 만들었다고는 말하지 않습니다.

SGT 기준 00:14에 GitHub API로 확인한 결과 스타는 129개, 페이지에 표시된 포크 수는 17개였습니다. 저장소는 2026-01-08에 생성되었고, 마지막 푸시는 2026-07-08이며, 라이선스는 없습니다. 따라서 정확히 말하면 이 저장소는 커뮤니티 프로젝트이고, TikHub에는 "API Helper"라는 스킬이 없습니다. TikHub의 자체 제품은 Claude Code 플러그인인 tikhub-plugin입니다. 마지막 릴리스는 2026-06-15에 나온 v1.1.0으로, 스킬 18개와 7개 플랫폼용 MCP 설정을 포함합니다.

Helper의 구조는 단순합니다. .claude/skills/tikhub-api-helper/ 아래에 파일 4개가 있습니다. SKILL.md는 5,850바이트이며, 엔드포인트를 검색하고 파라미터를 읽은 뒤 호출하라고 모델에 지시합니다. api_searcher.py는 로컬 openapi.json을 키워드로 검색합니다. api_client.py는 요청을 보냅니다. openapi.json은 2,997,476바이트 크기의 엔드포인트 스냅샷입니다.

발상 자체는 타당합니다. TikHub의 API 파일은 약 840,000토큰이라 모델에 전부 넣을 수 없습니다. 로컬에서 검색해 일치하는 결과만 모델에 넘기면 컨텍스트를 크게 아낄 수 있습니다. Claude Code 스킬 문서도 같은 입장입니다. 스킬 본문은 사용할 때만 로드되며, 큰 참조 파일은 그전까지 컨텍스트를 거의 차지하지 않습니다. 문제는 세부 사항에 있으며, 다음 섹션에서 하나씩 살펴봅니다.

커뮤니티 스킬이 이것 하나만 있는 것은 아닙니다. TypingMind 스킬 디렉터리에는 또 다른 커뮤니티 스킬인 tikhub-skill(커뮤니티 저장소 B)도 올라와 있습니다. 오픈소스 프로젝트 OpenCompany의 일부이며, 동작 방식이 다릅니다. 엔드포인트 스냅샷이 없는 대신 TikHub Python SDK의 메서드를 하나의 도구로 묶습니다. 세 가지 방식을 나란히 비교하면 다음과 같습니다.

방법제작 주체엔드포인트 탐색 방식토큰을 읽는 위치발견된 문제
tikhub_api_skill (API Helper)커뮤니티 저장소 A(개인 개발자 1명)경로 1,120개의 로컬 스냅샷, 부분 문자열 검색코드: TIKHUB_API_TOKEN, 문서: TIKHUB_TOKEN스냅샷 경로의 25.7%가 현재 문서에서 사라짐, urllib 차단, 잘못된 예시 파라미터
OpenCompany tikhub-skill커뮤니티 저장소 BTikHub Python SDK의 메서드 이름확인하지 않음파일별로는 확인하지 않음
tikhub-pluginTikHub스킬 18개와 플랫폼별 MCP 서버 1개TIKHUB_API_KEY이전 테스트 글에서 확인: 코드에 있는 경로 1,109개 중 237개가 문서에서 사라짐

앞서 TikHub API 키, 문서, GitHub 직접 테스트 글에서 TikHub의 자체 플러그인을 이미 확인했습니다. 이 글에서는 두 가지 이유로 커뮤니티 Helper에 집중합니다. 첫째, 이 검색어로 사람들이 가장 많이 여는 결과입니다. 둘째, 사람들이 이 저장소를 그대로 복사해 씁니다. 아래 토큰 섹션에서 보겠지만, 원본 저장소에서 수정하더라도 이미 만들어진 복사본에는 반영되지 않습니다.

엔드포인트 스냅샷이 오래되어 경로 1,120개 중 288개가 사라졌다

Helper의 openapi.json은 작성자가 2026년 1월에 TikHub에서 내려받은 사본이며, 그 뒤로는 5월에 한 번만 변경되었습니다. 이 파일을 2026-11-06 SGT 기준 00:16:44에 읽은 TikHub의 openapi.json과 경로 단위로 비교했습니다. 두 파일 모두 info.version이 V5.3.2이므로 버전 번호만 보면 아무것도 바뀌지 않은 것처럼 보입니다. 실제로는 스냅샷의 경로 1,120개 중 현재 문서에 남아 있는 것은 832개뿐입니다. 288개 경로(25.7%)가 사라졌습니다.

반대 방향도 마찬가지입니다. 현재 파일의 경로 1,058개 중 226개(21.4%)는 스냅샷에 없으므로, Helper를 쓰는 에이전트는 이 경로를 결코 찾을 수 없습니다. 양쪽에 모두 있는 엔드포인트 832개 중 59개는 쿼리 파라미터가 다릅니다. 예를 들어 Kuaishou 사용자 검색은 page가 빠지고 pcursor와 필터 3개가 추가되었습니다.

막대 2개로 된 누적 가로 막대 차트입니다. 위쪽 막대는 경로 1,120개로 이루어진 Helper 스냅샷으로, 두 파일 모두에 있는 832개(청록색)와 스냅샷에만 있어 현재는 삭제되었거나 이름이 바뀐 288개(회색)로 나뉩니다. 아래쪽 막대는 경로 1,058개로 이루어진 현재 TikHub로, 두 파일 모두에 있는 832개(청록색)와 현재 문서에만 있어 Helper가 찾을 수 없는 226개(진회색)로 나뉩니다. 두 파일 모두 버전은 V5.3.2입니다.

변경은 몇몇 그룹에 몰려 있습니다. 새로 추가된 그룹은 인플루언서 마케팅과 광고 분석 분야에서 가장 수요가 많은 엔드포인트입니다.

문서에서 사라짐(288개 중)경로 수문서에 새로 추가됨(226개 중)경로 수
LinkedIn(그룹 2개)77Bilibili Huahuo45
TikTok Ads23Douyin Xingtu V229
Douyin Web20Xiaohongshu Pugongying20
Xiaohongshu Web V218Douyin DOU+17
TikTok App V3 / Sora2각 17개——
Xiaohongshu Web(첫 번째 그룹)15개(전체)——

한 가지가 더 있습니다. 사라진 경로 288개 중 201개는 여전히 가격표에 가격과 함께 올라 있습니다. TikHub API 키, 문서, GitHub 직접 테스트 글에서도 문서에는 없는데 가격표에는 있는 경로 433개를 발견했습니다. 이로 미루어 TikHub는 엔드포인트를 문서에서 먼저 삭제하고 가격표에는 남겨 두는 것으로 보입니다. 에이전트 입장에서는 가격표에 항목이 있다고 해서 엔드포인트가 아직 작동한다고 볼 수 없습니다.

SKILL.md의 플랫폼 표에서도 시차가 드러납니다. 표에는 Xiaohongshu Web 엔드포인트가 26개라고 적혀 있지만, 스냅샷에는 15개, 현재 문서에는 0개가 있습니다. YouTube Web은 16개라고 적혀 있지만 현재는 8개입니다.

TikTok App은 76개라고 적혀 있지만 현재는 58개입니다. 표의 숫자는 함께 배포된 스냅샷과도, 현재 문서와도 맞지 않습니다.

그룹SKILL.md 표기현재 문서
Xiaohongshu Web26(스냅샷: 15)0
YouTube Web168
TikTok App7658

이 표를 기준으로 계획을 세우는 에이전트는 Xiaohongshu Web에 엔드포인트가 많다고 판단합니다. 그런데 막상 검색하면 이미 사라진 경로만 나옵니다.

SKILL.md대로 검색하면 왜 여러 단어 쿼리에서 0건이 자주 나올까

Helper 워크플로는 검색, 상세 정보 확인, 호출의 세 단계로 이루어집니다. SGT 기준 00:19에 자체 머신에서 오프라인으로 api_searcher.py를 실행했습니다. SKILL.md에 나오는 쿼리는 모두 적힌 그대로 실행했고, 중국어 쿼리와 여러 단어로 된 쿼리 4개를 추가로 실행했습니다. 결과는 아래 차트와 같습니다.

"tiktok user profile"은 SKILL.md 예시 워크플로의 첫 단계입니다. 결과는 1건이며, 그마저도 파라미터를 받지 않는 데모 엔드포인트입니다. "common use" 섹션에 나오는 "fetch user profile tiktok"은 0건입니다. "douyin video comments"도 0건이고, "Xiaohongshu 노트"에 해당하는 중국어 쿼리도 0건입니다.

쿼리 10개와 각 쿼리가 찾은 엔드포인트 수를 보여 주는 누적 가로 막대 차트입니다. 각 막대는 현재도 작동하는 엔드포인트(청록색), 현재 문서에서 사라진 엔드포인트(회색), 데모 엔드포인트(진회색)로 나뉩니다. 별표가 붙은 쿼리는 SKILL.md에 적힌 그대로입니다. tiktok user profile: 1개, 데모 엔드포인트. fetch user profile tiktok: 0개. douyin video comments: 0개. 중국어 Xiaohongshu 노트: 0개. fetch post detail: 2개, 모두 작동. search video: 5개, 모두 작동. fetch comment: 3개, 그중 2개 사라짐. user profile: 20개, 5개 사라짐. 중국어 노트: 20개, 8개 사라짐. 중국어 댓글: 20개, 6개 사라짐.
쿼리(* = SKILL.md에 적힌 그대로)결과 수현재 문서에 남은 경로
tiktok user profile *1데모 엔드포인트만
fetch user profile tiktok *0—
douyin video comments0—
Xiaohongshu 노트(중국어)0—
fetch post detail *22
search video *55
fetch comment *31
user profile *2015
노트(중국어)2012
댓글(중국어)2014

원인은 검색 스크립트에 있습니다. 스크립트는 쿼리 전체를 하나의 부분 문자열로 취급합니다. 그리고 "path + summary + description + operationId"를 이어 붙인 문자열에서 그 부분 문자열을 찾으며, 결과가 20개가 되면 멈춥니다. 여러 단어로 된 쿼리는 단어들이 정확히 그 순서대로 붙어 있을 때만 일치합니다. TikHub의 summary는 "Get user profile" 같은 형태라서 "tiktok user profile"이라는 세 단어가 연달아 나오는 경우가 없습니다.

스크립트에는 키워드 맵을 갖춘 suggest_api 함수가 있습니다. 이 함수는 "user profile"을 fetch_user_profile로 확장할 수 있습니다. 하지만 명령줄 진입점에서는 이 함수를 전혀 호출하지 않습니다. 단일 단어로는 결과가 나오지만 20개 슬롯이 한 번에 채워지고, 스크립트는 파일 순서대로 목록을 자릅니다. "노트"에 해당하는 중국어 단어로 검색한 결과 20개 중 8개는 이미 사라진 경로입니다. 앞쪽 결과가 원하는 플랫폼의 것이라는 보장도 없습니다.

두 번째 단계인 "상세 정보 확인"에도 문제가 있습니다. SKILL.md의 예시는 detail:tiktok_web_fetch_user_profile_get입니다. 적힌 그대로 실행하자 "No API found"가 반환되었습니다. 스냅샷의 실제 operationId는 fetch_user_profile_api_v1_tiktok_web_fetch_user_profile_get입니다. 이 이름으로 실행하자 1,970바이트 분량의 파라미터 상세 정보가 나왔습니다.

마지막 단계인 호출에 대해서는 SKILL.md가 서로 다른 예시 호출 4개를 제시합니다. 각 예시를 현재 문서의 파라미터와 비교했습니다.

SKILL.md 예시예시의 파라미터현재 문서의 파라미터결과
tiktok/web/fetch_user_profilesec_user_iduniqueId 또는 secUid존재하지 않는 파라미터
tiktok/web/fetch_post_detailpost_iditemId(필수), region존재하지 않는 파라미터, 필수 파라미터 누락
tiktok/web/fetch_post_commentpost_idaweme_id(필수), cursor, count, current_region존재하지 않는 파라미터, 필수 파라미터 누락
tiktok/web/fetch_search_videokeywordkeyword(필수), count, offset, search_id, cookie일치

이 예시로 학습한 에이전트는 첫 프로필 호출에서 sec_user_id를 보내지만, 서버는 이 파라미터를 알지 못합니다. TikHub 엔드포인트는 FastAPI를 사용합니다. 현재 openapi.json에서는 973개 엔드포인트가 422 검증 오류를 선언합니다. 응답 본문에는 표준 필드인 loc, msg, type이 있습니다. 이 응답은 어떤 필수 파라미터가 빠졌는지 알려 줍니다. 하지만 post_id가 itemId여야 한다는 사실은 알려 주지 않습니다.

프로필 엔드포인트에서는 두 파라미터 모두 선택 사항입니다. 서버가 알 수 없는 파라미터를 아무 안내 없이 무시하는지, 그리고 그 호출에 과금하는지는 확인하지 못했습니다. 저희는 계정이 없어 이를 테스트하지 않았으므로 알 수 없음으로 표시해야 합니다. 아래 "잘못 입력하면 어떻게 되나" 섹션에서 같은 실수에 저희 API가 어떻게 응답하는지 보여 드립니다.

토큰은 어디에 둘까: 세 가지 변수 이름과 하드코딩된 토큰

가장 단순한 실수인 환경 변수 이름부터 살펴보겠습니다. SKILL.md의 Authentication 섹션은 TIKHUB_TOKEN을 설정하라고 안내합니다. 그런데 api_client.py는 TIKHUB_API_TOKEN을 읽습니다. TikHub의 Python SDK와 플러그인은 세 번째 이름인 TIKHUB_API_KEY를 사용하며, 이 이름은 플러그인 설정에 83번 등장합니다.

저희는 머신에 TIKHUB_TOKEN만 설정하고 나머지 두 변수는 설정하지 않았습니다. 그다음 Helper 클라이언트를 생성했습니다. 클라이언트가 읽은 토큰의 길이는 0이었습니다. 요청 헤더는 스킴 이름 뒤에 공백 하나만 있고 그 뒤에는 아무것도 없는 형태가 되었습니다. 따라서 SKILL.md를 그대로 따른 사용자는 모든 요청을 토큰 없이 보내고 401 응답만 받게 됩니다.

커뮤니티 저장소 A(2026-07-08 버전)의 두 부분을 다시 조판한 스크린샷입니다. 위쪽은 SKILL.md의 Authentication 섹션입니다. 청록색 상자가 두 항목을 표시합니다. "API requests use a default token for development."라는 줄과 2단계의 변수 TIKHUB_TOKEN입니다. 아래쪽은 클라이언트 코드에 있는 __init__의 docstring입니다. 청록색 상자가 "uses TIKHUB_API_TOKEN if not provided"를 표시합니다. 두 이름이 서로 다릅니다.
SKILL.md는 TIKHUB_TOKEN을 설정하라고 안내하지만, 코드는 TIKHUB_API_TOKEN을 읽습니다. 또한 SKILL.md는 요청에 기본 토큰이 사용된다고 설명하지만, 현재 코드에는 기본 토큰이 없습니다. 2026-11-06 확인. 커뮤니티 저장소 A 원문 재조판, 링크는 참고 자료 참조
사용 위치변수 이름이 변수만 설정했을 때의 결과
Helper SKILL.mdTIKHUB_TOKEN토큰 길이 0, 빈 Bearer 헤더, 401
Helper api_client.pyTIKHUB_API_TOKEN작동함(User-Agent 수정 시)
TikHub SDK 및 플러그인TIKHUB_API_KEYSDK와 플러그인에서 작동함

스크린샷의 첫 번째 청록색 상자에는 "API requests use a default token for development"라고 적혀 있습니다. 이 줄은 Helper 초기 버전에서 나온 것입니다. 초기 버전에는 토큰이 코드에 직접 작성되어 있었습니다.

이후 다른 기여자가 수정 사항을 보냈습니다. 토큰을 환경 변수에서만 읽도록 코드를 바꾼 것으로, 이 변경은 main 브랜치에 병합되었습니다. 수정 자체는 올바릅니다. 하지만 SKILL.md는 업데이트하지 않았습니다. 그래서 지금도 SKILL.md는 모델에게 요청에 기본 토큰이 사용된다고 알려 주지만, 코드에는 기본값이 없습니다. 이 줄을 읽은 모델은 변수 없이도 호출이 작동할 것으로 예상하지만 401 응답만 받게 됩니다.

더 큰 문제는 포크입니다. 저희는 GitHub API로 저장소의 포크를 하나씩 확인했습니다. 문자열의 해시만 비교했으며, 값을 복사하거나 테스트하지는 않았습니다. 결론은 한 문장입니다. 일부 포크에는 초기에 하드코딩된 토큰이 아직 남아 있으므로, 작성자가 이 토큰을 교체할 것을 권장합니다.

토큰이 아직 작동하는지는 테스트하지 않았고, 테스트해서도 안 됩니다. 유출된 토큰으로 호출하면 다른 사람의 돈을 쓰게 됩니다. Helper 사용자 입장에서 얻을 교훈은 다음과 같습니다. 포크나 복사본에서 설치한 버전은 원본 저장소의 수정된 버전이 아닐 수 있습니다.

상황대응 방법
원본 저장소의 현재 main 브랜치를 사용하는 경우TIKHUB_TOKEN이 아닌 TIKHUB_API_TOKEN을 설정하고 User-Agent 추가
포크나 복사본에서 Helper를 설치한 경우복사본에서 하드코딩된 토큰을 검색해 삭제하고, 토큰을 변수에서 읽도록 변경
저장소나 포크를 관리하는 경우초기 토큰을 폐기하고 교체. 히스토리를 변경해도 다른 복사본에는 반영되지 않음

이 경우에 대해 GitHub 문서는 명확하게 안내합니다. 비밀번호나 토큰 같은 자격 증명이 유출되었다면 가장 먼저 이를 폐기하거나 교체해야 합니다. 폐기하고 나면 아무도 사용할 수 없으며, 대개 히스토리를 다시 쓸 필요도 없습니다. 히스토리만 다시 쓰고 force push하면, 다른 사람들은 여전히 어떤 클론이나 포크에서든 이전 커밋을 가져올 수 있습니다. 해시를 통한 GitHub의 캐시된 뷰나 해당 커밋을 참조하는 pull request에서도 가져올 수 있습니다. 포크에 있는 복사본은 포크 소유자만 삭제할 수 있습니다.

즉, 원본 저장소의 수정은 앞으로만 효과가 있습니다. 이미 외부에 퍼진 복사본은 수정할 수 없습니다. 효과가 있는 조치는 토큰을 폐기하는 것입니다.

회색 캐비닛 일러스트입니다. 가운데 서랍 하나에는 투명한 덮개 아래 청록색 열쇠가 들어 있습니다. 다른 서랍은 열린 채 비어 있습니다. 캐비닛 밖 벤치에는 회색 열쇠가 놓여 있고, 똑같은 회색 열쇠들이 길을 따라 줄지어 멀어집니다. 원본 저장소는 토큰을 치웠지만, 공개된 곳에 있는 복사본은 계속 퍼진다는 의미입니다.
원본 저장소를 수정해도 포크와 복사본까지 회수할 수는 없습니다. 효과가 있는 조치는 토큰을 폐기하는 것입니다. 이 글을 위해 제작한 일러스트로, 실제 인터페이스가 아님

포크나 복사본에서 Helper를 설치했다면 로컬 복사본에서 긴 하드코딩 문자열을 검색하세요. 발견하면 삭제하고 토큰을 환경 변수에서 읽도록 바꾸세요. 다른 사람이 남긴 토큰은 절대 사용하지 마세요. EveryInfra를 사용할 때는 MCP 설정에서만 ${EVERYINFRA_API_KEY}를 참조하고, 다른 곳에서는 참조하지 마세요. Claude Code MCP 문서에 따르면 .mcp.json은 이런 변수 확장을 지원합니다. 팀은 키를 공유하지 않고도 설정 파일을 공유할 수 있습니다.

api tikhub io와 api.tikhub.dev: Python의 urllib이 연결하지 못하는 이유

"api tikhub io"를 검색하는 사람들은 대개 코드나 오류 메시지에서 이 도메인을 본 적이 있습니다. api.tikhub.io는 TikHub의 메인 도메인입니다. 루트 경로는 토큰을 입력하고 브라우저에서 호출을 시험해 볼 수 있는 Swagger 페이지입니다. api.tikhub.dev도 있습니다. Helper는 이 도메인을 "네트워크 제한을 우회하기 위한 중국 도메인"이라고 설명합니다.

TikHub의 README는 도메인 및 연결 안내에서 다르게 설명합니다. api.tikhub.io를 사용하고, 더 느릴 수 있는 api.tikhub.dev는 피하라고 합니다. 요청이 30초 넘게 걸리면 직접 프록시를 설정하라고 권합니다.

Helper를 막는 원인은 도메인이 아닙니다. 요청 헤더입니다. Helper의 api_client.py는 Python 표준 urllib.request로 요청을 보내며 User-Agent를 설정하지 않습니다. 그래서 Python 문서에 나온 기본값, 즉 "Python-urllib/" 뒤에 버전을 붙인 값을 사용합니다. 저희는 SGT 00:20:21에 Helper를 그대로 사용해 토큰이 필요 없는 헬스 체크 엔드포인트 /api/v1/health/check를 호출했습니다. 결과는 "HTTP 403: Forbidden"이었습니다.

이어서 같은 주소에 헤더를 바꿔 가며 요청을 보냈습니다. 결과는 아래 표와 차트에 정리했습니다. 403 응답 본문은 모두 "error code: 1010" 한 줄이었고, 응답 헤더에는 server: cloudflare가 있었습니다.

User-Agentapi.tikhub.ioapi.tikhub.dev
Python-urllib/3.15(Helper 기본값)403, 1010(2회 중 2회)403, 1010(2회 중 2회)
python-requests/2.32.3200(2회 중 2회)200(1회 중 1회)
python-httpx/0.28.1200(1회 중 1회)테스트하지 않음
curl/8.7.1200(1회 중 1회)200(1회 중 1회)
브라우저 헤더200(1회 중 1회)테스트하지 않음
히트 그리드입니다. 행은 User-Agent 값 5개, 열은 api.tikhub.io와 api.tikhub.dev 도메인입니다. 모든 요청은 토큰이 필요 없는 헬스 체크 엔드포인트로 보냈습니다. Python-urllib/3.15는 두 도메인에서 각각 2회씩 시도해 모두 오류 코드 1010과 함께 403을 받았습니다(회색). python-requests/2.32.3은 두 도메인 모두에서 200을 받았습니다(청록색, io 2회, dev 1회). python-httpx/0.28.1, curl/8.7.1, 브라우저 헤더는 api.tikhub.io에서 각각 1회 200을 받았고, curl은 api.tikhub.dev에서도 200을 받았습니다. 요청은 2026-11-06 SGT 00:20~00:26에 싱가포르에서 전송했습니다.

1010은 Cloudflare 오류 코드입니다. 이 오류에 대한 Cloudflare 페이지에 따르면, 사이트 소유자가 브라우저 시그니처를 기준으로 접근을 차단했다는 뜻입니다. 이 페이지의 일반적인 원인 목록에는 "the default Python urllib user agent"가 있습니다. Cloudflare의 Browser Integrity Check는 기본으로 켜져 있으며, User-Agent가 없거나 일반적이지 않은 User-Agent를 사용한 요청을 차단합니다. Cloudflare가 제시하는 해결 방법은 "my-app/1.0"처럼 자신이 누구인지 밝히는 User-Agent를 보내는 것입니다. 브라우저로 위장할 필요는 없습니다.

이 결과에는 한계가 있습니다. 싱가포르의 네트워크 한 곳에서, 두 시점에만 테스트했습니다. TikHub는 자체 Cloudflare 규칙을 설정하므로 지역과 시간에 따라 결과가 달라질 수 있습니다. 다만 두 차례 테스트와 두 도메인 모두에서 결과는 같았습니다.

api.tikhub.io의 실제 응답 두 개를 담은 스크린샷입니다. 위쪽은 토큰 없이 잘못된 파라미터 post_id로 TikTok 게시물 상세 엔드포인트에 보낸 요청입니다. HTTP 401을 반환합니다. 청록색 상자가 메시지 "API token is missing in the request Header or Cookie"와 반환된 params의 post_id를 표시합니다. 본문에는 message_zh, support, time_zone America/Los_Angeles도 있습니다. 아래쪽은 Python-urllib/3.15 헤더로 헬스 체크 엔드포인트에 보낸 요청입니다. HTTP 403을 반환하며, 본문은 청록색 상자 안의 error code: 1010 한 줄입니다.
토큰이 없으면 TikHub는 인증부터 확인하며, 잘못된 파라미터는 지적하지 않습니다. 기본 urllib 헤더는 요청이 API에 도달하기 전에 차단됩니다. 2026-11-06 싱가포르에서 전송. api.tikhub.io의 실제 응답

AI 에이전트에게 이 403은 401보다 처리하기 어렵습니다. Helper는 JSON이 아닌 본문과 함께 403을 받으면 {"error": "HTTP 403: Forbidden", "status_code": 403}만 반환합니다. 핵심 단서인 "1010"은 사라집니다. SKILL.md의 오류 표에는 401, 429, 연결 오류, 파라미터 누락의 네 가지 경우만 있습니다. 403에 대한 행은 없습니다.

TikHub의 README는 403의 원인으로 네 가지를 듭니다. 토큰에 해당 라우트 권한이 없는 경우, 계정이 정지된 경우, 이메일이 인증되지 않은 경우, 토큰의 권한이 부족한 경우입니다. 문서를 꼼꼼히 읽은 모델은 이 403을 거의 항상 토큰 문제로 판단합니다. 그래서 이메일 인증을 확인하거나 새 토큰을 만들라고 안내할 것입니다. 실제 해결 방법은 헤더 한 줄입니다. _build_headers에 User-Agent 줄을 추가하세요:

python
# _build_headers in api_client.py: add only the User-Agent line, keep the rest
def _build_headers(self, content_type: str = "application/json"):
    return {
        "Authorization": f"Bearer {self.api_token}",
        "Content-Type": content_type,
        "User-Agent": "my-tikhub-agent/1.0",  # without this line, Cloudflare blocks the default urllib header with 1010
    }

EveryInfra도 같은 Python-urllib 헤더로 테스트했습니다. SGT 00:26:04에 TikTok 기능 카탈로그를 읽었고, 00:26:05에 MCP 도구 목록을 요청했습니다. 둘 다 200을 반환했습니다. 똑같은 순수 Python 코드가 한쪽에서는 실행되고 다른 쪽에서는 차단됩니다. 에이전트가 작성하는 스크립트 상당수가 바로 이처럼 추가 라이브러리를 쓰지 않는 코드입니다.

호출 한 번에 몇 단계가 필요할까: Helper, TikHub MCP, EveryInfra 원격 MCP

이제 앞의 내용을 종합해 보겠습니다. 에이전트가 TikTok 계정 하나의 프로필 데이터를 가져와야 하는 작업을 예로 들어 각 방식에 필요한 단계 수를 비교합니다. Helper는 변수 이름과 헤더를 수정한 뒤의 최상의 경우를 가정합니다. TikHub MCP는 MCP 페이지의 설정을 사용합니다. EveryInfra는 같은 날 밤 실제로 호출한 결과를 사용합니다.

단계커뮤니티 Helper(수정 후)TikHub MCPEveryInfra 원격 MCP
설정저장소 클론, TIKHUB_API_TOKEN 설정, 헤더 수정Node.js 설치, 플랫폼마다 npx mcp-remote 항목 1개 추가HTTP 항목 1개, 키는 변수에서 읽음
엔드포인트 찾기api_searcher.py, 여러 단어로 검색하면 0건이 반환되는 경우가 많음TikTok 서버 도구 163개, Douyin 319개무료 everyinfra_list_capabilities 호출 또는 카탈로그 확인
파라미터 확인detail: 뒤에 전체 operationId각 도구 설명에 파라미터 포함카탈로그 항목마다 필수·선택 파라미터, response_fields, 가격 표시
호출api_client.py GET path params해당 도구 호출platform, action, params로 everyinfra_call_api 호출
실수했을 때HTTP 상태와 원본 본문만 제공TikHub의 401 또는 422 응답did_you_mean, example이 포함된 400 또는 422, 과금 없음
합계도구 호출 최소 4회, 검색 실패 시 추가도구 설명 로드 후 호출 1회호출 2회(카탈로그 조회 + 실제 호출), 에이전트가 이름을 익힌 뒤에는 1회

TikHub MCP는 플랫폼마다 서버가 하나씩 있습니다. 플랫폼 목록은 토큰 없이 볼 수 있습니다. 도구 수는 TikTok 163개, Douyin 319개, Instagram 93개, Xiaohongshu 45개입니다. 엔드포인트 하나가 도구 하나이므로 모델이 바로 골라 쓸 수 있습니다. 대신 Douyin 서버에 연결하면 도구 설명 319개를 불러와야 합니다.

TikHub 설정 예시는 npx mcp-remote로 원격 HTTP 서버를 로컬 프로세스로 바꿉니다. 인증 정보는 --header 인수에 넣습니다. TikHub 플러그인 설정은 ${TIKHUB_API_KEY}로 환경 변수를 참조합니다. 아래에 TikHub 예시(키는 변수 참조로 바꿈)와 저희 예시를 나란히 두었습니다. 정확한 필드는 사용하는 클라이언트의 문서에서 확인하세요.

json
{
  "mcpServers": {
    "tikhub-tiktok": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.tikhub.io/tiktok/mcp",
               "--header", "Authorization: Bearer ${TIKHUB_API_KEY}"]
    },
    "everyinfra": {
      "type": "http",
      "url": "https://api.everyinfra.com/mcp",
      "headers": { "Authorization": "Bearer ${EVERYINFRA_API_KEY}" }
    }
  }
}

EveryInfra는 https://api.everyinfra.com/mcp라는 단일 주소를 사용합니다. SGT 00:21:08에 키 없이 이 주소의 도구 목록을 요청했습니다. 16,247바이트 응답에 도구 12개가 들어 있었습니다. 사용량, 결제, 키 등을 위한 계정 도구 12개는 전체 도구용 경로인 /mcp/all에 있어 도구는 총 24개입니다. /mcp-server를 참고하세요. 데이터 기능마다 도구를 하나씩 두지는 않습니다. 모든 기능은 everyinfra_call_api를 거치며, platform과 action 두 파라미터로 기능을 지정합니다. 예를 들면 tiktok/profile입니다.

장점은 도구 목록이 작고, 새 기능이 추가돼도 설정을 바꿀 필요가 없다는 점입니다. 단점은 모델이 action 이름을 알려면 먼저 카탈로그를 읽어야 한다는 점입니다. 카탈로그에는 키가 필요 없습니다. GET /api/v1/social/catalog?platform=tiktok&compact=1은 TikTok만 반환합니다. SGT 00:18:12 기준 6,835바이트였으며, 모든 TikTok 기능의 파라미터, 가격, 필드 이름이 들어 있었습니다.

MCP 사양은 두 설계를 모두 허용합니다. 2026-07-28 사양의 인가 섹션은 인가(authorization)가 선택 사항이라고 명시합니다. 두 서비스 모두 OAuth를 쓰지 않습니다. 둘 다 키를 요청 헤더로 보내며, 이는 RFC 6750의 Bearer 헤더 형식을 따릅니다.

잘못 호출하면 어떻게 될까: 400, 422, did_you_mean 직접 테스트

에이전트가 가장 흔히 하는 실수는 다른 서비스의 이름 규칙을 그대로 쓰는 것입니다. 저희는 방금 TikHub를 사용한 에이전트의 동작을 그대로 재현했습니다. SGT 00:21:08에 TikHub 스타일의 action인 fetch_user_profile과 파라미터 uniqueId로 첫 번째 요청을 보냈습니다. 이어서 올바른 기능 이름에 Helper 예시의 파라미터 sec_user_id를 넣은 두 번째 요청을 보냈습니다.

첫 번째 요청은 400 unknown_capability를 반환했습니다. did_you_mean은 profile이었고, allowed에는 TikTok 데이터 기능 24개가 모두 나열되었습니다(위의 MCP 도구 24개와는 다른 24개입니다). next_steps는 profile로 다시 보내라고 안내했고, 과금되지 않았다고 알렸습니다. 두 번째 요청은 422 missing_param을 반환했습니다.

두 번째 요청의 next_steps는 필수 파라미터 username을 추가하라고 안내했고, sec_user_id는 여기서 쓰는 파라미터가 아니라고 알렸습니다. 그대로 실행할 수 있는 example도 들어 있었습니다. 두 요청 모두 비용이 들지 않았습니다.

2026-11-06 00:21:08 SGT에 api.everyinfra.com에서 받은 실제 응답 두 개의 스크린샷이며, 두 응답 모두 charge는 0입니다. 위쪽: 액션 fetch_user_profile로 요청하면 HTTP 400 unknown_capability 응답이 반환됩니다. 청록색 상자는 did_you_mean의 profile과 next_steps의 "Nothing was charged"를 표시합니다. 아래쪽: 파라미터 sec_user_id로 요청하면 HTTP 422 missing_param 응답이 반환됩니다. 청록색 상자는 "sec_user_id is not a parameter here"와 platform tiktok, action profile, params username nasa로 구성된 예시를 표시합니다.
기능 이름이나 파라미터가 틀리면 응답이 에이전트에게 무엇을 고쳐야 하는지 알려 주고, 바로 실행되는 요청도 제시합니다. 두 호출 모두 과금되지 않았습니다. api.everyinfra.com의 실제 응답

TikHub와 비교해 보겠습니다. TikHub는 토큰이 없으면 인증부터 확인합니다. SGT 00:20:40에 잘못된 파라미터 post_id를 넣고 토큰 없이 게시물 상세 엔드포인트를 호출했습니다. 결과는 401이었습니다.

응답 본문에는 경로와 파라미터가 그대로 담겨 있었지만, 잘못된 파라미터를 짚어 주지는 않았습니다. openapi.json에 따르면, 토큰이 있을 때 필수 파라미터가 누락되면 FastAPI 422가 반환됩니다. 이 응답은 누락된 필드 이름은 알려 주지만 올바른 이름을 제안하지는 않습니다.

EveryInfra도 인증을 먼저 확인한 뒤 파라미터를 검사합니다. 키가 없으면 401을 받으므로, 인증 없는 요청으로는 API 구조를 알아낼 수 없습니다. 키가 있으면 알 수 없는 파라미터나 잘못된 값에 대해 지원 파라미터, 허용 값, did_you_mean을 담은 422를 반환합니다. 이 규칙의 목적은 호출하는 쪽의 AI가 스스로 실수를 고치게 하는 것입니다. 잘못 호출할 때마다 비용이 들어서는 안 됩니다.

실제 호출 3건: MCP로 1건, curl로 2건

이제 실제 호출입니다. 건당 $0.000556인 기능 3개를 골랐으며, 플랫폼은 2개, 호출 방식도 2가지입니다. 호출마다 SGT 시각, 항목 수, charged_usd를 기록했습니다.

시각(SGT)기능방법소요 시간결과과금
00:21:20tiktok/profile, username=tiktok원격 MCP everyinfra_call_api30.2 s계정 1개: 팔로워 96,600,000명, 동영상 1,513개$0.000556
00:21:56tiktok/user_videos, username=tiktokcurl38.3 s동영상 10개$0.000556
00:22:42douyin/comments, Douyin 동영상 링크 1개curl19.4 s댓글 20개$0.000556

세 호출의 비용은 모두 합쳐 $0.001668입니다. 시간에 대해서는 솔직히 말씀드려야 합니다. 호출에는 각각 30초, 38초, 19초가 걸렸습니다. 동기식 결과를 기다리는 시간입니다.

이 방식은 페이지를 지켜보는 사람보다 백그라운드에서 일하는 에이전트에 맞습니다. 저희는 TikHub 계정이 없어 TikHub의 속도는 측정하지 못했습니다. TikHub README는 타임아웃을 30~60초로 설정하라고 안내합니다.

반환되는 필드는 카탈로그의 response_fields에 정의되어 있습니다. 프로필 기능은 follower_count, video_count 등 16개 필드를 반환합니다. 동영상 기능은 30개가 넘는 필드를 반환합니다. 댓글 기능에는 like_count, reply_count, ip_location과 다음 페이지를 위한 next_page_token이 들어 있습니다. 아래는 두 번째 호출의 curl 요청입니다. 키는 환경 변수에서만 가져옵니다.

bash
curl -s https://api.everyinfra.com/api/v1/social \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform":"tiktok","action":"user_videos","params":{"username":"tiktok"}}'
# returns count: 10, billing.charged_usd: 0.000556

가격: 같은 TikTok·Douyin 요청 1,000건의 비용 비교

이 가격 섹션은 일부러 짧게 썼습니다. 자세한 내용은 TikHub 요금 정리를 참고하세요. TikHub는 SGT 00:18:13에 읽은 가격표와 SGT 00:16에 읽은 요금 페이지를 기준으로 했습니다. 저희 호출에 대응하는 엔드포인트는 TikTok 프로필 fetch_user_profile, TikTok 동영상 fetch_user_post, Douyin 댓글 fetch_video_comments입니다.

세 엔드포인트 모두 호출당 $0.001입니다. TikTok과 Douyin의 가격이 책정된 엔드포인트는 모두 658개이며, 그중 529개가 $0.001입니다. EveryInfra는 위 실제 호출 3건의 charged_usd인 건당 $0.000556을 사용했습니다.

구분(요청 각 1,000건)TikHub 공개 가격EveryInfra 실측배율
TikTok 프로필$1.00 ($0.001 × 1,000)$0.5561.8
TikTok 동영상$1.00; 기본값은 페이지당 항목 15개, 항목 1,000개당 약 $0.067$0.556; 호출당 항목 10개, 항목 1,000개당 $0.0556호출당 1.8배, 항목당 1.2배
Douyin 댓글$1.00; 기본값은 페이지당 항목 20개, 항목 1,000개당 $0.05$0.556; 호출당 항목 20개, 항목 1,000개당 $0.0278호출당 1.8배, 항목당 1.8배
무료 크레딧회원가입 시 $0.05, 약 50회 호출; 일부 엔드포인트는 무료GitHub 스타를 누르면 $1, 24시간 유효—
최소 충전 금액$5$10 단계부터TikHub가 더 낮음

항목당 수치에 대해 두 가지 참고 사항이 있습니다. TikHub 동영상 엔드포인트는 count 파라미터 값을 높일 수 있습니다. 페이지당 항목이 많을수록 항목당 가격이 낮아지며, 최댓값은 테스트하지 못했습니다. EveryInfra의 tiktok/user_videos는 호출당 항목 10개를 반환하므로 항목당 차이는 1.2배에 그칩니다.

TikHub에는 일일 사용량 할인도 있습니다. 한 엔드포인트에서 하루 첫 1,000회 호출 이후 단가가 $0.0009, $0.0008로 단계적으로 내려가며, 30,000회 이후에는 $0.0005가 됩니다. 저희는 이 단계를 하루 N회 호출할 때의 1,000회당 평균 가격으로 환산했습니다. 하루 10,000회 호출하면 평균은 $0.86입니다.

50,000회에서는 $0.632입니다. 하루 약 117,900회가 되어야 EveryInfra의 $0.556까지 내려갑니다. 그 이상이면 TikHub가 더 저렴합니다.

할인은 할인을 허용하는 엔드포인트에만 적용됩니다. $0.001인 TikTok·Douyin 엔드포인트 529개 중 52.0%가 할인을 허용합니다. 예를 들어 Douyin 단일 동영상 엔드포인트 fetch_one_video는 할인이 적용되지 않습니다.

선 그래프입니다. 가로축은 엔드포인트 하나의 하루 호출 수로, 1,000부터 200,000까지 로그 스케일입니다. 세로축은 1,000회당 평균 가격입니다. 회색 선은 일일 할인을 적용한 호출당 $0.001의 TikHub로, 1,000회에서 $1.000, 10,000회에서 $0.860, 50,000회에서 $0.632, 200,000회에서 $0.533입니다. 청록색 수평선은 실제 호출 3건에서 측정한 EveryInfra의 $0.556입니다. 두 선은 하루 약 117,900회에서 교차합니다.

결국 답은 사용량에 따라 달라집니다. 엔드포인트 하나에 하루 수천~수만 회를 호출하는 에이전트라면 EveryInfra가 더 저렴합니다. 할인을 허용하는 엔드포인트 하나에 하루 약 118,000회를 넘게 호출하면 TikHub의 사용량 가격이 더 낮습니다. EveryInfra 가격에도 월간 충전 금액에 따른 할인 단계가 있으며, 자세한 내용은 요금 페이지에서 확인할 수 있습니다.

TikHub 요금 페이지는 MCP와 브라우저 확장 프로그램을 통한 호출도 API 직접 호출과 비용이 같다고 밝힙니다. EveryInfra도 마찬가지입니다. MCP, SDK, curl 모두 같은 charged_usd가 청구되며, 실패한 호출과 빈 결과에는 비용이 들지 않습니다.

AI 에이전트에게 토큰을 맡기기 전에 확인할 6가지

위 내용을 체크리스트 하나로 정리했습니다. TikHub를 쓰든 EveryInfra를 쓰든, 에이전트가 처음 실제 호출을 하기 전에 다음 6가지를 확인하세요. 항목마다 확인 방법을 함께 적었습니다.

첫째, 에이전트마다 별도의 토큰을 발급하세요. TikHub는 사용자당 최대 100개를 허용합니다. EveryInfra에서는 키 하나로 하루 최대 20개의 키를 만들 수 있습니다. 콘솔에서 만든 키는 이 한도에 포함되지 않습니다.

토큰을 나누면 사용 기록에서 어느 에이전트가 얼마를 썼는지, 어느 에이전트가 요청 속도 제한에 걸렸는지 알 수 있습니다. 한 에이전트의 설정 파일이 실수로 공개 저장소에 올라가도 그 토큰 하나만 비활성화하면 됩니다. 확인 방법: 각 토큰이 한 프로젝트의 환경에만 있는지 확인합니다.

둘째, 토큰은 환경 변수에만 두세요. 스킬 파일에 넣지 말고, 설정 파일에 평문으로 넣지도 마세요. TikHub 플러그인과 EveryInfra 플러그인은 모두 설정에서 ${...}로 변수를 참조하며, 이것이 올바른 방식입니다. Helper의 이력은 그 반대 사례를 보여 줍니다.

초기 버전에서 코드에 들어갔던 토큰은 나중에 원본 저장소에서 삭제되었지만, 일부 포크에는 아직 남아 있습니다. 확인 방법: 프로젝트 폴더에서 "Bearer"와 토큰의 앞 몇 글자를 검색합니다. 검색 결과는 변수 이름뿐이어야 합니다.

셋째, 실행 중인 코드가 읽는 변수 이름을 쓰세요. 당연해 보이지만 Helper는 세 가지 이름을 씁니다. SKILL.md에는 TIKHUB_TOKEN이라고 적혀 있고, 코드는 TIKHUB_API_TOKEN을 읽으며, TikHub SDK와 플러그인은 TIKHUB_API_KEY를 씁니다. SKILL.md의 이름만 설정하면 요청이 빈 Bearer 헤더로 전송됩니다.

그러면 TikHub는 401을 반환하고, 모델은 아마 토큰이 틀렸다고 판단해 새로 만들라고 할 것입니다. 확인 방법: 호출 전에 토큰 값이 아니라 길이를 출력합니다. 길이가 0이면 변수 이름이 틀린 것입니다.

넷째, 무료 요청을 먼저 하나 보내세요. TikHub의 헬스 체크와 가격표에는 토큰이 필요 없습니다. EveryInfra의 카탈로그와 MCP 도구 목록에도 키가 필요 없습니다. 에이전트가 사용할 것과 같은 HTTP 클라이언트로 요청을 하나 보내세요. 이렇게 하면 차단된 헤더(1010), 인증 실패(401), 잘못된 파라미터(422)라는 세 종류의 문제를 구분할 수 있습니다. 저희도 이 단계에서 urllib 기본 헤더로는 두 TikHub 도메인 모두에 접근할 수 없고, curl과 requests로는 접근된다는 사실을 발견했습니다.

다섯째, 에이전트 지침에 요청 속도 제한을 적어 두세요. TikHub는 엔드포인트별로 집계합니다. 74개 엔드포인트는 기본값인 초당 10회와 다르며, 가장 낮은 값은 초당 1회입니다. EveryInfra는 계정별로 집계하며 기본값은 분당 60회입니다.

에이전트는 기본적으로 병렬로 실행되므로, 429를 받으면 기다리라고 명확히 지시하세요. EveryInfra 응답에는 Retry-After가 있어 에이전트가 거기에 적힌 초만큼 기다리면 됩니다. TikHub의 429 설명은 "Request too fast"뿐이며, 공개 문서에는 얼마나 기다려야 하는지 나와 있지 않습니다. 1초를 기다리고, 429를 다시 받을 때마다 대기 시간을 두 배로 늘리는 방식을 권장합니다.

여섯째, 잔액에 한도를 두고, 가장 비싼 호출부터 찾으세요. 가격이 책정된 TikHub 엔드포인트 1,471개 중 대부분은 호출당 $0.001입니다. 하지만 경로에 "xingtu"가 들어간 Douyin Xingtu 엔드포인트 78개 중 19개는 호출당 $0.02입니다. Douyin 일반 검색 v2는 $0.01입니다.

토큰 하나 안에서도 가격이 20배까지 차이 납니다. EveryInfra는 기능별 가격이 카탈로그에 있어 에이전트가 호출 전에 읽을 수 있습니다. 확인 방법: 에이전트에게 호출 전에 엔드포인트와 가격 목록을 작성하게 하고, 그 목록을 승인합니다. 잔액은 해당 실행에 필요한 만큼만 남겨 두세요.

확인 항목확인 방법EveryInfra에서는
1. 에이전트마다 토큰 1개각 토큰이 한 프로젝트에만 있음사용자
2. 토큰은 변수에만"Bearer" 검색 시 변수 이름만 나옴사용자
3. 올바른 변수 이름토큰 길이가 0이 아님이름은 하나뿐: EVERYINFRA_API_KEY
4. 무료 요청 1건 먼저1010, 401, 422 구분무료 카탈로그와 도구 목록
5. 지침에 요청 속도 제한 명시429 후 에이전트 대기Retry-After로 대기 시간 안내
6. 잔액 한도와 최고 가격 확인에이전트가 가격 목록을 먼저 제시카탈로그에 가격 명시

무료 데이터 분석 스킬은 Helper와 다릅니다

"tikhub api helper"를 검색하는 사람 상당수가 원하는 것은 하나입니다. 스킬을 설치하고 AI가 데이터를 가져와 분석하게 하는 것입니다. 여기에는 두 종류의 스킬이 있습니다. Helper는 'API 호출 방법' 가이드입니다. 모델에게 엔드포인트를 어디서 찾고 요청을 어떻게 만드는지 알려 줍니다. 데이터를 분석하지는 않습니다.

EveryInfra에도 데이터 분석 스킬이 있습니다. 무료로 내려받을 수 있으며, 사용자의 AI 도구와 모델에서 사용합니다. 2026-10-15에 출시한 v0.4.1에는 이커머스 상품 분석, 소셜 콘텐츠 성과, 콘텐츠 태깅, 리뷰 인사이트 네 가지가 들어 있습니다. 이 스킬은 데이터를 수집하지 않습니다. 데이터는 EveryInfra API로 수집하며, 수집은 호출당 과금됩니다. 사용 방법은 AI 도구 4종에서 쓰는 SKILL.md 하나 글에서 볼 수 있습니다.

API 쪽은 플러그인 저장소에 있습니다. v0.4.0은 2026-10-21에 나왔으며, 설정에서 ${EVERYINFRA_API_KEY}를 참조합니다. 2026-11-01에는 명령줄 도구와 가격 추정 기능을 갖춘 PyPI의 everyinfra 0.3.0도 출시했습니다.

수집과 분석을 나누면 토큰 관리에도 도움이 됩니다. 분석 스킬에는 키가 전혀 필요 없습니다. 키는 API 단계에만 필요합니다. 분석은 로컬에서 실행하고, 수집 단계에는 권한을 좁게 제한한 키 하나만 주면 됩니다.

TikHub가 더 나은 선택일 때

TikHub가 EveryInfra보다 나은 점도 있습니다. 첫째, 엔드포인트 범위입니다. 현재 TikHub 문서에는 경로가 1,058개 있습니다. Douyin Xingtu, DOU+, Xiaohongshu Pugongying, Bilibili Huahuo 같은 인플루언서 마케팅·광고 플랫폼 데이터에 대해 세부 엔드포인트가 많습니다. 이런 백오피스 마케팅 엔드포인트는 EveryInfra보다 많습니다.

둘째, 대량 이용 시 가격입니다. 할인이 적용되는 엔드포인트 하나에서 하루 약 118,000건을 넘게 호출하면 해당 서비스의 대량 이용 가격이 저희보다 낮습니다. 셋째, 초기 비용입니다. 해당 서비스의 최소 충전 금액은 $5로 저희의 $10 단계보다 낮고, $0.05 무료 크레딧에는 사용 기한이 없습니다. 넷째, 원본 필드입니다.

TikHub는 플랫폼 자체의 데이터 구조를 그대로 반환합니다. 예를 들어 TikHub API 키, 문서, GitHub 직접 테스트에서 TikHub는 정확한 TikTok 팔로워 수를 반환했지만, EveryInfra는 반올림한 숫자를 제공합니다. 다섯째, 키 개수입니다. 사용자당 100개를 만들 수 있어 프로젝트별 비용 관리가 쉽습니다. TikHub Python SDK 2.2.0 설명에 따르면 이 SDK는 엔드포인트 1,048개를 지원하며 비동기 클라이언트를 제공합니다.

위의 스냅샷 비교도 TikHub가 나아가는 방향을 보여 줍니다. 새로 추가된 엔드포인트 226개는 거의 모두 인플루언서 마케팅과 광고 플랫폼용입니다. 브랜드에 맞는 크리에이터를 찾고 단가표와 광고 데이터를 확인하는 일이라면 TikHub가 EveryInfra보다 훨씬 깊이 다룹니다. 이런 엔드포인트는 상당수가 $0.001이 아니므로 가격을 하나씩 확인하세요.

이미 TikHub를 쓰고 있고 계속 쓰려는 경우에도 이 글은 세 가지로 도움이 됩니다. 오래된 커뮤니티 Helper 대신 TikHub의 플러그인이나 SDK를 쓰세요. 실행 중인 코드가 읽는 변수 이름을 설정하세요. 직접 작성한 Python 스크립트에는 User-Agent를 설정하세요.

AI 에이전트를 소셜 데이터에 처음 연결한다면 다른 요소가 더 중요할 수 있습니다. 에이전트가 스스로 고칠 수 있는 오류, 실패한 요청에 대한 무과금, 모든 플랫폼에 쓰는 단일 주소가 그렇습니다. 하루 수천에서 수만 건 규모의 호출 비용도 마찬가지입니다. 이런 경우라면 EveryInfra가 더 간단한 선택입니다.

TikHub를 다룬 다른 글에서는 각기 다른 주제를 다룹니다. TikHub API 키, 문서, GitHub 직접 테스트에서는 키, 문서 분량, TikHub SDK 현황을 다룹니다. TikHub 요금 해설에서는 1,000개가 넘는 가격 항목을 분석합니다. TikHub 대안과 /alternatives/tikhub에서 전체 비교를 확인할 수 있습니다.

업계 소식

  • 2026-10-22, Anthropic은 Agent Skills 표준을 Agentic AI Foundation에 기증했습니다. 같은 날 발표된 Linux Foundation 공지에 따르면 70개가 넘는 에이전트 플랫폼이 이 표준을 지원합니다. 공지는 또한 게시된 스킬이 1M개, 설치 횟수가 약 280M회에 이른다고 밝혔습니다. 이것이 의미하는 바는 다음과 같습니다. 각 SKILL.md를 읽는 도구가 늘어나는 만큼, 이 글에서 다룬 커뮤니티 Helper처럼 스킬에 잘못된 변수 이름이나 엔드포인트 이름이 있으면 포크와 복사본을 통해 더 멀리 퍼집니다.
  • 2026-10-24에 Cloudflare는 Python urllib의 기본 User-Agent를 명시한 1010 오류 페이지를 업데이트했습니다. 시사점: 별도 라이브러리 없이 작성한 에이전트 스크립트는 프로덕션에서 쓰기 전에 User-Agent를 설정하세요.
  • 2026-10-27에 Google Cloud는 IAM Helper를 출시했습니다. IAM Helper는 Agent Skills와 MCP 도구를 사용해 에이전트가 403 오류를 조사하고 1시간짜리 임시 접근 권한을 요청할 수 있게 하며, 권한 변경 전에는 사람의 승인을 거치도록 합니다. 시사점: 에이전트가 403 오류에 대응해 추가 접근 권한을 요청하는 경우가 더 많아질 것입니다. 403이 실제로는 1010 헤더 차단이라면 권한을 늘려도 소용없습니다. 먼저 응답 본문을 읽어 403이 어디서 발생했는지 확인하세요.
  • 2026-10-28에 GitHub는 AI 기반 시크릿 탐지를 push protection에 연결했습니다. 이 기능은 퍼블릭 프리뷰 단계이며 기본적으로 꺼져 있습니다. 시사점: 앞으로 하드코딩된 토큰이 포함된 푸시는 차단할 수 있지만, 포크에 이미 있는 복사본은 차단할 수 없습니다.

FAQ

TikHub API 토큰은 어디서 생성하나요?

(출처: "tikhub api token" Google 자동완성, 2026-11-06 확인) TikHub 사용자 센터에 로그인합니다. API 토큰 메뉴를 열고 토큰을 생성합니다. 생성한 토큰을 Authorization: Bearer 헤더에 넣습니다. 원문은 문서 사이트 README 끝부분의 "Get API Token" 섹션에 있으며, 사용자당 최대 100개까지 만들 수 있습니다.

이전 문서에는 스코프, 만료일, 수동 활성화/비활성화 상태를 설정할 수 있다고 나와 있었습니다. 현재 공개 문서에서는 설정 방법을 설명하지 않으며, 이 정보는 401 및 403 오류 사유에서만 확인할 수 있습니다. AI 에이전트마다 별도의 토큰을 발급하세요.

TikHub API Helper는 TikHub가 만들었나요?

(출처: "tikhub api helper" Google 자동완성, 2026-11-06 확인) 아닙니다. 상위 결과인 tikhub_api_skill은 개인 계정 소유이며, 설명에도 TikHub가 만들었다는 내용은 없습니다. TikHub의 자체 제품은 TikHub GitHub 조직의 tikhub-plugin(v1.1.0, 스킬 18개)과 TikHub Python SDK입니다. 커뮤니티 Helper 스냅샷의 25.7%는 더 이상 존재하지 않고, 기본 urllib 헤더는 차단됩니다. TikHub의 플러그인을 사용하거나, 먼저 이 글에서 설명한 두 가지 수정을 적용하세요.

api tikhub io가 열리지 않거나 403을 반환하면 어떻게 해야 하나요?

(출처: "api tikhub io", "https api tikhub io" Google 자동완성, 2026-11-06 확인) 먼저 응답 본문을 읽으세요. "error code: 1010"이라고 나오면 Cloudflare가 요청 헤더를 차단한 것입니다. 클라이언트에 User-Agent를 설정하면 문제가 해결됩니다. 토큰과는 관계가 없습니다. JSON 본문에 토큰 권한이 부족하다거나 이메일이 인증되지 않았다고 나오면 계정 문제입니다. TikHub는 api.tikhub.io를 사용하고, 요청이 30초 넘게 걸리면 직접 프록시를 구성하라고 안내합니다. api.tikhub.dev는 더 느릴 수 있습니다.

TikHub API 키와 토큰은 같은 것인가요?

(출처: "tikhub api key", "tikhub api token" Google 자동완성, 2026-11-06 확인) 네. TikHub는 위치에 따라 두 용어를 섞어 씁니다. 문서 사이트는 "API Token"이라고 합니다. 튜토리얼 페이지와 새 Python SDK는 "API key"라고 하며, 환경 변수는 TIKHUB_API_KEY입니다.

헷갈리는 부분은 변수 이름입니다. 커뮤니티 Helper 코드는 TIKHUB_API_TOKEN을 읽지만, SKILL.md에는 TIKHUB_TOKEN이라고 적혀 있습니다. 또 TikHub의 AI 에이전트 서비스에는 별도의 키가 있으며, 이 키는 데이터 API에서 작동하지 않습니다.

GitHub의 TikHub 스킬을 그대로 설치해도 되나요?

(출처: "tikhub github" Google 자동완성, 2026-11-06 확인) TikHub의 tikhub-plugin은 Claude Code 플러그인으로 설치할 수 있으며, 설정에서 ${TIKHUB_API_KEY}를 사용합니다. 커뮤니티 Helper도 설치할 수 있지만 먼저 세 가지 작업이 필요합니다. 올바른 변수 이름을 설정합니다. api_client.py에 User-Agent를 추가합니다. 로컬 복사본에 하드코딩된 토큰이 있는지 검색합니다. 포크나 복사본에는 초기에 하드코딩된 토큰이 남아 있을 수 있으며, 이 토큰은 절대 사용하면 안 됩니다.

TikHub AI API는 무엇이며, 같은 키를 사용하나요?

(출처: "tikhub ai api" Google 자동완성, 2026-11-06 확인) TikHub에는 테스트 중인 별도의 AI 에이전트 서비스가 있습니다. TikHub API 키, 문서, GitHub 직접 테스트에서 인용한 TikHub 자체 문서에 따르면, 별도 사이트에서 회원가입하고 별도의 키를 받아야 합니다. 이 키는 소셜 데이터 API에서 작동하지 않습니다. 이 글에서 "토큰"은 데이터 API 토큰만을 뜻합니다. EveryInfra는 키 하나로 데이터, 검색, CAPTCHA 해결을 모두 호출할 수 있으며, 콘솔에서 키별로 각 제품을 끌 수 있습니다.

시작하기

  1. /docs를 열고 회원가입한 뒤 콘솔에서 키를 생성합니다. 이 키를 환경 변수 EVERYINFRA_API_KEY로 설정합니다. 충전 전에 쓸 크레딧이 필요하면 /pricing 안내에 따라 GitHub 스타를 누르고 $1 체험용 크레딧을 받으세요.
  2. 키 없이 카탈로그를 조회합니다: GET https://api.everyinfra.com/api/v1/social/catalog?platform=tiktok&compact=1. TikTok과 Douyin의 기능과 가격을 확인할 수 있습니다.
  3. AI 도구에 MCP를 추가합니다. 주소는 https://api.everyinfra.com/mcp이며, 인증 헤더는 환경 변수를 참조합니다. 설정 방법은 /mcp-server를 참고하세요.
  4. 에이전트에게 먼저 everyinfra_list_capabilities를 호출하도록 요청합니다. 그러면 에이전트가 everyinfra_call_api로 tiktok/profile 같은 기능을 호출합니다. 호출에 실수가 있으면 응답의 did_you_mean과 example을 따라 바로잡으며, 이때 비용은 부과되지 않습니다.

참고 자료

  1. “README - English”(API Token Introduction, HTTP Status Codes), TikHub 문서, 2026-11-06 확인, https://docs.tikhub.io/4592766m0
  2. “README - Chinese”, TikHub 문서, 2026-11-06 확인, https://docs.tikhub.io/4579297m0
  3. “llms.txt”(문서 사이트 색인), TikHub, 2026-11-06 확인, https://docs.tikhub.io/llms.txt
  4. TikHub API Swagger 페이지, TikHub, 2026-11-06 확인, https://api.tikhub.io/
  5. “openapi.json”(V5.3.2, 경로 1,058개), TikHub, 2026-11-06 00:16 SGT 확인, https://api.tikhub.io/openapi.json
  6. get_all_endpoints_info 가격표(가격이 책정된 엔드포인트 1,471개, rate_limit 필드), TikHub, 2026-11-06 00:18 SGT 확인, https://api.tikhub.io/api/v1/tikhub/user/get_all_endpoints_info
  7. health/check 엔드포인트, TikHub, 2026-11-06 00:20–00:26 SGT 요청, https://api.tikhub.io/api/v1/health/check
  8. “Pricing”(볼륨 할인, RPS 요금제, 최소 충전 금액), TikHub, 2026-11-06 확인, https://tikhub.io/pricing
  9. “Tutorials & FAQ”(사용자당 최대 100개 키, 상태 코드), TikHub, 2026-11-06 확인, https://tikhub.io/tutorials
  10. “Getting Started”, TikHub, 2026-11-06 확인, https://tikhub.io/getting-started
  11. “MCP Integration Guide”, TikHub, 2026-11-06 확인, https://tikhub.io/mcp
  12. “MCP platforms”(플랫폼별 도구 수), TikHub, 2026-11-06 확인, https://mcp.tikhub.io/platforms
  13. “llms.txt”(메인 사이트), TikHub, 2026-11-06 확인, https://tikhub.io/llms.txt
  14. “tikhub 2.2.0”, PyPI, 2026-10-03 릴리스, https://pypi.org/project/tikhub/
  15. “tikhub 1.13.0”(Scopes, Expire Date, Status 문구), PyPI, 2024-12-05 릴리스, https://pypi.org/project/tikhub/1.13.0/
  16. “TikHub-API-Python-SDK”, GitHub TikHub, 2026-11-06 확인, https://github.com/TikHub/TikHub-API-Python-SDK
  17. “tikhub-plugin”(v1.1.0), GitHub TikHub, 2026-06-15 릴리스, https://github.com/TikHub/tikhub-plugin
  18. “tikhub-plugin .mcp.json”, GitHub TikHub, 2026-11-06 확인, https://github.com/TikHub/tikhub-plugin/blob/main/.mcp.json
  19. “tikhub_api_skill” 저장소, GitHub liangdabiao, 2026-11-06 확인, https://github.com/liangdabiao/tikhub_api_skill
  20. “SKILL.md”(95b2a10), GitHub liangdabiao, 2026-07-08 버전, https://github.com/liangdabiao/tikhub_api_skill/blob/95b2a10199b77d461a2108785eb2c03569bc28c9/.claude/skills/tikhub-api-helper/SKILL.md
  21. “api_client.py”(95b2a10), GitHub liangdabiao, 2026-07-08 버전, https://github.com/liangdabiao/tikhub_api_skill/blob/95b2a10199b77d461a2108785eb2c03569bc28c9/.claude/skills/tikhub-api-helper/api_client.py
  22. “api_searcher.py”(95b2a10), GitHub liangdabiao, 2026-07-08 버전, https://github.com/liangdabiao/tikhub_api_skill/blob/95b2a10199b77d461a2108785eb2c03569bc28c9/.claude/skills/tikhub-api-helper/api_searcher.py
  23. “tikhub-api-helper”, LobeHub Skills Marketplace, 2026-11-06 확인, https://lobehub.com/skills/liangdabiao-tikhub_api_skill-tikhub-api-helper
  24. “TikHub API Skill”, Shyft, 2026-11-06 확인, https://shyft.ai/skills/tikhub-api-skill
  25. “Tikhub Skill by zeenie-ai”, TypingMind, 2026-11-06 확인, https://www.typingmind.com/skills/zeenie-ai-tikhub-skill
  26. OpenCompany “tikhub-skill” 소스, GitHub zeenie-ai, 2026-11-06 확인, https://github.com/zeenie-ai/OpenCompany/tree/main/server/skills/web_agent/tikhub-skill
  27. “Extend Claude with skills”, Claude Code 문서, 2026-11-06 확인, https://code.claude.com/docs/en/skills
  28. “Connect Claude Code to tools via MCP”, Claude Code 문서, 2026-11-06 확인, https://code.claude.com/docs/en/mcp
  29. “Donating Agent Skills to the Agentic AI Foundation”, Anthropic, 2026-10-22, https://www.anthropic.com/news/donating-agent-skills-to-the-agentic-ai-foundation
  30. “Agentic AI Foundation Announces Four New Projects”, Linux Foundation, 2026-10-22, https://www.linuxfoundation.org/press/agentic-ai-foundation-announces-four-new-projects-agent-skills-open-responses-openenv-and-opensandbox
  31. “Authorization”(2026-07-28 버전), Model Context Protocol 사양, 2026-11-06 확인, https://modelcontextprotocol.io/specification/2026-07-28/basic/authorization
  32. “RFC 6750 The OAuth 2.0 Authorization Framework: Bearer Token Usage”, IETF, 2012-10, https://datatracker.ietf.org/doc/html/rfc6750
  33. “RFC 6585 Additional HTTP Status Codes”(429), IETF, 2012-04, https://datatracker.ietf.org/doc/html/rfc6585
  34. “Error 1010”, Cloudflare 문서, 2026-10-24 업데이트, https://developers.cloudflare.com/support/troubleshooting/http-status-codes/cloudflare-1xxx-errors/error-1010/
  35. “Browser Integrity Check”, Cloudflare 문서, 2026-11-06 확인, https://developers.cloudflare.com/waf/tools/browser-integrity-check/
  36. “urllib.request”, Python 문서, 2026-11-06 확인, https://docs.python.org/3/library/urllib.request.html
  37. “Removing sensitive data from a repository”, GitHub 문서, 2026-11-06 확인, https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository
  38. “Push protection beyond predefined secret patterns”, GitHub Changelog, 2026-10-28, https://github.blog/changelog/2026-10-28-push-protection-beyond-predefined-secret-patterns/
  39. “Scale agents securely with IAM Helper Agent Skills and MCP Tools”, Google Cloud, 2026-10-27, https://cloud.google.com/blog/products/identity-security/scale-agents-securely-with-iam-helper-agent-skills-and-mcp-tools
  40. EveryInfra 기능 카탈로그(TikTok, compact), EveryInfra, 2026-11-06 00:18 SGT 확인, https://api.everyinfra.com/api/v1/social/catalog?platform=tiktok&compact=1
  41. “EveryInfra llms.txt”, EveryInfra, 2026-11-06 확인, https://api.everyinfra.com/llms.txt
  42. “everyinfra-agent-plugins”(v0.4.0), GitHub everyinfra, 2026-10-21 릴리스, https://github.com/everyinfra/everyinfra-agent-plugins
  43. “analysis-skills v0.4.1”, GitHub everyinfra, 2026-10-15 릴리스, https://github.com/everyinfra/analysis-skills/releases/tag/v0.4.1
  44. “everyinfra 0.3.0”, PyPI, 2026-11-01 릴리스, https://pypi.org/project/everyinfra/

참고 BL-98