Tool Reference

May 29, 2026 · View on GitHub

The @socialneuron/mcp-server npm package registers 75 tools over stdio, grouped below by the scope they require. The hosted endpoint at mcp.socialneuron.com exposes additional tools — query /.well-known/mcp/server-card.json for the live list.

Generated from the runtime registry by npm run build:docs. Do not edit by hand.

Read & Discovery

Scope: mcp:read — Available on Pro and above.

ToolDescription
audit_brand_colorsAudit content colors against the brand palette using perceptual color distance (Delta E 2000). Returns per-color compliance scores and identifies the closest brand color for each input.
capture_app_pageNavigate to a Social Neuron app page and take a full-page screenshot. Logs in with test credentials, navigates to the specified page, waits for content to load, then captures a screenshot. Output is saved to public/assets/screenshots/.
capture_screenshotTake a screenshot of any URL. Launches a headless Chromium browser, navigates to the URL, and captures either the full page or a specific CSS selector. No login is performed.
check_brand_consistencyCheck if content text is consistent with the brand voice, vocabulary, messaging, and factual claims. Returns per-dimension scores (0-100) and specific issues found. Use this to validate scripts, captions, or post copy before publishing.
check_pipeline_readinessPre-flight check before run_content_pipeline. Verifies: sufficient credits for estimated_posts, active OAuth on target platforms, brand profile exists, no stale insights. Returns pass/fail with specific issues to fix before running the pipe
check_statusPoll an async job started by generate_video or generate_image. Returns status (queued/processing/completed/failed), progress %, and result URL on completion. Poll every 10-30s for video, 5-15s for images. On "failed" status, the error field
explain_brand_systemExplains what brand data is available vs missing for a project. Returns a human-readable summary of completeness, confidence levels, and recommendations for improving the brand profile.
export_design_tokensExport brand palette and typography as design tokens. Supports CSS custom properties, Tailwind config, and Figma Tokens JSON formats.
extract_brandAnalyze a website URL and extract brand identity data including brand name, colors, voice/tone, target audience, and logo. Uses AI-powered analysis of the page HTML. Useful for understanding a brand before generating content for it.
extract_url_contentExtract text content from any URL — YouTube video transcripts, article text, or product page features/benefits/USP. YouTube URLs auto-route to transcript extraction with optional comments. Use before generate_content to repurpose existing c
fetch_analyticsGet post performance metrics — views, likes, comments, shares, and engagement rate. Filter by platform, time range (default 30 days), or specific content_id. Call refresh_platform_analytics first if data seems stale. Results sorted by most
fetch_trendsGet current trending topics for content inspiration. Source "youtube" returns trending videos with view counts, "google_trends" returns rising search terms, "rss"/"url" extracts topics from any feed or page. Results cached 1 hour — set forc
find_next_slotsFind optimal posting time slots based on best posting times and existing schedule. Returns non-conflicting slots sorted by engagement score.
get_best_posting_timesAnalyze post analytics data to find the best times to post for maximum engagement. Returns the top 5 time slots (day of week + hour) ranked by average engagement.
get_brand_profileLoad the active persisted brand profile for a project from brand_profiles.
get_brand_runtimeFetches a project's 4-layer brand runtime: messaging (value props, pillars, proof points), voice (tone, vocabulary, blocked terms), visual identity (palette, typography, composition), and audience details (archetype, target). Includes extra
get_budget_statusCheck how much of the per-session budget has been consumed. Tracks credits spent and assets created in this MCP session against configured limits. Use to avoid hitting budget caps mid-workflow.
get_content_planLoad a persisted content plan by its UUID — returns the full plan including all posts, scheduling status, and approval state. Use to inspect a plan before update_content_plan or schedule_content_plan. plan_id comes from save_content_plan, p
get_credit_balanceCheck remaining credits, monthly limit, spending cap, and plan tier. Call this before expensive operations — generate_video costs 15-80 credits, generate_image costs 2-10. Returns current balance, monthly allocation, and spending cap (2.5x
get_ideation_contextGet synthesized ideation context from performance insights. Returns the same prompt-injection context used by ideation generation.
get_loop_summaryGet a one-call dashboard summary of the feedback loop state (brand profile, recent content, and current insights).
get_mcp_usageGet your MCP API usage breakdown for the current billing month. Shows per-tool call counts and credit usage. Useful for monitoring API consumption and staying within tier limits.
get_media_urlGet a fresh signed URL for an R2 media key. Use when a previously returned signed URL has expired (they last 1 hour). Pass the r2_key from upload_media or check_status.
get_performance_insightsQuery performance insights derived from post analytics. Returns metrics like engagement rate, view velocity, and click rate aggregated over time. Use this to understand what content is performing well.
get_pipeline_statusCheck status of a pipeline run, including stages completed, pending approvals, and scheduled posts.
get_recipe_detailsGet full details of a recipe template including all steps, input schema, and estimated costs. Use this before execute_recipe to understand what inputs are required.
get_recipe_run_statusCheck the status of a running recipe execution. Shows progress, current step, credits used, and outputs when complete.
list_compositionsList all available Remotion video compositions defined in Social Neuron. Returns composition IDs, dimensions, duration, and descriptions. Use this to discover what videos can be rendered with render_demo_video.
list_connected_accountsCheck which social platforms have active OAuth connections for posting. Call this before schedule_post to verify credentials. If a platform is missing or expired, the user needs to reconnect at socialneuron.com/settings/connections.
list_plan_approvalsList approval items for a content plan, optionally filtered by status (pending / approved / rejected / edited). Use to check what needs review before scheduling, or to audit decisions after the fact. plan_id comes from get_content_plan or s
list_recent_postsList recent published and scheduled posts with status, platform, title, and timestamps. Use to check what has been posted before planning new content, or to find post IDs for fetch_analytics. Filter by platform or status to narrow results.
list_recipesList available recipe templates. Recipes are pre-built multi-step workflows like "Weekly Instagram Calendar" or "Product Launch Sequence" that automate common content operations. Use this to discover what recipes are available before runnin
quality_checkScore post quality across 7 categories: Hook Strength, Message Clarity, Platform Fit, Brand Alignment, Novelty, CTA Strength, and Safety/Claims. Each scored 0-5, total 35. Default pass threshold is 26 (~75%). Run after generate_content and
quality_check_planBatch quality check all posts in a content plan. Returns per-post scores and aggregate pass/fail summary. Use after plan_content_week and before schedule_content_plan to catch low-quality posts before publishing.
search_toolsSearch available tools by name, description, module, or scope. Use "name" detail (~50 tokens) for quick lookup, "summary" (~500 tokens) for descriptions, "full" for complete input schemas. Start here if unsure which tool to call — filter by
suggest_next_contentSuggest next content topics based on performance insights, past content, and competitor patterns. No AI call, no credit cost — purely data-driven recommendations.
wait_for_connectionPoll until a platform connection becomes active. Use after start_platform_connection while the user completes the browser OAuth flow. Returns when the account row appears with status=active, or when the timeout elapses. Default timeout 30

Analytics

Scope: mcp:analytics — Available on Pro and above.

ToolDescription
detect_anomaliesDetect significant performance changes: spikes, drops, viral content, trend shifts. Compares current period against previous equal-length period. No AI call, no credit cost.
fetch_youtube_analyticsFetch YouTube channel analytics. Supports channel overview, daily breakdown, video-specific metrics, and top-performing videos. Requires a connected YouTube account.
generate_performance_digestGenerate a performance summary for a time period. Includes metrics, trends vs previous period, top/bottom performers, platform breakdown, and actionable recommendations. No AI call, no credit cost.
refresh_platform_analyticsQueue analytics refresh jobs for all posts from the last 7 days across connected platforms. Call this before fetch_analytics if you need fresh data. Returns immediately — data updates asynchronously over the next 1-5 minutes.

Content Creation & Management

Scope: mcp:write — Requires Team or Agency (full MCP).

ToolDescription
adapt_contentRewrite existing content for a different platform — adjusts character limits, hashtag style, tone, and CTA format automatically. Use after generate_content when you need the same message across multiple platforms. Pass project_id to apply p
create_carouselEnd-to-end carousel creation: generates slide text + kicks off image generation for each slide in parallel. When brand_id is provided, auto-injects brand colors, logo watermark, and visual mood into every image prompt. Returns carousel data
create_plan_approvalsCreate pending approval rows for each post in a content plan — one row per post, status="pending". Use after submit_content_plan_for_approval to materialize the approval queue. Each entry in posts becomes a row that respond_plan_approval ca
create_storyboardPlan a multi-scene video storyboard with AI-generated prompts, durations, captions, and voiceover text per frame. Use before generate_video or generate_image to create cohesive multi-shot content. Include brand_context from get_brand_profil
generate_carouselGenerate carousel slide content (headlines, body text, emphasis words per slide). Supports Hormozi-style authority format and educational templates. Returns structured slide data — render visually then publish via schedule_post with media_t
generate_contentCreate a script, caption, hook, or blog post tailored to a specific platform. Pass project_id to auto-load brand profile and performance context, or call get_ideation_context first for full context. Output is draft text ready for quality_ch
generate_imageStart an async AI image generation job — returns a job_id immediately. Poll with check_status every 5-15s until complete. Costs 2-10 credits depending on model. Use for social media posts, carousel slides, or as input to generate_video (ima
generate_videoStart an async AI video generation job — returns a job_id immediately. Poll with check_status every 10-30s until complete. Cost varies by model: veo3-fast (~15 credits/5s), kling-3 (~30 credits/5s), sora2-pro (~60 credits/10s). Check get_cr
generate_voiceoverGenerate a voiceover audio file for video narration. Returns an R2-hosted audio URL. Use after create_storyboard to add narration to each scene, or standalone for podcast intros and ad reads. Costs ~2 credits per generation.
plan_content_weekGenerate a full content plan with platform-specific drafts, hooks, angles, and optimal schedule times. Pass a topic or source_url — brand context and performance insights auto-load via project_id. Output feeds directly into quality_check_pl
render_demo_videoRender a Remotion composition to an MP4 or GIF file locally. Uses the Remotion bundler and renderer from the root project. This can take 30-120 seconds depending on composition length. Output is saved to public/videos/.
render_template_videoRender a Remotion template video in the cloud. Creates an async render job that is processed by the production worker, uploaded to R2, and tracked via async_jobs. Returns a job ID that can be polled with check_status. Costs credits based on
respond_plan_approvalApprove, reject, or edit a single pending plan approval item. Use to act on items surfaced by list_plan_approvals. decision="edited" REQUIRES edited_post containing the modified post fields — passing "edited" without edited_post returns an
save_brand_profileSave (or replace) the active brand profile for a project — voice, target audience, content pillars, claims, etc. Use after extract_brand has produced a draft AND the user has reviewed it, or when the user explicitly edits the profile. brand
save_content_planSave a content plan to the database for team review, approval workflows, and scheduled publishing. Creates a plan_id you can reference in get_content_plan, update_content_plan, and schedule_content_plan.
submit_content_plan_for_approvalCreate pending approval items for each post in a plan and mark plan status as in_review.
update_content_planEdit individual posts in a persisted content plan — change caption, title, hashtags, hook, or angle. Use after get_content_plan when the user wants to revise drafts before scheduling. Each post_updates entry must include post_id from the lo
update_platform_voiceUpdate platform-specific voice overrides (samples, tone/style, CTA/hashtag strategy).
upload_mediaUpload media to persistent R2 storage. Returns a durable r2_key that can be passed to schedule_post. Three input modes: (1) local file path (stdio mode only), (2) public URL fetched by the server, (3) inline base64 via file_data (remote age

Publishing & Scheduling

Scope: mcp:distribute — Requires Team or Agency (full MCP).

ToolDescription
schedule_content_planSchedule all posts in a content plan. Optionally auto-assigns time slots and runs quality checks before scheduling. Supports dry-run mode.
schedule_postPublish or schedule a post to connected social platforms. ALWAYS call list_connected_accounts FIRST — if the target platform is not connected, call start_platform_connection to get a one-time browser deep link the user opens to complete
start_platform_connectionBegin connecting a social platform (Instagram, TikTok, YouTube, etc.). Returns a single-use deep link the user opens in a browser to complete the one-time OAuth handshake on socialneuron.com. This is NOT another OAuth in Claude — platform c

Engagement

Scope: mcp:comments — Requires Team or Agency (full MCP).

ToolDescription
delete_commentDelete a YouTube comment. Only works for comments owned by the authenticated channel.
list_commentsList YouTube comments — pass video_id (11-char string, e.g. "dQw4w9WgXcQ") for a specific video, or omit for recent comments across all channel videos. Returns comment text, author, like count, and reply count. Use page_token from previous
moderate_commentModerate a YouTube comment on your channel — set status to "published" (approve) or "rejected" (hide from public view but kept in moderation queue). Use after list_comments surfaces a comment that needs action. For permanent removal use del
post_commentPost a new top-level comment on a YouTube video, authored as the connected channel. Use for proactive engagement on your own videos. For replies to existing comments use reply_to_comment instead — this tool only creates top-level comments.
reply_to_commentReply to a YouTube comment. Get the parent_id from list_comments results. Reply appears as the authenticated channel. Use for community engagement after checking list_comments for questions or feedback.

Autopilot & Automation

Scope: mcp:autopilot — Requires Team or Agency (full MCP).

ToolDescription
auto_approve_planBatch auto-approve posts in a content plan that meet quality thresholds. Posts below the threshold are flagged for manual review.
create_autopilot_configCreate a new autopilot configuration for automated content pipeline execution. Defines schedule, credit budgets, and approval mode.
execute_recipeExecute a recipe template with the provided inputs. This creates a recipe run that processes each step sequentially. Long-running recipes will return a run_id you can check with get_recipe_run_status.
get_autopilot_statusGet autopilot system overview: active config count, recent execution results, credits consumed, and next scheduled run time. Use as a dashboard check before modifying autopilot settings.
list_autopilot_configsList autopilot configurations showing schedules, credit budgets, last run times, and active/inactive status. Use to check what is automated before creating new configs, or to find config_id for update_autopilot_config.
run_content_pipelineRun the full content pipeline: research trends → generate plan → quality check → auto-approve → schedule posts. Chains all stages in one call for maximum efficiency. Set dry_run=true to preview the plan without publishing. Check check_pipel
update_autopilot_configUpdate an existing autopilot configuration. Can enable/disable, change schedule, or modify credit budgets.