Build on top of TubExperto. Connect your apps, automate workflows, and integrate YouTube knowledge into your products using our MCP server and REST API.
12 tools, transport options, authentication, rate limits
OpenAPI 3.0 spec, interactive playground, code examples
API keys (te_), session tokens (mcpl_), scopes, limits per plan
Python, Node.js, cURL: connect in 5 minutes
Quotas per plan, credit costs per operation
TubExperto exposes a Model Context Protocol server via Streamable HTTP. Connect any MCP-compatible AI client with a single endpoint.
| Tool | Description | Credits |
|---|---|---|
list_my_experts | List your subscribed experts/channels | Free |
search_my_experts | Search among your experts by keyword | Free |
list_experts | Browse all public experts in the catalog | Free |
get_expert_info | Get detailed info about a specific expert | Free |
query_knowledge_base | Search across ALL experts at once | 2 cr |
query_expert | Ask a specific expert a question | 2 cr |
query_expert_panel | Ask 2-5 experts simultaneously | 2 cr |
compare_experts | Compare 2-5 experts on a topic (synthesis) | 2 cr |
list_videos | List videos from an expert (paginated) | Free |
get_latest_videos | Get most recent videos from a channel | Free |
get_video_summary | Get video summary with chapters/timestamps | Free |
suggest_channels | Find new channels to follow by topic | Free |
recommend_videos | Get recommended/trending videos | Free |
All MCP tools are also available as standard REST endpoints. The API follows OpenAPI 3.0 and uses JSON request/response bodies.
https://tubexperto.com/api
POST /api/mcp/stream
Content-Type: application/json
Authorization: Bearer <token>
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_my_experts",
"arguments": {}
}
}Explore and test all endpoints in the interactive API playground, or download the OpenAPI spec.
TubExperto uses two token types, both passed as Authorization: Bearer <token>.
te_mcpl_Connect to TubExperto in under 5 minutes. Replace mcpl_... with your actual token.
curl -X POST https://tubexperto.com/api/mcp/stream \
-H "Authorization: Bearer mcpl_..." \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_my_experts",
"arguments": {}
}
}'import requests
TOKEN = "mcpl_..."
BASE_URL = "https://tubexperto.com/api/mcp/stream"
headers = {
"Authorization": f"Bearer {TOKEN}",
"Content-Type": "application/json",
}
def call_tool(name: str, arguments: dict = {}):
payload = {
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {"name": name, "arguments": arguments},
}
response = requests.post(BASE_URL, json=payload, headers=headers)
response.raise_for_status()
return response.json()
# List all your experts
experts = call_tool("list_my_experts")
print(experts)
# Ask a question to a specific expert
answer = call_tool("query_expert", {
"expertId": "your-expert-id",
"question": "What are the main topics covered in this channel?"
})
print(answer)const TOKEN = "mcpl_...";
const BASE_URL = "https://tubexperto.com/api/mcp/stream";
async function callTool(name, arguments_ = {}) {
const response = await fetch(BASE_URL, {
method: "POST",
headers: {
Authorization: `Bearer ${TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
jsonrpc: "2.0",
id: 1,
method: "tools/call",
params: { name, arguments: arguments_ },
}),
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}: ${await response.text()}`);
}
return response.json();
}
// List all your experts
const experts = await callTool("list_my_experts");
console.log(experts);
// Search across all experts at once (costs 2 credits)
const results = await callTool("query_knowledge_base", {
question: "What are the best JavaScript frameworks for 2025?",
});
console.log(results);Quotas reset monthly. Credits are consumed only by tools marked with a credit cost above. Free-tier read tools never consume credits.
| Plan | Requests/month | Credits/month | MCP Sessions |
|---|---|---|---|
| Free | 30* | 10 (welcome) | 1 |
| Pro | 600 | 30 | 2 |
| Max | 2,000 | 80 | 3 |
| Team | 600/seat | 250 | 5 |
| Enterprise | 10,000 | 250+ | 999 |
* Free is actually metered weekly (7 questions, rolling 7-day window); 30/month is the approximate monthly-equivalent shown here for comparison with the other plans.
HTTP 429: Rate Limited
Returned when you exceed your quota (weekly on Free, monthly on other plans). Retry after the Retry-After header value.
HTTP 402: Insufficient Credits
Returned when a credit-costing tool is called with 0 balance. Top up credits in your dashboard.
Get your API token from the dashboard and start querying your YouTube knowledge base in minutes.