> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stagingspaces.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Using with AI Agents

> Integrate StagingSpaces with Claude, GPT, and other AI agents

# Using with AI Agents

StagingSpaces is designed to work seamlessly with AI agents like Claude (via Claude Code or MCP), GPT, and other LLM-based tools.

## Machine-readable API reference

We provide several formats for AI agent consumption:

| File             | URL                           | Purpose                                    |
| ---------------- | ----------------------------- | ------------------------------------------ |
| `llms.txt`       | `/llms.txt`                   | Concise API overview for LLMs              |
| `llms-full.txt`  | `/llms-full.txt`              | Complete API reference with all parameters |
| `openapi.yaml`   | `/docs/openapi.yaml`          | OpenAPI 3.1 spec for tool generation       |
| `ai-plugin.json` | `/.well-known/ai-plugin.json` | Agent marketplace discovery                |

## Using with Claude Code

### Via MCP Server

Install our MCP server to give Claude direct API access:

```bash theme={null}
# Install the MCP server
npm install -g @stagingspaces/mcp-server

# Or add to your Claude Code config
claude mcp add stagingspaces -- npx @stagingspaces/mcp-server
```

Then tell Claude:

> "Stage this room photo with a scandinavian style"

Claude will use the MCP tools to call the API directly.

### Via llms.txt

Point Claude at the API reference:

> "Read [https://stagingspaces-production-6fb7.up.railway.app/llms.txt](https://stagingspaces-production-6fb7.up.railway.app/llms.txt) and use the StagingSpaces API to stage my room photos"

## Using with GPT / Custom GPTs

1. Create a Custom GPT
2. Add the OpenAPI spec as an Action: `/docs/openapi.yaml`
3. Configure authentication with your API key
4. The GPT can now stage images on your behalf

## Using with any agent framework

### LangChain

```python theme={null}
from langchain.tools import tool
import requests

@tool
def stage_room(image_path: str, style: str = "modern") -> dict:
    """Stage an empty room photo with AI-placed furniture.

    Args:
        image_path: Path to the room image file
        style: Design style (modern, scandinavian, farmhouse, etc.)
    """
    response = requests.post(
        "https://stagingspaces-production-6fb7.up.railway.app/api/v1/stage",
        headers={"Authorization": f"Bearer {API_KEY}"},
        files={"image": open(image_path, "rb")},
        data={"style": style}
    )
    return response.json()
```

### CrewAI / AutoGPT

Use the OpenAPI spec at `/docs/openapi.yaml` to auto-generate tools.

## Agent-friendly design decisions

* **Simple auth:** Single Bearer token, no OAuth flows
* **Multipart uploads:** Standard file upload format all HTTP libraries support
* **Predictable responses:** Consistent JSON structure across all endpoints
* **Claim codes:** Human-readable codes (SS-7X9K2M) agents can relay to users
* **Idempotent reads:** GET endpoints are safe to call repeatedly
* **Clear errors:** Error messages include actionable fix suggestions
