yt_search
Pack: youtube · Endpoint: https://gateway.pipeworx.io/youtube/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/yt_search for the schema, then POST the same URL with its arguments for the data.
Search YouTube for videos, channels, or playlists. Returns snippet info including title, description, channel, thumbnails, and publish date.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
_apiKey | string | yes | YouTube Data API v3 key from Google Cloud Console |
query | string | yes | Search term |
type | string | no | Resource type to search: “video”, “channel”, or “playlist” (default: “video”) |
max_results | number | no | Number of results to return (default 10, max 50) |
channel_id | string | no | Filter results to a specific channel ID |
order | string | no | Sort order: “date”, “rating”, “relevance”, or “viewCount” (default: “relevance”) |
published_after | string | no | Filter results published after this ISO 8601 date (e.g. “2024-01-01T00:00:00Z”) |
Example call
Arguments
{
"_apiKey": "your-youtube-api-key",
"query": "machine learning tutorial"
}
curl
curl -X POST https://gateway.pipeworx.io/youtube/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"yt_search","arguments":{"_apiKey":"your-youtube-api-key","query":"machine learning tutorial"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('yt_search', {
"_apiKey": "your-youtube-api-key",
"query": "machine learning tutorial"
});
More examples
{
"_apiKey": "your-youtube-api-key",
"query": "Python programming",
"type": "video",
"max_results": 20,
"order": "viewCount",
"published_after": "2024-01-01T00:00:00Z"
}
Response shape
Always returns: total_results, results
| Field | Type | Description |
|---|---|---|
total_results | number | Total number of search results available |
results | array | Array of search result items |
Full JSON Schema
{
"type": "object",
"properties": {
"total_results": {
"type": "number",
"description": "Total number of search results available"
},
"results": {
"type": "array",
"description": "Array of search result items",
"items": {
"type": "object",
"properties": {
"id": {
"type": [
"string",
"null"
],
"description": "Video, channel, or playlist ID"
},
"kind": {
"type": "string",
"description": "Resource kind (youtube#video, youtube#channel, etc.)"
},
"title": {
"type": "string",
"description": "Resource title"
},
"description": {
"type": "string",
"description": "Resource description"
},
"channel_title": {
"type": "string",
"description": "Channel title"
},
"channel_id": {
"type": "string",
"description": "Channel ID"
},
"published_at": {
"type": "string",
"description": "ISO 8601 publish date"
},
"thumbnail": {
"type": [
"string",
"null"
],
"description": "Default thumbnail URL"
}
},
"required": [
"id",
"kind",
"title",
"description",
"channel_title",
"channel_id",
"published_at",
"thumbnail"
]
}
}
},
"required": [
"total_results",
"results"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"youtube": {
"url": "https://gateway.pipeworx.io/youtube/mcp"
}
}
}
See Getting Started for client-specific install steps.