# Bluesky setup for PopMCP

Nothing has to be typed into PopMCP. You click Authorize with Bluesky, sign in to Bluesky and approve PopMCP. There is no developer app, callback URL or approval to wait for. Under More options you can connect with your handle and an app password instead of signing in, made in Bluesky under Settings, Privacy and security, App passwords. Never your main password.

- Auth: OAuth authorization
- Setup time: 1 min
- API base URL: https://bsky.social/xrpc
- Credentials screen: https://bsky.app/settings/app-passwords
- Provider docs: https://bsky.network/docs/oauth

## Before you begin

- A Bluesky account. Any plan: Bluesky has no paid tier for its API
- Pop-up blockers must allow the Bluesky sign-in window to open
- Only if the AI should post or change anything: an owner or admin in PopMCP to allow write actions

## Get your credentials

### 1. Start the connection from PopMCP

Open the Bluesky connector in PopMCP and click Authorize with Bluesky. There are no fields to fill in: no API key, no developer app and nothing to register. If your account is hosted outside Bluesky, type your handle under More options first.

### 2. Sign in to Bluesky and approve

The sign-in window opens on bsky.social. Sign in with the account the AI should work with, then approve PopMCP. Bluesky lists what is being asked for: posting and reading on your behalf, and your direct messages. PopMCP never sees your password.

### 3. Or use an app password

Optional, instead of signing in. In Bluesky open Settings, Privacy and security, App passwords, then Add App Password. Give it a name of at least 4 characters. Tick Allow access to your direct messages if the AI should read or send them. Click Next, then Copy App Password: Bluesky shows it only once. In PopMCP paste it with your handle under More options.

Screen: https://bsky.app/settings/app-passwords

### 4. Check it is connected

The Bluesky card in PopMCP reads Connected, with your handle. New connections start read-only: the AI can read your timeline, notifications and direct messages, and posting waits until an owner or admin allows write actions in PopMCP.

## Fields PopMCP asks for

- How you connect (connectionType): Click Authorize, sign in to Bluesky and approve. There is nothing to copy or paste, and PopMCP never sees your password.
- Your handle (handle): Only needed with an app password, or when your account is hosted outside Bluesky.
- App password (appPassword): To connect without signing in. Make one in Bluesky under Settings, Privacy and security, App passwords. Tick direct messages access if your AI should read or send them. Never your main password.

## Scopes requested

- atproto
- transition:generic
- transition:chat.bsky

## Verify

The Bluesky card in PopMCP shows Connected with your handle. Asking the AI for the connection profile (`bluesky_connection_profile`) names the account, and asking how the account is doing (`bluesky_account_summary`) returns your follower count and recent posts rather than an authorization error.

## Troubleshooting

### The sign-in window never opens

Cause: A pop-up blocker is stopping the Bluesky sign-in window.

Fix: Allow pop-ups for PopMCP in your browser and click Authorize with Bluesky again.

### "That is not an app password"

Cause: The value is not in the form abcd-efgh-ijkl-mnop. It may be your main password, which PopMCP never accepts.

Fix: Make an app password in Bluesky under Settings, Privacy and security, App passwords, and paste that.

### "Bluesky did not accept that handle and app password"

Cause: The handle has a typo, the password was copied in part, or it was deleted.

Fix: Check the handle, including the part after the dot. Bluesky shows an app password only once, so if in doubt add a new one.

### "Bluesky limits how often an account can log in"

Cause: Too many logins with an app password in a short time.

Fix: Wait for the time the message gives, then connect again. Once connected, PopMCP renews the session without logging in again.

### "Bluesky sign-in needs a public web address"

Cause: PopMCP is running on a local address, which Bluesky cannot reach to check who is asking.

Fix: Connect with an app password under More options.

### "Direct messages need extra permission"

Cause: An app password made without direct message access.

Fix: Add a new app password with Allow access to your direct messages ticked, then reconnect Bluesky with it.

### "Your Bluesky sign-in has ended"

Cause: The sign-in went unused for six months, or PopMCP's access was removed in Bluesky.

Fix: Reconnect Bluesky in PopMCP: one click on Authorize with Bluesky.

---

Source: https://www.docs.popmcp.com/docs/integrations/bluesky/