Tutorial

How to Set Up Open WebUI with OpenRouter Free Models

An r/SillyTavernAI post helped a sister run Claude-style chat via Open WebUI + OpenRouter. Walk-through plus Scavio HTTP tool for web search.

An r/SillyTavernAI thread set up Open WebUI + OpenRouter for a non-technical user as a Claude alternative. This walks the setup including OpenRouter free models, web search via Scavio HTTP tool, and the gotchas.

Prerequisites

  • A small VPS or local machine (8GB RAM minimum)
  • Open WebUI (self-host)
  • OpenRouter account (free, no card)
  • Scavio API key for web search

Walkthrough

Step 1: Install Open WebUI

Docker is the easiest path.

Bash
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main

Step 2: Sign up at openrouter.ai (no credit card required for free models)

Get an API key.

Text
// openrouter.ai → Settings → Keys → Create Key

Step 3: Connect OpenRouter in Open WebUI

OpenAI-compatible endpoint.

Text
// Settings → Connections → OpenAI API
// Base URL: https://openrouter.ai/api/v1
// API Key: <openrouter-key>
// Prefix: openrouter

Step 4: Pick free models (filter for ':free' suffix)

Llama 3.3 70B, Nemotron, GPT-OSS 120B.

Text
// In Open WebUI's model picker: filter ':free'.
// Free model rate limits: ~20 req/min, ~200 req/day per OpenRouter docs.

Step 5: Add Scavio as an HTTP tool for web search

Open WebUI supports custom tools.

Text
// Tools → New Tool
// Action: HTTP POST
// URL: https://api.scavio.dev/api/v1/search
// Headers: x-api-key: <scavio-key>
// Body schema: { query: string }
// Description: 'Search the web for current info across Google, Reddit, YouTube.'

Step 6: Test the full flow

Free model + web search + chat UI.

Text
// 'Use scavio_search to find recent news about X.'
// Watch the trace; the free model calls the tool, returns grounded answer.

Python Example

Python
# Per-month: free model + Scavio $30/mo + small VPS $5/mo = under $40/mo.

JavaScript Example

JavaScript
// Open WebUI handles the integration.

Expected Output

JSON
Open WebUI on a small VPS, OpenRouter free models in the picker, Scavio HTTP tool for web search. Non-technical user gets a Claude-like UX without paying Claude Pro per seat.

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.

A small VPS or local machine (8GB RAM minimum). Open WebUI (self-host). OpenRouter account (free, no card). Scavio API key for web search. 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

An r/SillyTavernAI post helped a sister run Claude-style chat via Open WebUI + OpenRouter. Walk-through plus Scavio HTTP tool for web search.