# Post to Social Media from Claude

OmniSocials integrates with every flavor of Claude: claude.ai (web), Claude Desktop, and Claude Code. All three use the same underlying MCP server. The only difference is how you point Claude at it.

## claude.ai (remote MCP)

Easiest option. Uses OmniSocials' hosted MCP endpoint, so there is nothing to install locally.

1. Create an API key in OmniSocials (**Settings → API**)
2. Copy the **MCP URL** shown next to the key (it looks like `https://mcp.omnisocials.com?API_KEY=omsk_live_...`)
3. Open [Claude Settings → Integrations](https://claude.ai/settings/integrations)
4. Click **Add custom connector**, paste the MCP URL, and save

In any new Claude chat, OmniSocials tools are now available. Ask Claude to list your connected accounts to verify.

## Claude Desktop (npm package)

Runs the MCP server locally as a subprocess. Use this if you prefer to keep your API key on-device rather than sending it with every request.

Open `claude_desktop_config.json` and add:

```json
{
  "mcpServers": {
    "omnisocials": {
      "command": "npx",
      "args": ["-y", "@omnisocials/mcp-server"],
      "env": {
        "OMNISOCIALS_API_KEY": "omsk_live_<YOUR_KEY>"
      }
    }
  }
}
```

The config file lives at:
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`

Restart Claude Desktop to pick up the new config.

## Claude Code (CLI)

One command:

```bash
claude mcp add omnisocials -- npx -y @omnisocials/mcp-server
```

Then export your API key so the MCP subprocess can read it:

```bash
export OMNISOCIALS_API_KEY=omsk_live_<YOUR_KEY>
```

Put the `export` line in your `~/.zshrc` or `~/.bashrc` so it persists across shell sessions.

## Verifying the connection

In any Claude interface, ask:

> Show my connected social accounts on OmniSocials

Claude should call `list_accounts` and return the accounts in your workspace. If it responds with an authentication or connection error, double-check the API key and restart the client.

## Capabilities

With OmniSocials connected, you can ask Claude to:

- List connected accounts, media library items, or scheduled posts
- Create drafts or scheduled posts with per-platform content
- Upload media from a URL and attach to a post
- Query analytics for a post, account, or time period
- Manage webhooks

The full set of tools matches the public API. Your API key's scopes determine what Claude can actually do. A read-only key lets Claude list things but not post.
