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

# Setup

> The 5 minute guide to building your first superglue tool

## Hosted Version (Recommended)

Get started in under 5 minutes with no infrastructure setup.

<Steps>
  <Step title="Sign up at app.superglue.cloud">
    Or [book a demo](https://cal.com/superglue/superglue-demo) to talk to our team first.
  </Step>

  <Step title="Connect a system">
    Click one of the system icons (Slack, Stripe, GitHub, etc.) or describe the system you want to connect in the agent chat:

    <img src="https://mintcdn.com/superglue/tyYfUJY8TeMnFP8-/resources/agent-start.png?fit=max&auto=format&n=tyYfUJY8TeMnFP8-&q=85&s=b35a707b2cd26a0ade94389d0417e4cf" alt="Superglue agent interface" style={{ borderRadius: "8px" }} width="1024" height="226" data-path="resources/agent-start.png" />

    The agent will guide you through authentication and configuration.
  </Step>

  <Step title="Build and test a tool">
    Describe what you need — the agent will set up your tool, test it, and let you review before
    saving.
  </Step>

  <Step title="Execute or schedule">
    Save the tool, run it on-demand, schedule it, or trigger via webhook.
  </Step>
</Steps>

***

## Self-Hosted

Deploy on your infrastructure for complete control and customizability.

### Quick Start

**Prerequisites:** Docker, a PostgreSQL database, and an LLM API key (OpenAI, Anthropic, or Gemini)

<Steps>
  <Step title="Create .env file">
    For full environment setup, see [Production Setup](#production-setup) below or the [.env.example](https://github.com/superglue-ai/superglue/blob/main/.env.example).
  </Step>

  <Step title="Run">
    Run the following command:

    ```bash theme={null}
    docker run -d \
      --name superglue \
      --env-file .env \
      -p 3001:3001 \
      -p 3002:3002 \
      superglueai/superglue:latest
    ```
  </Step>

  <Step title="Access dashboard and API">
    * **Dashboard:** [http://localhost:3001](http://localhost:3001)
    * **REST API:** [http://localhost:3002](http://localhost:3002)
  </Step>
</Steps>

***

### Local Development

```bash theme={null}
git clone https://github.com/superglue-ai/superglue.git
cd superglue
cp .env.example .env
```

Edit `.env` with your configuration, then:

```bash theme={null}
npm install
npm run dev
```

***

### Production Setup

For production deployments:

```env theme={null}
# ===================
# REQUIRED
# ===================

# Server endpoints (required for web dashboard to connect)
API_ENDPOINT=https://your-domain.com:3002
SUPERGLUE_APP_URL=https://your-domain.com:3001

# Authentication (required)
AUTH_TOKEN=your-api-key-that-you-use-to-auth

# LLM Provider: OPENAI, ANTHROPIC, GEMINI, BEDROCK, VERTEX, or AZURE
LLM_PROVIDER=ANTHROPIC
# Provide the API key and model for your chosen provider:
# ANTHROPIC_API_KEY=sk-ant-xxxxx
# ANTHROPIC_MODEL=claude-sonnet-4-5

# GEMINI_API_KEY=your-gemini-key
# GEMINI_MODEL=gemini-2.5-flash

# OPENAI_API_KEY=sk-proj-xxxxx
# OPENAI_MODEL=gpt-5.2

# PostgreSQL (required)
POSTGRES_HOST=your-postgres-host
POSTGRES_PORT=5432
POSTGRES_USERNAME=superglue
POSTGRES_PASSWORD=secure-password
POSTGRES_DB=superglue
# Uncomment for local/unsecured postgres:
# POSTGRES_SSL=false

# Credential encryption (HIGHLY recommended)
# Generate a strong key: openssl rand -hex 32
MASTER_ENCRYPTION_KEY=your-32-byte-encryption-key

# ===================
# OPTIONAL
# ===================

# Web search in agent
# TAVILY_API_KEY=your-tavily-key

# Workflow scheduling (only enable on a single instance)
# START_SCHEDULER_SERVER=false
```

***

### File Storage

File storage (S3 or MinIO) is required for **system documentation** — including URL scraping, OpenAPI spec fetching, and file uploads. Without it, tools can still be created and executed, but systems won't have documentation context for the AI agent.

<Tabs>
  <Tab title="AWS S3">
    Add to your `.env`:

    ```env theme={null}
    FILE_STORAGE_PROVIDER=aws
    AWS_ACCESS_KEY_ID=your-access-key
    AWS_SECRET_ACCESS_KEY=your-secret-key
    AWS_REGION=us-east-1
    AWS_BUCKET_NAME=your-bucket-name
    AWS_BUCKET_PREFIX=raw
    ```

    Uploaded files (PDFs, CSVs, etc.) are stored in S3 and automatically parsed after upload.
  </Tab>

  <Tab title="MinIO (Self-Hosted)">
    [MinIO](https://min.io) is an S3-compatible object store you can run alongside superglue.

    Add to your `.env`:

    ```env theme={null}
    FILE_STORAGE_PROVIDER=minio
    S3_ENDPOINT=http://minio:9000
    S3_PUBLIC_ENDPOINT=http://localhost:9000
    MINIO_ROOT_USER=minioadmin
    MINIO_ROOT_PASSWORD=change-me-in-production
    MINIO_BUCKET_NAME=superglue-files
    MINIO_BUCKET_PREFIX=raw
    ```

    Uploaded files are stored in MinIO and automatically parsed after upload.
  </Tab>
</Tabs>

***

## Next Steps

<CardGroup cols={3}>
  <Card title="Core Concepts" icon="lightbulb" href="/getting-started/core-concepts">
    Understand systems, tools, and execution
  </Card>

  <Card title="Creating a Tool" icon="comments" href="/guides/creating-a-tool">
    Build your first tool
  </Card>

  <Card title="MCP Overview" icon="plug" href="/mcp/using-the-mcp">
    Use superglue tools in your internal GPT, Cursor or Claude
  </Card>
</CardGroup>
