Tutorial

How to Build a Claude Skill with Search

Package Scavio as a Claude Skill that drops into ~/.claude/skills for one-command web, shopping, and video search across all Claude Code sessions.

Claude Skills are Anthropic's 2026 packaging format for reusable agent capabilities. A skill lives in ~/.claude/skills and becomes available to every Claude Code and Claude Desktop session. This tutorial walks through packaging Scavio as a Claude Skill so any Claude session can search the web, YouTube, Amazon, Walmart, and Reddit with one command.

Prerequisites

  • Claude Code or Claude Desktop installed
  • A Scavio API key
  • Node.js 20+

Walkthrough

Step 1: Create the skill directory

Skills live in ~/.claude/skills/<name>.

Bash
mkdir -p ~/.claude/skills/scavio
cd ~/.claude/skills/scavio

Step 2: Write the skill manifest

Every skill needs a skill.json describing the commands and parameters.

JSON
{
  "name": "scavio",
  "version": "1.0.0",
  "description": "Real-time search across Google, YouTube, Amazon, Walmart, and Reddit via Scavio",
  "entrypoint": "index.js",
  "commands": [
    { "name": "search", "description": "Search the web", "params": {"query": "string"} },
    { "name": "amazon", "description": "Search Amazon products", "params": {"query": "string"} },
    { "name": "youtube_transcript", "description": "Get a YouTube transcript", "params": {"video_id": "string"} }
  ]
}

Step 3: Write the skill handler

The entrypoint receives command invocations and calls Scavio.

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;

export async function search({ query }) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query })
  });
  return r.json();
}

export async function amazon({ query }) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ platform: 'amazon', query, marketplace: 'US' })
  });
  return r.json();
}

Step 4: Set the environment variable

Add SCAVIO_API_KEY to your shell profile so every Claude session inherits it.

Bash
echo 'export SCAVIO_API_KEY=sk_live_...' >> ~/.zshrc

Step 5: Use the skill in Claude Code

Launch Claude Code and invoke the skill.

Bash
# In Claude Code
> /skills scavio search "best AI framework 2026"

Python Example

Python
# Skills are JS-native, but you can call Scavio from Python to validate:
import os, requests
r = requests.post('https://api.scavio.dev/api/v1/search',
    headers={'x-api-key': os.environ['SCAVIO_API_KEY']},
    json={'query': 'best AI framework 2026'})
print(r.json()['organic_results'][:3])

JavaScript Example

JavaScript
// scavio skill handler
const API_KEY = process.env.SCAVIO_API_KEY;
export async function search({ query }) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query })
  });
  return r.json();
}

Expected Output

JSON
Running /skills scavio search in Claude Code returns structured Google results inline. Every Claude Code and Claude Desktop session now has one-command search without per-project setup.

Related Tutorials

Frequently Asked Questions

Most developers complete this tutorial in 15 to 30 minutes. You will need a Scavio API key (free tier works) and a working Python or JavaScript environment.

Claude Code or Claude Desktop installed. A Scavio API key. Node.js 20+. A Scavio API key gives you 500 free credits per month.

Yes. The free tier includes 500 credits per month, which is more than enough to complete this tutorial and prototype a working solution.

Scavio has a native LangChain package (langchain-scavio), an MCP server, and a plain REST API that works with any HTTP client. This tutorial uses the raw REST API, but you can adapt to your framework of choice.

Start Building

Package Scavio as a Claude Skill that drops into ~/.claude/skills for one-command web, shopping, and video search across all Claude Code sessions.