A Model Context Protocol (MCP) server that integrates with Supadata for video transcript extraction, web scraping, crawling, and site discovery.
- Video transcript extraction from YouTube, TikTok, Instagram, Twitter, and file URLs
- Web scraping, crawling, and URL discovery
- Automatic retries and rate limiting
Supadata MCP is available as a remote HTTP MCP server, hosted on Cloudflare Workers. This is the recommended way to use Supadata MCP with Claude Code.
claude mcp add --transport http supadata https://api.supadata.ai/mcp \
--header "x-api-token: sd_YOUR_SUPADATA_API_TOKEN"Requirements:
- Claude Code CLI
- Supadata API token
This method runs Supadata MCP locally using Node.js. For most users, the Remote MCP option above is recommended.
env SUPADATA_API_KEY=your-api-key npx -y @supadata/mcpnpm install -g @supadata/mcpAdd to your Cursor Settings under Features > MCP Servers:
{
"mcpServers": {
"@supadata/mcp": {
"command": "npx",
"args": ["-y", "@supadata/mcp"],
"env": {
"SUPADATA_API_KEY": "YOUR_API_KEY"
}
}
}
}Add a new MCP Server with the following details:
- Name:
@supadata/mcp - Type:
command - Command:
env SUPADATA_API_KEY=your-api-key npx -y @supadata/mcp
For Windows users:
cmd /c "set SUPADATA_API_KEY=your-api-key && npx -y @supadata/mcp"Add this to ./codeium/windsurf/model_config.json:
{
"mcpServers": {
"@supadata/mcp": {
"command": "npx",
"args": ["-y", "@supadata/mcp"],
"env": {
"SUPADATA_API_KEY": "YOUR_API_KEY"
}
}
}
}Press Ctrl + Shift + P and search for "Preferences: Open User Settings (JSON)", then add:
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "Supadata API Key",
"password": true
}
],
"servers": {
"supadata": {
"command": "npx",
"args": ["-y", "@supadata/mcp"],
"env": {
"SUPADATA_API_KEY": "${input:apiKey}"
}
}
}
}
}Optionally add this file to your workspace to share configuration with others:
{
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "Supadata API Key",
"password": true
}
],
"servers": {
"supadata": {
"command": "npx",
"args": ["-y", "@supadata/mcp"],
"env": {
"SUPADATA_API_KEY": "${input:apiKey}"
}
}
}
}Add this to your claude_desktop_config.json:
{
"mcpServers": {
"@supadata/mcp": {
"command": "npx",
"args": ["-y", "@supadata/mcp"],
"env": {
"SUPADATA_API_KEY": "YOUR_API_KEY"
}
}
}
}SUPADATA_API_KEY: Your Supadata API key
The server includes configurable retry and rate limiting parameters:
const CONFIG = {
retry: {
maxAttempts: 3, // Number of retry attempts
initialDelay: 1000, // Initial delay (milliseconds)
maxDelay: 10000, // Maximum delay between retries (milliseconds)
backoffFactor: 2 // Exponential backoff multiplier
}
};Select the right tool based on your needs:
- Transcript: Extract video transcripts from platforms and file URLs
- Scrape: Extract content from a single page when you know the exact URL
- Map: Discover all available URLs on a website
- Crawl: Extract content from multiple related pages comprehensively
| Tool | Best for | Returns |
|---|---|---|
| transcript | Video transcript extraction | text/markdown |
| scrape | Single page content | markdown/html |
| map | URL discovery on a site | URL[] |
| crawl | Multi-page extraction | markdown/html[] |
Extract transcripts from supported video platforms (YouTube, TikTok, Instagram, Twitter) and file URLs.
Usage:
supadata_transcript --url "https://youtube.com/watch?v=example" --lang "en"Check the progress of a transcript extraction job using the job ID.
Usage:
supadata_check_transcript_status --id "550e8400-e29b-41d4-a716-446655440000"Extract content from a single URL with advanced options.
Usage:
supadata_scrape --url "https://example.com" --lang "en"Discover all indexed URLs on a website to find relevant pages before scraping.
Usage:
supadata_map --url "https://example.com"Start an asynchronous crawl job to extract content from multiple pages on a site.
Usage:
supadata_crawl --url "https://example.com/blog" --limit 100Check the progress of a crawl job using the job ID.
Usage:
supadata_check_crawl_status --id "550e8400-e29b-41d4-a716-446655440000"# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test- Fork the repository
- Create your feature branch
- Run tests:
npm test - Submit a pull request
MIT License - see LICENSE file for details