---
title: ToolRouter — Tool Detail
description: Detailed documentation for a ToolRouter tool including skills, parameters, and examples.
url: https://toolrouter.com/tools/background-removal
---
# Background Removal

Remove the background from any image and get a clean transparent cutout. Ideal for e-commerce product shots, portrait headshots, design compositing, and batch processing catalog images. Handles complex edges like hair, fur, and transparent objects with high accuracy.

- **Version:** 0.02
- **Categories:** media
- **Workflow:** remove_background → batch_remove

## Skills (2)

### Remove Background (`remove_background`)

Remove the background from a single image and return a clean transparent cutout. Works on product photos, portraits, animals, and complex scenes with fine edges.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `image_url` | string | Yes | URL of the image to remove the background from. The tool server CAN fetch any public URL — always pass it. |
| `model` | string | No | Model variant. "light" is fast and good for most images. "heavy" is slower but handles complex edges better. "portrait" is optimized for people. (light, heavy, portrait) [default: "light"] |
| `output_format` | string | No | Output image format. PNG supports transparency and is recommended. (png, webp) [default: "png"] |
| `resolution` | string | No | Processing resolution. Higher values improve edge accuracy but are slower. (1024x1024, 2048x2048) [default: "1024x1024"] |

**Returns:** Transparent cutout image ready for compositing or direct use

**Examples:**

*Cut out a product from its background for a listing:*

```json
{
  "image_url": "https://example.com/product.jpg"
}
```

*Remove the background from a detailed photo with fine edges:*

```json
{
  "image_url": "https://example.com/complex-scene.jpg",
  "model": "heavy",
  "resolution": "2048x2048"
}
```

### Batch Remove Backgrounds (`batch_remove`)

Remove backgrounds from multiple images in one call (up to 20). Ideal for processing product catalogs or photo sets. Returns per-image results with transparent cutouts.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `image_urls` | array | Yes | Array of image URLs to process (max 20). The tool server CAN fetch any public URL — always pass them. |
| `model` | string | No | Model variant for all images. "light" is fast, "heavy" handles complex edges better, "portrait" is optimized for people. (light, heavy, portrait) [default: "light"] |
| `output_format` | string | No | Output image format for all images. (png, webp) [default: "png"] |

**Returns:** Transparent cutout images with per-image success or failure status

**Examples:**

*Process a set of product images for an online store:*

```json
{
  "image_urls": [
    "https://example.com/product1.jpg",
    "https://example.com/product2.jpg"
  ]
}
```

*Batch remove backgrounds from portrait photos with high quality:*

```json
{
  "image_urls": [
    "https://example.com/headshot1.jpg",
    "https://example.com/headshot2.jpg",
    "https://example.com/headshot3.jpg"
  ],
  "model": "portrait"
}
```

## Quick Start

```bash
# Via CLI
TOOLROUTER_API_KEY=tr_live_xxx npx -y toolrouter-mcp call background-removal remove_background --image_url https://example.com/product.jpg

# Via REST API
curl -H "Authorization: Bearer tr_live_xxx" \
     -d '{"tool":"background-removal","skill":"remove_background","input":{"image_url":"https://example.com/product.jpg"}}' \
     https://api.toolrouter.com/v1/tools/call
```

## Frequently Asked Questions

### Can it cut out product photos and portraits cleanly?

Yes. `remove_background` is built for product shots, portraits, animals, and complex scenes with fine edges like hair or fur.

### Can I process a batch of images at once?

`batch_remove` removes backgrounds from up to 20 images in one call, which is useful for catalog work or a large photo set.

### What if the edge detail is tricky?

The tool supports higher-quality model choices for difficult cutouts, which helps when the subject has fine edges, transparency, or layered detail.

### What do I get back?

You get a transparent cutout ready for compositing or direct use, with per-image status when you run the batch mode.

---

## Get Started with ToolRouter

**Already connected?** Call any tool with `use_tool({ tool, skill, input })`. Browse tools with `discover` or visit https://toolrouter.com/llms-full.txt

**New to ToolRouter?** Connect with one command (no API key needed — auto-provisions on first use):

```bash
# MCP (Claude Code, Codex CLI)
claude mcp add toolrouter -- npx -y toolrouter-mcp

# MCP (Cursor, Windsurf, Cline, VS Code, Gemini CLI, Claude Desktop)
{"mcpServers":{"toolrouter":{"command":"npx","args":["-y","toolrouter-mcp"]}}}

# Claude Chat / Claude Cowork / Claude Mobile — add as a connector:
# Settings → Connectors → Add custom connector → URL: https://api.toolrouter.com/mcp

# ChatGPT — add as an app:
# Settings → Apps → Advanced settings → enable Developer mode → Create app → MCP Server URL: https://api.toolrouter.com/mcp

# CLI (works instantly, no restart needed)
npx -y toolrouter-mcp tools                    # browse all tools
npx -y toolrouter-mcp search "seo"             # search by keyword
npx -y toolrouter-mcp call seo analyze_page --url https://example.com
```

Free tools work immediately. For paid tools, visit https://toolrouter.com/claim to add credits.

All platforms: https://toolrouter.com/connect | Full catalog: https://toolrouter.com/llms-full.txt | Docs: https://toolrouter.com/docs