PinOnce for AI assistants
Ask your assistant to "pin these three photos from today's walk" or "save this yoga video for Sunday", and it lands on your PinOnce page or in your Saved list. Copies go out to your connected networks, each linking back to you.
Easiest: sign in from the app. Add https://pinonce.com/mcp as a connector in Claude or ChatGPT; it opens a PinOnce page where you sign in and tap Allow. The app can pin, save and read, never delete. It shows up under AI assistants, where you can revoke it.
Or use a key (scripts, apps without sign-in): sign in at pinonce.com/admin → AI assistants → Make a key. Each assistant gets its own key (starts with pa_). A key can pin, save and read, but never delete pins or change your connected accounts. Revoke it there any time.
Claude
Claude Code:
claude mcp add --transport http pinonce https://pinonce.com/mcp --header "Authorization: Bearer pa_YOUR_KEY"
Claude.ai, Claude Desktop or mobile: Settings → Connectors → Add custom connector, paste https://pinonce.com/mcp, then sign in with PinOnce and tap Allow. (Without sign-in: paste https://pinonce.com/mcp/pa_YOUR_KEY; that URL contains your key, so keep it private.)
Claude Code with sign-in: claude mcp add --transport http pinonce https://pinonce.com/mcp, then /mcp → pinonce → Authenticate.
ChatGPT and OpenAI agents
ChatGPT (where custom apps are enabled): Settings → Apps → Create app, MCP server URL https://pinonce.com/mcp, authentication OAuth, then sign in with PinOnce.
OpenAI API / Agents SDK: add PinOnce as a remote MCP tool with server URL https://pinonce.com/mcp and header Authorization: Bearer pa_YOUR_KEY.
Custom GPT: Configure → Actions → Import from URL: https://pinonce.com/openapi.json; Authentication: API key, Bearer, paste your key.
What an assistant can do
| MCP tool | What it does |
|---|---|
pin_note | Publish a note now, then copy it to your networks |
pin_photos | Publish 1–10 photos (JPEG, PNG or WebP, by URL or base64) with a title |
pin_status | Where a pin was copied, with links, or why a copy failed |
list_pins | Your recent pins |
save_link | Add a link you liked anywhere to your private Saved list, with a note and tags |
search_saved | Find something you saved, by words or tag |
list_networks, whoami | What's connected; your page and storage |
Pinning is public right away, so assistants are told to confirm the text, photos and networks with you first. Video clips and voice notes are pinned from the web page.
JSON API
Same key, as Authorization: Bearer pa_… (an app's sign-in token works too). The full description is at /openapi.json.
curl https://pinonce.com/api/v1/pins \
-H "Authorization: Bearer pa_YOUR_KEY" -H "content-type: application/json" \
-d '{"kind":"photo","title":"Fog over the marsh","place":"Narragansett, RI",
"photos":[{"url":"https://example.com/marsh.jpg","alt":"Fog over a salt marsh"}],
"networks":["bluesky","mastodon"]}'
Answer: {"ok":true,"id":42,"url":"https://pinonce.com/you/p/fog-over-the-marsh/","syndicating":["bluesky","mastodon"]}. Leave out networks to use every connected network that takes the pin; send [] to keep it on your page only.
Uploads count toward your storage limit (an answer of 413 says how much room is left).