Ollama  ·  vLLM  ·  Together AI  ·  Groq  ·  Any OpenAI-Compatible Server

Slopshop for
Llama & Open-Source Models

Any model running on an OpenAI-compatible server gets real tools across 82 categories from Slopshop.
Run Llama locally with Ollama, or use hosted inference via Together, Groq, or vLLM. Same integration, every server.

422
Real Tools
Any
OAI-Compatible
Local
Or Hosted
100%
Verified Results

Compatible Servers

Works with every OpenAI-compatible inference server

If it speaks the OpenAI chat completions API with tools support, Slopshop works with it. Change only the base_url.

Ollama
localhost:11434/v1
Local, free, llama3.2 / qwen2.5
vLLM
localhost:8000/v1
High-throughput GPU inference
Together AI
api.together.xyz/v1
Hosted Llama, Mixtral, Qwen
Groq
api.groq.com/openai/v1
Ultra-fast LPU inference
LM Studio
localhost:1234/v1
Local GUI + server

Quickstart

Three steps. Llama has tools.

Install Ollama, pull a model with function calling support, then point the openai SDK at localhost. Slopshop tools work immediately.

Step 01 — Install

Pull Llama via Ollama

Install Ollama and pull a model that supports tool calling. llama3.2 and qwen2.5 both work well.

ollama pull llama3.2click to copy
Step 02 — Install SDK

pip install openai

Ollama exposes an OpenAI-compatible endpoint at localhost:11434/v1. Use the openai SDK, set base_url to localhost.

pip install openai requests
Step 03 — Connect

Slopshop tools, local model

Fetch Slopshop tool definitions, pass them to your local Llama instance. All tool execution happens on Slopshop's servers — the model just decides which tools to call.

82 categories of tools · local inference · real execution

Code Example

Llama 3.2 + Ollama + Slopshop tools

Complete agentic loop. Change base_url to switch between Ollama (local), Together AI, Groq, or any other OpenAI-compatible server.

llama_agent.py python
import os, json, requests
from openai import OpenAI

# Switch base_url to use different inference backends:
# Ollama local:   http://localhost:11434/v1  (api_key="ollama")
# Together AI:    https://api.together.xyz/v1
# Groq:           https://api.groq.com/openai/v1
# vLLM:           http://localhost:8000/v1   (api_key="vllm")

BACKEND = "ollama"  # change this

CONFIGS = {
    "ollama":   {"base_url": "http://localhost:11434/v1", "api_key": "ollama",           "model": "llama3.2"},
    "together": {"base_url": "https://api.together.xyz/v1", "api_key": os.environ.get("TOGETHER_API_KEY", ""), "model": "meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo"},
    "groq":     {"base_url": "https://api.groq.com/openai/v1", "api_key": os.environ.get("GROQ_API_KEY", ""),    "model": "llama-3.3-70b-versatile"},
}

cfg = CONFIGS[BACKEND]
client = OpenAI(base_url=cfg["base_url"], api_key=cfg["api_key"])

SLOP_KEY = os.environ["SLOPSHOP_API_KEY"]
SLOP_URL = "https://slopshop.gg"

# 1. Fetch Slopshop tools in OpenAI function_calling format
def get_tools(slugs: list[str]) -> list[dict]:
    schema = requests.get(
        f"{SLOP_URL}/v1/openapi.json",
        headers={"Authorization": f"Bearer {SLOP_KEY}"}
    ).json()
    tools = []
    for slug in slugs:
        path = schema["paths"].get(f"/v1/{slug}", {}).get("post", {})
        if path:
            tools.append({
                "type": "function",
                "function": {
                    "name": slug,
                    "description": path.get("summary", ""),
                    "parameters": path["requestBody"]["content"]["application/json"]["schema"]
                }
            })
    return tools

# 2. Execute a Slopshop tool
def call_tool(name: str, args: dict) -> str:
    res = requests.post(
        f"{SLOP_URL}/v1/{name}",
        json=args,
        headers={"Authorization": f"Bearer {SLOP_KEY}"}
    )
    return json.dumps(res.json())

# 3. Agentic loop
def run_agent(user_message: str) -> str:
    tools = get_tools(["dns-lookup", "ssl-check", "http-request",
                       "hash", "memory-set", "memory-get"])
    messages = [{"role": "user", "content": user_message}]

    while True:
        response = client.chat.completions.create(
            model=cfg["model"],
            messages=messages,
            tools=tools,
            tool_choice="auto"
        )
        msg = response.choices[0].message

        if response.choices[0].finish_reason == "stop":
            return msg.content

        messages.append(msg)

        for tc in (msg.tool_calls or []):
            result = call_tool(tc.function.name, json.loads(tc.function.arguments))
            messages.append({
                "role": "tool",
                "tool_call_id": tc.id,
                "content": result
            })

answer = run_agent("Check DNS and SSL for slopshop.gg, then save the results to memory key 'audit'")
print(answer)

What You Get

Real execution for any open model

Whether running on a gaming PC or a cloud GPU cluster, your open-source model gets the same real tools across 82 categories as any commercial API.

🀅

78 Categories of Real Tools

DNS, SSL, HTTP, crypto, hashing, code execution, data transforms, document generation. All real. No hallucinated outputs.

🧠

Free Persistent Memory

Key-value memory at zero credit cost. Your local Llama instance gets cross-session state persistence without any database setup.

🔗

Any OAI-Compatible Server

One codebase works with Ollama, vLLM, Together, Groq, LM Studio, or any server that speaks the OpenAI chat completions format.

👀

Full Observability

Audit logs, per-request tracing, credit usage per tool call. Every invocation logged with inputs, outputs, and latency.

🏠

Self-Hostable

Run both your inference server and Slopshop on your own hardware for a fully air-gapped setup with no external API calls.


Give your local model real tools across 82 categories

Ollama + Slopshop. Change base_url. 82 categories of tools. Free memory.
Your open-source model executes — for real.

Get Started Free OpenAPI Schema Browse Browse All Tools
→ Full Docs → Browse Tools → Agent Templates → Savings Calculator