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

# Quick Start

> Start logging LLM requests to production in minutes.

<Info>
  This guide covers the **Managed** setup — Majordomo runs the gateway, you point your SDK at it. If you need to run Steward inside your own VPC, see [Self-hosted Setup](/enterprise/steward-setup).
</Info>

## 1. Create an account and API key

[Sign up at app.gomajordomo.com](https://app.gomajordomo.com). From the dashboard, go to **API Keys** and create your first key.

Your key has the format `mdm_sk_...`. Store it in your secrets manager — it's shown once at creation time.

## 2. Update your SDK configuration

Majordomo acts as a transparent proxy. Change the base URL, add one header. Your existing provider API key is passed through unchanged.

<CodeGroup>
  ```python OpenAI (Python) theme={null}
  import os
  from openai import OpenAI

  client = OpenAI(
      base_url="https://gateway.gomajordomo.com/v1",
      api_key=os.environ["OPENAI_API_KEY"],
      default_headers={"X-Majordomo-Key": os.environ["MAJORDOMO_API_KEY"]},
  )

  response = client.chat.completions.create(
      model="gpt-4o",
      messages=[{"role": "user", "content": "Hello"}],
  )
  ```

  ```python Anthropic (Python) theme={null}
  import os
  import anthropic

  client = anthropic.Anthropic(
      base_url="https://gateway.gomajordomo.com",
      api_key=os.environ["ANTHROPIC_API_KEY"],
  )

  response = client.messages.create(
      model="claude-sonnet-4-6",
      max_tokens=1024,
      messages=[{"role": "user", "content": "Hello"}],
      extra_headers={"X-Majordomo-Key": os.environ["MAJORDOMO_API_KEY"]},
  )
  ```

  ```javascript Node.js theme={null}
  import OpenAI from 'openai';

  const client = new OpenAI({
    baseURL: 'https://gateway.gomajordomo.com/v1',
    apiKey: process.env.OPENAI_API_KEY,
    defaultHeaders: { 'X-Majordomo-Key': process.env.MAJORDOMO_API_KEY },
  });

  const response = await client.chat.completions.create({
    model: 'gpt-4o',
    messages: [{ role: 'user', content: 'Hello' }],
  });
  ```
</CodeGroup>

Set the environment variable in your deployment environment:

```bash theme={null}
MAJORDOMO_API_KEY=mdm_sk_your_key_here
```

The gateway returns responses identically to calling the provider directly — streaming, function calling, and all provider-specific parameters are passed through unchanged.

## 3. Verify in the dashboard

Open the [Majordomo dashboard](https://app.gomajordomo.com). Your request appears with model, token counts, cost, and latency. No polling, no setup — the log is there as soon as the request completes.

From here you can manage API keys, tag requests for cost attribution, run replays against candidate models, and build eval sets from production traffic.

***

## Next steps

<CardGroup cols={2}>
  <Card title="Attribute costs by team or feature" icon="tags" href="/guides/cost-attribution">
    Tag requests with custom metadata and break down spend across any dimension.
  </Card>

  <Card title="Test a model switch" icon="rotate" href="/guides/replay">
    Replay production traffic against a candidate model before committing to the change.
  </Card>

  <Card title="Self-hosted Steward" icon="shield" href="/enterprise/steward-setup">
    Run Steward in your own VPC. Prompts never leave your infrastructure.
  </Card>

  <Card title="All SDKs and frameworks" icon="code" href="/integrations/connect">
    Integration examples for every supported SDK, including Pydantic AI and majordomo-llm.
  </Card>
</CardGroup>
