Claude Code Plugin

Install the official Outstand plugin for Claude Code to scaffold, debug, and review your Outstand integration without leaving your editor.

Outstand publishes an official Claude Code plugin marketplace. The outstand plugin turns Claude Code into an assistant that knows this API: it scaffolds a working integration into your codebase, diagnoses failures against your real account state, and audits integrations you already have. It also bundles the Outstand MCP server, so the assistant can read your actual connected accounts and posts instead of reasoning about your integration abstractly.

The marketplace is open source (MIT) at github.com/Outstand-so/claude-code-marketplace.

Install

Run these two commands inside Claude Code:

/plugin marketplace add Outstand-so/claude-code-marketplace
/plugin install outstand@outstand

The first command registers the marketplace, the second installs the outstand plugin from it. Run /plugin afterwards to confirm the plugin is listed and enabled.

To develop against a local clone of the marketplace repo, point the first command at a path instead:

/plugin marketplace add ./

Prerequisites

  1. Claude Code with plugin support (/plugin is available in your session).
  2. An Outstand account for the bundled MCP server - sign up free. The commands work without it, but the assistant can only reason about your code, not your live account state.

What you get

CommandUse it for
/outstand:startYou are not sure where to begin. Triages your situation and routes you to the right flow.
/outstand:integrateScaffold a new integration, or add a capability to one you already have.
/outstand:debugDiagnose an error, an unexpected response, or a post that did not publish where you expected.
/outstand:reviewAudit an existing integration for the mistakes this API's async, partial-success shape invites.

/outstand:start

The entry point when you do not know which of the others you want. It detects your project (package manager, framework, existing Outstand code), asks a short question or two, then hands off to the right flow. It is a router, not an interrogation.

/outstand:start

/outstand:integrate

Scopes and scaffolds an integration: API client, account connection, post creation, scheduling, media upload, webhook handling, and database schema - limited to what you actually asked for rather than every capability the API offers.

/outstand:integrate publish and schedule posts to LinkedIn and X, with webhooks

The flow is deliberately gated:

  1. It detects what it can answer from your repo (and from your connected MCP session) before asking anything, then interviews you for the gaps in at most two short rounds.
  2. It confirms a written plan - platforms, webhooks vs polling, the files it will create or modify - and waits for your go-ahead. No files are written before you approve.
  3. It generates code. TypeScript/Node projects start from ready-made templates (API client, webhook handler, Prisma schema, smoke test) adapted to your framework. Other stacks are generated fresh against the same contract, following your repo's existing HTTP client, ORM, and route conventions.
  4. It offers to run the smoke test against a real account so the integration is demonstrated working, not just claimed to be.

Whatever the stack, generated code is held to the same rules: treat POST /v1/posts as accepted rather than published, track status per account instead of with a single boolean, never retry 402, honour Retry-After on 429, complete the full three-step media upload, and pass an Idempotency-Key on post-creation paths.

React apps are steered towards @outstand-so/ui rather than hand-rolled OAuth redirect UI, with a warning that passing a raw apiKey prop ships your key to the browser.

/outstand:debug

Diagnoses a specific symptom: an error response, a post that reported success but never appeared on a platform, a webhook that is not firing, a 402 or 429 you do not understand, or a scheduled post that appears stuck.

/outstand:debug my post says published but nothing showed up on Instagram

It asks for the real evidence - the actual HTTP status and body, or the actual webhook payload, not a paraphrase - before proposing a cause. If the MCP server is connected it verifies against your live state using read-only tools only (get_post, list_posts, get_social_account, get_account_usage). It never calls a tool that creates, updates, or deletes anything during diagnosis unless you explicitly ask for that action.

/outstand:review

Dispatches a dedicated outstand-reviewer agent to audit your existing integration. The agent runs with write tools disabled, so it can only report.

/outstand:review src/integrations/social

It checks for the failure modes that are specific to this API's architecture, ranked by severity:

SeverityChecks
HighPost outcome treated as a single boolean instead of per-account status, API key exposed in client-side code, retries that re-create posts and double-post to platforms that already succeeded, 402 retried as if transient
MediumNo webhook handler (or tight polling in its place), missing idempotency on post creation, Outstand IDs not persisted or persisted without indexes
LowMedia URLs assumed permanent despite the retention window, scheduledAt timezone and exact-second assumptions, platform-specific gaps such as Pinterest pins created without a board

You get a ranked findings list with file and line references first. Nothing is rewritten until you pick what to fix.

You do not have to use the slash commands

Describing what you need in plain language routes to the same skills. "Help me post to LinkedIn and X from my Express app" reaches /outstand:integrate; "why is my Instagram post stuck?" reaches /outstand:debug. The plugin ships five skills:

SkillTriggers on
outstand-docsAny authoritative fact about the API - a schema, a field name, an enum value, a status code. Every other skill depends on it.
outstand-integrationAdding Outstand to a codebase, fresh or incremental.
outstand-troubleshootingSomething broken, unexpected, or confusing in an existing integration.
outstand-reviewAuditing code that already calls the API.
outstand-platformsA named platform's connection method, configuration requirements, or quirks.

The bundled MCP server

The plugin ships the Outstand MCP server (https://mcp.outstand.so/mcp) as part of its configuration - there is nothing extra to add. The first time a command needs it, Claude Code offers a one-click OAuth connection: sign in, pick the organization it may act on, and you are done. No API key to paste.

For headless or CI use where a browser OAuth flow is not available, connect with an API key passed as a Bearer token instead. See the MCP setup guide for that method, and the tool reference for what the server exposes.

Connecting it is optional but changes the quality of the help significantly: with it, /outstand:debug reads the actual post record that failed and /outstand:integrate knows which platforms you have already connected.

How it stays current

The plugin deliberately does not vendor a snapshot of these docs. Every skill fetches the live page at request time: it pulls https://www.outstand.so/docs/llms.txt as an index, then the specific page as raw markdown by appending .mdx to its URL (for example https://www.outstand.so/docs/create-a-post.mdx).

This is why answers cite the doc page they came from. A field name recalled from training data, or read out of a copy that shipped with a plugin release six weeks ago, is exactly how an integration silently breaks. If a page cannot answer the question, the assistant is instructed to say so rather than fill the gap from memory.

Troubleshooting

The marketplace is not found. Check the owner spelling: the repository is Outstand-so/claude-code-marketplace, with the -so suffix.

The Outstand tools are not available. Run /mcp inside Claude Code to check the connection status and re-run the OAuth flow if needed. If you are using an API key, confirm it starts with ost_ and is still active in your dashboard.

Removing the plugin.

/plugin uninstall outstand@outstand
/plugin marketplace remove outstand

Next steps