Skip to content

SendIt

by Shree-git · remote · no sign-in to list tools · v1.2.0 · published by GitHub user Shree-git

Publish and schedule social posts, upload media, and review analytics through OAuth.

Deletes · 13Final · 4Changes · 56

148 tools: 13 can delete or cancel things, 4 do something that can't be undone, 56 change things and 75 only read.

Scanned Oct 21, 2026

16 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http sendit https://sendit.infiniteappsai.com/api/mcp

Findings

Matches of fixed checks, with the text they matched.

6 warn10 info
  • The server marks "preview_content" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "preview_content" says "preview": a word for reading.

    What this check looks for
  • The server marks "generate_content" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_content" says "generate": a word for a change.

    What this check looks for
  • The server marks "summarize_mentions" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "summarize_mentions" says "summarize": a word for reading.

    What this check looks for
  • The server marks "get_attribution_report" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "get_attribution_report" says "get": a word for reading.

    What this check looks for
  • The server marks "analyze_project" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "analyze_project" says "analyze": a word for reading.

    What this check looks for
  • The server marks "suggest_next_schedule_time" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "suggest_next_schedule_time" says "schedule": a word for a change.

    What this check looks for
Show 10 more findings

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

148 tools

Deletes or cancels 13Claude Code: deny
  • cancel_recurring_seriesCancel a recurring series and stop future pending occurrences from publishing.No findings

    Why it is in this group

    • The name "cancel_recurring_series" says "cancel": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Cancel a recurring series and stop future pending occurrences from publishing.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • complete_goalMark a Product Hunt goal as complete or incomplete.No findings

    Why it is in this group

    • The description's first verb is "mark": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Mark a Product Hunt goal as complete or incomplete. REQUIREMENTS: • Must have Product Hunt account connected • Write access requires app whitelisting by Product Hunt

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • create_ad_campaignCreate a new advertising campaign on a connected ad platform.No findings

    Why it is in this group

    • The name "create_ad_campaign" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a new advertising campaign on a connected ad platform. Supports campaign creation across Meta Ads, Google Ads, LinkedIn Ads, TikTok Ads, Pinterest Ads, and all other connected ad platforms. The AI Campaign Builder agent can help design optimal campaign structures.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • create_ad_creativeCreate an ad creative (image, video, carousel, or text ad).No findings

    Why it is in this group

    • The name "create_ad_creative" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create an ad creative (image, video, carousel, or text ad). The Creative Asset agent can help generate ad visuals and copy.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • create_goalCreate a new maker goal on Product Hunt.No findings

    Why it is in this group

    • The name "create_goal" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a new maker goal on Product Hunt. REQUIREMENTS: • Must have Product Hunt account connected • Write access requires app whitelisting by Product Hunt • Goal title limited to 280 characters If write access is not available, you'll receive an error with instructions to request whitelisting.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • delete_library_itemDelete a content library item.No findings

    Why it is in this group

    • The name "delete_library_item" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a content library item.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • delete_postDelete a published post from a platform.No findings

    Why it is in this group

    • The name "delete_post" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a published post from a platform. Supports: X, Facebook, LinkedIn, Threads, YouTube, Pinterest, Bluesky, Mastodon, Telegram. Provide the post ID (database ID returned when published through SendIt), the platform post ID, or the post URL.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • delete_scheduled_postCancel a scheduled post before it's published.No findings

    Why it is in this group

    • The name "delete_scheduled_post" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Cancel a scheduled post before it's published.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
    • idempotentHint: true
  • delete_workflowDelete a workflow permanently.No findings

    Why it is in this group

    • The name "delete_workflow" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a workflow permanently.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • disconnect_connectorDisconnect and revoke credentials for a connector.2 findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).

    Findings

    • Info

      The description mentions "credentials".

      Matched text

      description: "Disconnect and revoke credentials for a connector."

      What this check looks for
    • Info

      The input schema at properties.credentialId.description mentions "credential".

      Matched text

      inputSchema.properties.credentialId.description: "Specific credential ID to revoke (optional)"

      What this check looks for
    Description, as the server wrote it
    Disconnect and revoke credentials for a connector.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
  • publish_aiGenerate AI content and publish it in a single step.No findings

    Why it is in this group

    • The name "publish_ai" says "publish": a word for a change that another call does not undo.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Generate AI content and publish it in a single step. Combines generate_content + publish_content into one call. First generates platform-optimized content using AI, then publishes to the specified platforms. Same platform requirements as publish_content apply.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • publish_from_libraryPublish content directly from your library to one or more platforms.No findings

    Why it is in this group

    • The name "publish_from_library" says "publish": a word for a change that another call does not undo.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Publish content directly from your library to one or more platforms.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
  • upvote_productUpvote a product on Product Hunt.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Upvote a product on Product Hunt. REQUIREMENTS: • Must have Product Hunt account connected • Write access requires app whitelisting by Product Hunt Provide the Product Hunt post ID (not the slug).

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
    • idempotentHint: false
Can't be undone 4Claude Code: ask
  • draft_replyGenerate an AI-powered reply draft for a social mention.No findings

    Why it is in this group

    • The name "draft_reply" says "reply": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Generate an AI-powered reply draft for a social mention. Returns a draft with tone and safety flags.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • publish_contentPublish content to social media platforms.No findings

    Why it is in this group

    • The name "publish_content" says "publish": a word for a change that another call does not undo.
    Description, as the server wrote it
    Publish content to social media platforms. MEDIA RULES: • mediaUrl must be a public HTTPS URL — NOT a local file path. • If the user shares an image/video in chat, call create_upload_session FIRST to get a browser upload link, then use the returned URL here. • Text-only works on: LinkedIn, Threads, X, Facebook. • Image required: Instagram, Pinterest. • TikTok supports one video or 1-35 Photo Mode images. • Video required: YouTube. Call validate_content to check before publishing.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • reply_to_commentReply to a comment on one of your published posts.No findings

    Why it is in this group

    • The name "reply_to_comment" says "reply": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Reply to a comment on one of your published posts. Supported platforms: X (reply tweets), Threads, Instagram, Facebook, YouTube. Not supported: LinkedIn, Pinterest, TikTok.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • reply_to_conversationSend a reply in a conversation.1 finding

    Why it is in this group

    • The name "reply_to_conversation" says "reply": a word for sending, and what is sent cannot be taken back.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "...re conversation reply routing metadata (credential + operation). Provide "routing" once an..."

      What this check looks for
    Description, as the server wrote it
    Send a reply in a conversation. The reply is sent through the original channel (e.g., Instagram comment, X reply, Facebook comment, etc.). Replies require conversation reply routing metadata (credential + operation). Provide "routing" once and it will be stored on the conversation for future replies. Use the Inbox Reply agent to get AI-drafted replies with brand voice.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
Changes things 56Claude Code: ask
  • analyze_projectAnalyze a project for audience, positioning, differentiators, content pillars, and risks.1 finding

    Why it is in this group

    • The name "analyze_project" says "analyze": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "analyze_project" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "analyze_project" says "analyze": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Analyze a project for audience, positioning, differentiators, content pillars, and risks.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • approve_postApprove a scheduled post that is pending approval.No findings

    Why it is in this group

    • The name "approve_post" says "approve": a word for a change.
    Description, as the server wrote it
    Approve a scheduled post that is pending approval. Once approved, it will be published at the scheduled time.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • autopilot_approve_planApprove all pending items in an autopilot plan, or approve/reject individual items.No findings

    Why it is in this group

    • The name "autopilot_approve_plan" says "approve": a word for a change.
    Description, as the server wrote it
    Approve all pending items in an autopilot plan, or approve/reject individual items. After approval, use autopilot_execute_plan to schedule the approved posts.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • autopilot_execute_planSchedule all approved posts in an autopilot plan.No findings

    Why it is in this group

    • The name "autopilot_execute_plan" says "execute": a word for a change.
    Description, as the server wrote it
    Schedule all approved posts in an autopilot plan. Posts are spaced out over time and scheduled via the standard publishing pipeline.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • autopilot_generate_planGenerate a weekly content plan for an autopilot goal.No findings

    Why it is in this group

    • The name "autopilot_generate_plan" says "generate": a word for a change.
    Description, as the server wrote it
    Generate a weekly content plan for an autopilot goal. Chains 5 AI agents: Strategy Planner -> Content Ideation -> Calendar Optimizer -> Multi-Format Composer -> Variant Repurposer. Returns a plan with individual post items for review.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • autopilot_set_goalSet a social media goal for the AI autopilot to work toward.No findings

    Why it is in this group

    • The name "autopilot_set_goal" says "set": a word for a change.
    Description, as the server wrote it
    Set a social media goal for the AI autopilot to work toward. The autopilot will use AI agents to plan content, generate posts, and schedule them. Example goals: 'Grow LinkedIn followers by 20%', 'Post 5x/week on Instagram about AI'.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • bulk_scheduleSchedule multiple posts at once from CSV content.No findings

    Why it is in this group

    • The name "bulk_schedule" says "schedule": a word for a change.
    Description, as the server wrote it
    Schedule multiple posts at once from CSV content. USE THIS WHEN: • User has a spreadsheet or list of posts to schedule • Planning a content calendar for a month • Migrating content from another tool CSV FORMAT (required columns): • platform: linkedin, instagram, x, tiktok, threads • scheduled_time: ISO 8601 format (e.g., 2024-02-15T10:00:00Z) • text: Post content/caption OPTIONAL COLUMNS: • media_url: Image or video URL • first_comment: First comment to add (Instagram/LinkedIn) • hashtags: Additional hashtags to append PROCESS: 1. First call with validate_only: true to check for errors 2. Review validation report with user 3. Call again with validate_only: false to execute import

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • bulk_update_calendar_eventsApply one bulk action to many calendar events at once, including shifts, explicit reschedules, queue moves, cancellations, or assignments.No findings

    Why it is in this group

    • The name "bulk_update_calendar_events" says "update": a word for a change.
    Description, as the server wrote it
    Apply one bulk action to many calendar events at once, including shifts, explicit reschedules, queue moves, cancellations, or assignments.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • connect_connectorInitiate authentication flow for a connector.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Initiate authentication flow for a connector. For OAuth2 connectors, returns an authorization URL. For API key connectors, stores the provided key. For webhook connectors, registers the webhook URL.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • connect_platformConnect a platform dynamically by platform ID.1 finding

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "...ns OAuth URL, webhook setup details, or credential form contract depending on the platform..."

      What this check looks for
    Description, as the server wrote it
    Connect a platform dynamically by platform ID. Returns OAuth URL, webhook setup details, or credential form contract depending on the platform auth method.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • create_brand_voiceCreate a brand voice profile to guide AI content generation.No findings

    Why it is in this group

    • The name "create_brand_voice" says "create": a word for a change.
    Description, as the server wrote it
    Create a brand voice profile to guide AI content generation. Configurable fields: • tone: Overall tone (professional, casual, energetic, witty, etc.) • personality: Brand personality description • writingStyle: Writing style guidelines • doRules: Array of things the brand voice SHOULD do • dontRules: Array of things the brand voice should NEVER do • examplePosts: Example posts in this brand voice • approvedHashtags: Preferred hashtags to prioritize • bannedWords: Words to never use in content • keyPhrases: Key phrases to incorporate naturally

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • create_library_itemSave content to your library as a draft, template, or evergreen content for reuse.No findings

    Why it is in this group

    • The name "create_library_item" says "create": a word for a change.
    Description, as the server wrote it
    Save content to your library as a draft, template, or evergreen content for reuse. Alias for save_to_library.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • create_projectCreate a Projects workspace for a product, app, or codebase.No findings

    Why it is in this group

    • The name "create_project" says "create": a word for a change.
    Description, as the server wrote it
    Create a Projects workspace for a product, app, or codebase.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • create_scheduled_reportCreate a recurring analytics report that's generated and delivered automatically.No findings

    Why it is in this group

    • The name "create_scheduled_report" says "create": a word for a change.
    Description, as the server wrote it
    Create a recurring analytics report that's generated and delivered automatically.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • create_upload_sessionCreate a browser upload link for media files.No findings

    Why it is in this group

    • The name "create_upload_session" says "create": a word for a change.
    Description, as the server wrote it
    Create a browser upload link for media files. ALWAYS use this when the user shares an image or video in chat — their file is local and cannot be passed directly to publish_content. WORKFLOW: 1. Call this tool to get an uploadUrl 2. Give the user the link to open in their browser and upload their file 3. After upload, call get_upload_session to get the public media URL(s) 4. Use the returned URL with publish_content or schedule_content Supports up to 20 files per session. Expires in 15 minutes.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: false
  • create_workflowCreate a new automation workflow.No findings

    Why it is in this group

    • The name "create_workflow" says "create": a word for a change.
    Description, as the server wrote it
    Create a new automation workflow. Workflows consist of a trigger and a sequence of steps. Trigger types: • manual - Run on demand • schedule - Cron-based schedule • event - Triggered by SendIt events (post published, mention detected, etc.) • webhook - Triggered by external webhook • connector_event - Triggered by connector-specific events Step types: • connector_action - Execute a connector operation • connector_operation - Alias of connector_action • agent_invoke - Run an AI agent • condition - Conditional control step (skip subsequent steps) • delay - Wait for a duration • http_request - Outbound HTTP request • transform - Transform data between steps • notify - Send notification (email, Slack, etc.)

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • critique_postScore and critique post content with AI-powered suggestions.No findings

    Why it is in this group

    • The name "critique_post" says "post": a word for a change.
    Description, as the server wrote it
    Score and critique post content with AI-powered suggestions. Returns a quality score (0-100), breakdown, and improvement tips.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • duplicate_scheduled_postCreate a new scheduled post by duplicating an existing scheduled post.No findings

    Why it is in this group

    • The name "duplicate_scheduled_post" says "post": a word for a change.
    Description, as the server wrote it
    Create a new scheduled post by duplicating an existing scheduled post. If no time is supplied, SendIt shifts it forward automatically.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • edit_postEdit a published post on a supported platform.No findings

    Why it is in this group

    • The name "edit_post" says "edit": a word for a change.
    Description, as the server wrote it
    Edit a published post on a supported platform. Updates the text/caption of an already published post. SUPPORTED: YouTube (title/description/tags), LinkedIn, Facebook, Mastodon, Telegram, Bluesky NOT SUPPORTED: X, Threads, Instagram, Pinterest, TikTok Requires the published post ID returned when the post was originally published through SendIt.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • edit_scheduled_postEdit a pending scheduled post.No findings

    Why it is in this group

    • The name "edit_scheduled_post" says "edit": a word for a change.
    Description, as the server wrote it
    Edit a pending scheduled post. Supports text, media, platform, timing, approval-scope, and publish-now updates.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • escalate_to_supportEscalate a social conversation to a connected support platform (Zendesk, Intercom, etc.).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Escalate a social conversation to a connected support platform (Zendesk, Intercom, etc.). Creates a support ticket from the conversation context.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • execute_connector_operationExecute a specific operation on a connected connector.No findings

    Why it is in this group

    • The name "execute_connector_operation" says "execute": a word for a change.
    Description, as the server wrote it
    Execute a specific operation on a connected connector. Use get_connector_capabilities to discover available operations. Operations include read/write actions specific to each connector.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • generate_ai_mediaGenerate AI images or videos using approved media providers.No findings

    Why it is in this group

    • The name "generate_ai_media" says "generate": a word for a change.
    Description, as the server wrote it
    Generate AI images or videos using approved media providers. Supported providers: - heygen-mcp: HeyGen Direct API or MCP video/avatar generation - codex-oauth-image: Codex OAuth image generation for gpt-image-2 Returns a job ID that can be polled for status.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • generate_contentGenerate AI-powered platform-optimized content without publishing.1 finding

    Why it is in this group

    • The name "generate_content" says "generate": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "generate_content" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_content" says "generate": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Generate AI-powered platform-optimized content without publishing. Uses AI to create platform-specific text, hashtags, and titles from a prompt or media URL. Respects brand voice profiles if configured. Returns generated content variants for each target platform. Use publish_content to publish the generated content, or publish_ai to generate and publish in one step.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • generate_post_bundleGenerate multi-variant AI content with quality scoring for multiple platforms.No findings

    Why it is in this group

    • The name "generate_post_bundle" says "generate": a word for a change.
    Description, as the server wrote it
    Generate multi-variant AI content with quality scoring for multiple platforms. Returns the best variant plus alternatives.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • generate_project_strategyGenerate project-local brand voice, positioning, audience, and social content strategy.No findings

    Why it is in this group

    • The name "generate_project_strategy" says "generate": a word for a change.
    Description, as the server wrote it
    Generate project-local brand voice, positioning, audience, and social content strategy.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • get_attribution_reportGenerate an attribution report showing how channels contribute to conversions.1 finding

    Why it is in this group

    • The name "get_attribution_report" says "get": a word for reading.
    • The description's first verb is "generate": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "get_attribution_report" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "get_attribution_report" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Generate an attribution report showing how channels contribute to conversions. Models: • first_touch - All credit to first interaction • last_touch - All credit to last interaction • linear - Equal credit across all touchpoints • time_decay - More credit to recent touchpoints • position_based - 40% first, 40% last, 20% middle • data_driven - ML-based attribution

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • import_project_sourceImport GitHub, app-store, website, file, or media source context into a project.No findings

    Why it is in this group

    • The name "import_project_source" says "import": a word for a change.
    Description, as the server wrote it
    Import GitHub, app-store, website, file, or media source context into a project.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • invoke_agentInvoke a specific AI agent with given inputs.No findings

    Why it is in this group

    • The name "invoke_agent" says "invoke": a word for a change.
    Description, as the server wrote it
    Invoke a specific AI agent with given inputs. The agent will execute within policy constraints and return structured output. All agent runs are logged for audit and traceability.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • preview_contentGenerate a visual preview of how content will appear on each platform.1 finding

    Why it is in this group

    • The name "preview_content" says "preview": a word for reading.
    • The description's first verb is "generate": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "preview_content" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "preview_content" says "preview": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Generate a visual preview of how content will appear on each platform. USE THIS WHEN: • Before publishing to see how posts will look • To validate content against platform requirements • To check character counts, hashtag limits, and media requirements Returns an HTML preview mockup for each platform with validation results: • Character count vs limit • Hashtag count (Instagram has 30 max) • Media requirement check • Platform-specific warnings and errors

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • reject_postReject a scheduled post that is pending approval.No findings

    Why it is in this group

    • The name "reject_post" says "reject": a word for a change.
    Description, as the server wrote it
    Reject a scheduled post that is pending approval. The post will not be published.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • repurpose_urlTakes a URL (article, YouTube video, or podcast) and repurposes its content into platform-optimized posts.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Takes a URL (article, YouTube video, or podcast) and repurposes its content into platform-optimized posts. Supports: • Web articles — extracts text content • YouTube videos — extracts transcript/captions • Podcast RSS feeds — extracts episode descriptions and show notes Returns platform-specific formatted output (X threads, Instagram carousel slides, Medium articles, etc.) with a quality score (0-100) for each variant.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • request_project_contentGenerate UGC, slideshow, remix, caption, or calendar content from project intelligence.No findings

    Why it is in this group

    • The name "request_project_content" says "request": a word for a change.
    Description, as the server wrote it
    Generate UGC, slideshow, remix, caption, or calendar content from project intelligence.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • requeue_dead_letterRequeue a dead letter post for another publishing attempt.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Requeue a dead letter post for another publishing attempt. Creates a new scheduled post from the dead letter entry.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • retry_scheduled_postRetry a failed scheduled post, optionally editing the content, narrowing to failed platforms, rescheduling, or publishing immediately.No findings

    Why it is in this group

    • The name "retry_scheduled_post" says "post": a word for a change.
    Description, as the server wrote it
    Retry a failed scheduled post, optionally editing the content, narrowing to failed platforms, rescheduling, or publishing immediately.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • run_analytics_reportExecute one saved analytics report immediately and return the generated run plus aggregated analytics data.No findings

    Why it is in this group

    • The name "run_analytics_report" says "run": a word for a change.
    Description, as the server wrote it
    Execute one saved analytics report immediately and return the generated run plus aggregated analytics data.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • save_project_content_to_libraryGenerate project content and save the outputs into the reusable content library.No findings

    Why it is in this group

    • The name "save_project_content_to_library" says "save": a word for a change.
    Description, as the server wrote it
    Generate project content and save the outputs into the reusable content library.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • save_to_librarySave content to your library as a draft, template, or evergreen content for reuse.No findings

    Why it is in this group

    • The name "save_to_library" says "save": a word for a change.
    Description, as the server wrote it
    Save content to your library as a draft, template, or evergreen content for reuse.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • schedule_contentSchedule content for future publishing.No findings

    Why it is in this group

    • The name "schedule_content" says "schedule": a word for a change.
    Description, as the server wrote it
    Schedule content for future publishing. Same media rules as publish_content apply. • mediaUrl must be a public HTTPS URL — call create_upload_session if user shares a file in chat. • Content is validated at schedule time, not publish time.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • schedule_content_advancedSchedule content with explicit target accounts, queue placement, recurrence, platform overrides, media library attachments, and score gating.No findings

    Why it is in this group

    • The name "schedule_content_advanced" says "schedule": a word for a change.
    Description, as the server wrote it
    Schedule content with explicit target accounts, queue placement, recurrence, platform overrides, media library attachments, and score gating.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • schedule_multilang_contentSchedule the same post in multiple languages, linking all variants into one translation group.No findings

    Why it is in this group

    • The name "schedule_multilang_content" says "schedule": a word for a change.
    Description, as the server wrote it
    Schedule the same post in multiple languages, linking all variants into one translation group.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • score_contentScore content quality on a 0-100 scale before publishing.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Score content quality on a 0-100 scale before publishing. Evaluates 5 factors (20 points each): 1. Text length optimization for target platforms 2. Hashtag count optimization 3. Posting time alignment with best engagement windows 4. Media presence (images/videos) 5. Content patterns (CTA, hooks, formatting, emoji) Returns overall score, per-factor breakdown, and improvement suggestions.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • set_default_brand_voiceSet a brand voice profile as the default.No findings

    Why it is in this group

    • The name "set_default_brand_voice" says "set": a word for a change.
    Description, as the server wrote it
    Set a brand voice profile as the default. The default brand voice is automatically used by all AI content generation tools.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • suggest_next_schedule_timeSuggest the next recommended publish time using best-times insights or configured queue slots without creating a post.1 finding

    Why it is in this group

    • The name "suggest_next_schedule_time" says "schedule": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "suggest_next_schedule_time" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "suggest_next_schedule_time" says "schedule": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Suggest the next recommended publish time using best-times insights or configured queue slots without creating a post.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • suggest_queue_slotsSuggest reusable queue slots derived from best-time insights for one or more platforms.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Suggest reusable queue slots derived from best-time insights for one or more platforms.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • summarize_mentionsCluster and summarize recent social mentions by theme and sentiment using AI.1 finding

    Why it is in this group

    • The name "summarize_mentions" says "summarize": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "summarize_mentions" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "summarize_mentions" says "summarize": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Cluster and summarize recent social mentions by theme and sentiment using AI.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • trigger_scheduled_postManually trigger a scheduled post to publish immediately.No findings

    Why it is in this group

    • The name "trigger_scheduled_post" says "trigger": a word for a change.
    Description, as the server wrote it
    Manually trigger a scheduled post to publish immediately.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • trigger_workflowManually trigger a workflow run.No findings

    Why it is in this group

    • The name "trigger_workflow" says "trigger": a word for a change.
    Description, as the server wrote it
    Manually trigger a workflow run.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • update_ad_campaignUpdate campaign settings (name, budget, dates, status).No findings

    Why it is in this group

    • The name "update_ad_campaign" says "update": a word for a change.
    Description, as the server wrote it
    Update campaign settings (name, budget, dates, status).

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • update_agent_policyCreate or update a policy/guardrail for an agent.No findings

    Why it is in this group

    • The name "update_agent_policy" says "update": a word for a change.
    Description, as the server wrote it
    Create or update a policy/guardrail for an agent. Policy types: • brand_safety - Content must align with brand guidelines • platform_compliance - Must follow platform ad policies • approval_gate - Require human approval before execution • budget_limit - Cap spending or resource usage • content_filter - Filter certain topics or language

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • update_calendar_eventUpdate one calendar event by rescheduling it, changing status, reassigning it, or storing metadata.No findings

    Why it is in this group

    • The name "update_calendar_event" says "update": a word for a change.
    Description, as the server wrote it
    Update one calendar event by rescheduling it, changing status, reassigning it, or storing metadata.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • update_conversationUpdate conversation status, priority, assignment, or tags.No findings

    Why it is in this group

    • The name "update_conversation" says "update": a word for a change.
    Description, as the server wrote it
    Update conversation status, priority, assignment, or tags.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • update_library_itemUpdate an existing content library item.No findings

    Why it is in this group

    • The name "update_library_item" says "update": a word for a change.
    Description, as the server wrote it
    Update an existing content library item.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
  • update_recurring_seriesUpdate the recurrence rule or end date for future occurrences in a recurring series.No findings

    Why it is in this group

    • The name "update_recurring_series" says "update": a word for a change.
    Description, as the server wrote it
    Update the recurrence rule or end date for future occurrences in a recurring series.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • update_workflowUpdate a workflow's configuration or status.No findings

    Why it is in this group

    • The name "update_workflow" says "update": a word for a change.
    Description, as the server wrote it
    Update a workflow's configuration or status.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • upload_mediaFOR CLAUDE DESKTOP ONLY (with filesystem access).No findings

    Why it is in this group

    • The name "upload_media" says "upload": a word for a change.
    Description, as the server wrote it
    FOR CLAUDE DESKTOP ONLY (with filesystem access). For Claude.ai/web: Use create_upload_session instead - it provides a browser upload link. Upload local media to cloud storage, returning a public HTTPS URL. WHEN TO USE: • Instagram, LinkedIn, Threads, X: REQUIRED for local files before calling publish_content • TikTok: NOT NEEDED - pass local path directly to publish_content SUPPORTED FORMATS: • Images: jpg, png, gif, webp (max 10MB) • Videos: mp4, mov, webm (max 100MB) Returns { url: 'https://...' } for use in publish_content mediaUrl parameter.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: false
Only reads 75Claude Code: allow
  • autopilot_get_progressGet progress metrics for an autopilot goal — weeks planned, posts approved, scheduled, published.No findings

    Why it is in this group

    • The name "autopilot_get_progress" says "get": a word for reading.
    Description, as the server wrote it
    Get progress metrics for an autopilot goal — weeks planned, posts approved, scheduled, published.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • autopilot_list_goalsList all autopilot goals for the current user.No findings

    Why it is in this group

    • The name "autopilot_list_goals" says "list": a word for reading.
    Description, as the server wrote it
    List all autopilot goals for the current user.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • check_ai_media_statusCheck the status of an AI media generation job.No findings

    Why it is in this group

    • The name "check_ai_media_status" says "status": a word for reading.
    Description, as the server wrote it
    Check the status of an AI media generation job. Returns current status (pending, processing, completed, failed) and result URL when complete.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • connect_blueskyGet the credential setup schema to connect Bluesky using API key or token credentials.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "Get the credential setup schema to connect Bluesky using A..."

      What this check looks for
    Description, as the server wrote it
    Get the credential setup schema to connect Bluesky using API key or token credentials.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_devtoGet the credential setup schema to connect DEV.to using API key or token credentials.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "Get the credential setup schema to connect DEV.to using AP..."

      What this check looks for
    Description, as the server wrote it
    Get the credential setup schema to connect DEV.to using API key or token credentials.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_discordGet the webhook setup schema to connect Discord.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the webhook setup schema to connect Discord.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_dribbbleGet the OAuth URL to connect your Dribbble account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Dribbble account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_facebookGet the OAuth URL to connect your Facebook account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Facebook account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_gmbGet the OAuth URL to connect your Google My Business account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Google My Business account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_hashnodeGet the credential setup schema to connect Hashnode using API key or token credentials.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "Get the credential setup schema to connect Hashnode using..."

      What this check looks for
    Description, as the server wrote it
    Get the credential setup schema to connect Hashnode using API key or token credentials.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_instagramGet the OAuth URL to connect your Instagram account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Instagram account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_lemmyGet the credential setup schema to connect Lemmy using API key or token credentials.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "Get the credential setup schema to connect Lemmy using API..."

      What this check looks for
    Description, as the server wrote it
    Get the credential setup schema to connect Lemmy using API key or token credentials.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_linkedinGet the OAuth URL to connect your LinkedIn account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your LinkedIn account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_linkedin-pageGet the OAuth URL to connect your LinkedIn Page account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your LinkedIn Page account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_mastodonGet the OAuth URL to connect your Mastodon account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Mastodon account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_nostrGet the custom connection setup instructions for Nostr.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the custom connection setup instructions for Nostr. Note: This is an unofficial connector and may change without notice.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_pinterestGet the OAuth URL to connect your Pinterest account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Pinterest account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_producthuntGet the OAuth URL to connect your Product Hunt account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Product Hunt account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_slackGet the webhook setup schema to connect Slack.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the webhook setup schema to connect Slack.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_telegramGet the credential setup schema to connect Telegram using API key or token credentials.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "Get the credential setup schema to connect Telegram using..."

      What this check looks for
    Description, as the server wrote it
    Get the credential setup schema to connect Telegram using API key or token credentials.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_threadsGet the OAuth URL to connect your Threads account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your Threads account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_tiktokGet the OAuth URL to connect your TikTok account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your TikTok account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_whopGet the credential setup schema to connect Whop using API key or token credentials.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    Findings

    • Info

      The description mentions "credential".

      Matched text

      description: "Get the credential setup schema to connect Whop using API..."

      What this check looks for
    Description, as the server wrote it
    Get the credential setup schema to connect Whop using API key or token credentials. Note: This is an unofficial connector and may change without notice.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_xGet the OAuth URL to connect your X account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your X account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • connect_youtubeGet the OAuth URL to connect your YouTube account.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the OAuth URL to connect your YouTube account.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
    • idempotentHint: true
  • get_ad_performanceGet performance metrics for campaigns, ad sets, or creatives.No findings

    Why it is in this group

    • The name "get_ad_performance" says "get": a word for reading.
    Description, as the server wrote it
    Get performance metrics for campaigns, ad sets, or creatives. Returns impressions, clicks, spend, conversions, CTR, CPC, CPM, ROAS, and custom metrics. Supports date range filtering and breakdown by day.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_agent_policiesGet the active policies/guardrails for an agent.No findings

    Why it is in this group

    • The name "get_agent_policies" says "get": a word for reading.
    Description, as the server wrote it
    Get the active policies/guardrails for an agent.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_agent_runGet the details and output of a specific agent run.No findings

    Why it is in this group

    • The name "get_agent_run" says "get": a word for reading.
    Description, as the server wrote it
    Get the details and output of a specific agent run.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_analyticsGet engagement analytics for a platform.No findings

    Why it is in this group

    • The name "get_analytics" says "get": a word for reading.
    Description, as the server wrote it
    Get engagement analytics for a platform. Facebook and TikTok can include account-wide posts not published through SendIt; unresolved TikTok inbox-draft deliveries may appear as placeholders until SendIt can link them.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_anomaly_alertsGet recent anomaly alerts detected across metrics.No findings

    Why it is in this group

    • The name "get_anomaly_alerts" says "get": a word for reading.
    Description, as the server wrote it
    Get recent anomaly alerts detected across metrics. Includes sudden drops/spikes in engagement, unusual spend patterns, and content performance outliers.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_approval_commentsList approval comments for one scheduled post in team approval scope.No findings

    Why it is in this group

    • The name "get_approval_comments" says "get": a word for reading.
    Description, as the server wrote it
    List approval comments for one scheduled post in team approval scope.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_audit_logRetrieve audit log entries for your account.No findings

    Why it is in this group

    • The name "get_audit_log" says "get": a word for reading.
    Description, as the server wrote it
    Retrieve audit log entries for your account. Shows a timestamped trail of all actions performed: publishes, schedules, account connections, content library changes, etc. Filter by action type, resource type, or date range.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_benchmark_comparisonCompare your performance against industry benchmarks.No findings

    Why it is in this group

    • The name "get_benchmark_comparison" says "get": a word for reading.
    Description, as the server wrote it
    Compare your performance against industry benchmarks. Returns how your engagement rates, growth, and content performance compare to similar accounts in your industry.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_best_timesGet the optimal posting times for a platform based on your historical engagement data.No findings

    Why it is in this group

    • The name "get_best_times" says "get": a word for reading.
    Description, as the server wrote it
    Get the optimal posting times for a platform based on your historical engagement data. Returns top time slots ranked by engagement score. Falls back to industry defaults when insufficient personal data exists.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_calendar_gapsDetect open days in the publishing calendar and return gap metadata for planning.No findings

    Why it is in this group

    • The name "get_calendar_gaps" says "get": a word for reading.
    Description, as the server wrote it
    Detect open days in the publishing calendar and return gap metadata for planning.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_calendar_recommendationsReturn top recommended recurring posting slots from historical performance data.No findings

    Why it is in this group

    • The name "get_calendar_recommendations" says "get": a word for reading.
    Description, as the server wrote it
    Return top recommended recurring posting slots from historical performance data.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_connector_capabilitiesGet detailed capabilities and operations for a specific connector.No findings

    Why it is in this group

    • The name "get_connector_capabilities" says "get": a word for reading.
    Description, as the server wrote it
    Get detailed capabilities and operations for a specific connector. Returns supported operations, auth requirements, rate limits, and constraints.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_connector_healthGet health status and SLO metrics for a connector.No findings

    Why it is in this group

    • The name "get_connector_health" says "get": a word for reading.
    Description, as the server wrote it
    Get health status and SLO metrics for a connector.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_conversationGet full conversation thread with all messages.No findings

    Why it is in this group

    • The name "get_conversation" says "get": a word for reading.
    Description, as the server wrote it
    Get full conversation thread with all messages.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_inbox_summaryGet a summary of the unified inbox: total conversations, unread count, sentiment breakdown, and response time metrics.No findings

    Why it is in this group

    • The name "get_inbox_summary" says "get": a word for reading.
    Description, as the server wrote it
    Get a summary of the unified inbox: total conversations, unread count, sentiment breakdown, and response time metrics.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_library_itemGet a specific content library item by ID.No findings

    Why it is in this group

    • The name "get_library_item" says "get": a word for reading.
    Description, as the server wrote it
    Get a specific content library item by ID.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_platform_requirementsGet detailed content requirements for a platform.No findings

    Why it is in this group

    • The name "get_platform_requirements" says "get": a word for reading.
    Description, as the server wrote it
    Get detailed content requirements for a platform. Returns: Character limits, media specifications, rate limits, and special notes. Call this when you need specifics like exact character counts, file size limits, or supported formats. The publish_content description has a quick reference, but this tool provides complete details.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_platform_settings_schemaGet the JSON schema contract for content.platformSettings.<platformId>, including platform-specific publish options, validation-only gates, and supported per-platform content overr…No findings

    Why it is in this group

    • The name "get_platform_settings_schema" says "get": a word for reading.
    Description, as the server wrote it
    Get the JSON schema contract for content.platformSettings.<platformId>, including platform-specific publish options, validation-only gates, and supported per-platform content overrides.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_post_analyticsFetch drilldown analytics for one published post, including per-snapshot metrics and campaign context.No findings

    Why it is in this group

    • The name "get_post_analytics" says "get": a word for reading.
    Description, as the server wrote it
    Fetch drilldown analytics for one published post, including per-snapshot metrics and campaign context.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_producthunt_analyticsGet analytics for your products on Product Hunt.No findings

    Why it is in this group

    • The name "get_producthunt_analytics" says "get": a word for reading.
    Description, as the server wrote it
    Get analytics for your products on Product Hunt. Returns: • Total products, votes, comments, reviews • Number of featured products • Per-product metrics including vote counts and ratings Works with read-only access (no whitelisting required).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_project_analysisFetch stored project analysis, strategy, recent generations, and activity.No findings

    Why it is in this group

    • The name "get_project_analysis" says "get": a word for reading.
    Description, as the server wrote it
    Fetch stored project analysis, strategy, recent generations, and activity.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_scheduled_postFetch one scheduled post with approval, recurrence, retry, and published-link metadata.No findings

    Why it is in this group

    • The name "get_scheduled_post" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one scheduled post with approval, recurrence, retry, and published-link metadata.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_scheduled_postsList scheduled posts and their current status, including pending, publishing, TikTok draft-delivered, published, failed, or cancelled posts.No findings

    Why it is in this group

    • The name "get_scheduled_posts" says "get": a word for reading.
    Description, as the server wrote it
    List scheduled posts and their current status, including pending, publishing, TikTok draft-delivered, published, failed, or cancelled posts.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_tiktok_creator_infoFetch fresh TikTok Content Posting API creator info for the connected account.No findings

    Why it is in this group

    • The name "get_tiktok_creator_info" says "get": a word for reading.
    Description, as the server wrote it
    Fetch fresh TikTok Content Posting API creator info for the connected account. Use this before rendering TikTok publish settings.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_unified_ad_reportGet a cross-platform advertising performance report.No findings

    Why it is in this group

    • The name "get_unified_ad_report" says "get": a word for reading.
    Description, as the server wrote it
    Get a cross-platform advertising performance report. Aggregates metrics across all connected ad platforms into a single view. Useful for comparing performance across Meta, Google, LinkedIn, TikTok, etc.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_unified_analyticsGet cross-platform analytics combining organic and paid performance.No findings

    Why it is in this group

    • The name "get_unified_analytics" says "get": a word for reading.
    Description, as the server wrote it
    Get cross-platform analytics combining organic and paid performance. Aggregates metrics across all connected platforms into a single view. Supports time-series breakdowns and platform comparison.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_upload_sessionCheck the status of an upload session and get the media URL(s) once uploaded.No findings

    Why it is in this group

    • The name "get_upload_session" says "get": a word for reading.
    Description, as the server wrote it
    Check the status of an upload session and get the media URL(s) once uploaded. Call this after the user clicks the upload link to see if they've completed the upload. Returns: • status: 'pending' - User hasn't uploaded yet • status: 'uploaded' - Upload complete, includes mediaUrl, mediaUrls, fileCount, mediaItems • status: 'expired' - Session expired (15 min limit)

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • get_workflow_runGet detailed step-by-step execution log for a workflow run.No findings

    Why it is in this group

    • The name "get_workflow_run" says "get": a word for reading.
    Description, as the server wrote it
    Get detailed step-by-step execution log for a workflow run.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_ad_accountsList all connected advertising accounts across platforms.No findings

    Why it is in this group

    • The name "list_ad_accounts" says "list": a word for reading.
    Description, as the server wrote it
    List all connected advertising accounts across platforms. Returns ad accounts from Meta Ads, Google Ads, LinkedIn Ads, TikTok Ads, etc.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_ad_campaignsList campaigns for an ad account with status and performance summary.No findings

    Why it is in this group

    • The name "list_ad_campaigns" says "list": a word for reading.
    Description, as the server wrote it
    List campaigns for an ad account with status and performance summary.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_agent_runsList recent agent runs with status and summary.No findings

    Why it is in this group

    • The name "list_agent_runs" says "list": a word for reading.
    Description, as the server wrote it
    List recent agent runs with status and summary.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_agentsList all available AI agents and their capabilities.No findings

    Why it is in this group

    • The name "list_agents" says "list": a word for reading.
    Description, as the server wrote it
    List all available AI agents and their capabilities. SendIt includes 12 specialized agents: • Strategy Planner - Content strategy from audience/trend analysis • Content Ideation - Topic ideas from trends and calendar gaps • Multi-Format Composer - Platform-optimized content from a brief • Creative Asset - AI image/video generation orchestration • Variant Repurposer - Repurpose content for different platforms • Calendar Optimizer - Optimal posting time suggestions • Listening Analyst - Social mention and sentiment analysis • Inbox Reply - Contextual reply drafts with brand voice • Campaign Builder - Ad campaign structure recommendations • Budget Optimizer - Spend pacing and budget reallocation • Experimentation - A/B test design and analysis • Executive Insights - Executive summary reports

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_analytics_reportsList saved analytics report definitions for the current personal or team scope.No findings

    Why it is in this group

    • The name "list_analytics_reports" says "list": a word for reading.
    Description, as the server wrote it
    List saved analytics report definitions for the current personal or team scope.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_brand_voicesList all brand voice profiles.No findings

    Why it is in this group

    • The name "list_brand_voices" says "list": a word for reading.
    Description, as the server wrote it
    List all brand voice profiles. Brand voices guide AI content generation with tone, personality, writing rules, and example posts.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_calendar_eventsList scheduled and published calendar events with optional date-range, status, platform, and pagination filters.No findings

    Why it is in this group

    • The name "list_calendar_events" says "list": a word for reading.
    Description, as the server wrote it
    List scheduled and published calendar events with optional date-range, status, platform, and pagination filters.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_connected_accountsList all connected social media accounts.No findings

    Why it is in this group

    • The name "list_connected_accounts" says "list": a word for reading.
    Description, as the server wrote it
    List all connected social media accounts. Pass team_id to see a team's accounts instead of your personal ones.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_connected_connectorsList all currently connected connectors with their status and health.No findings

    Why it is in this group

    • The name "list_connected_connectors" says "list": a word for reading.
    Description, as the server wrote it
    List all currently connected connectors with their status and health. Includes both legacy platform connections and new connector connections.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_connectorsList all available connectors in the SendIt platform.No findings

    Why it is in this group

    • The name "list_connectors" says "list": a word for reading.
    Description, as the server wrote it
    List all available connectors in the SendIt platform. Returns connectors organized by category: organic, paid_media, automation, workspace. Each connector includes its ID, name, status, auth strategy, and capabilities. Use this to discover what integrations are available before connecting.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_conversationsList unified inbox conversations across all connected channels.No findings

    Why it is in this group

    • The name "list_conversations" says "list": a word for reading.
    Description, as the server wrote it
    List unified inbox conversations across all connected channels. Aggregates comments, mentions, DMs, and messages from all organic and workspace connectors into a single inbox view.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_dead_letterList posts that failed all retry attempts and were moved to the dead letter queue.No findings

    Why it is in this group

    • The name "list_dead_letter" says "list": a word for reading.
    Description, as the server wrote it
    List posts that failed all retry attempts and were moved to the dead letter queue. Review and decide to requeue or discard them.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_inboxList comment threads on your published posts.No findings

    Why it is in this group

    • The name "list_inbox" says "list": a word for reading.
    Description, as the server wrote it
    List comment threads on your published posts. Returns threads from your social inbox, showing comments and replies from followers on your posts across all platforms.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_libraryList saved content from your library.No findings

    Why it is in this group

    • The name "list_library" says "list": a word for reading.
    Description, as the server wrote it
    List saved content from your library. Returns drafts, templates, and evergreen content.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_media_assetsList media library assets with filtering by collection, type, tags, search, and pagination.No findings

    Why it is in this group

    • The name "list_media_assets" says "list": a word for reading.
    Description, as the server wrote it
    List media library assets with filtering by collection, type, tags, search, and pagination.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_pending_approvalsList all scheduled posts that are pending approval.No findings

    Why it is in this group

    • The name "list_pending_approvals" says "list": a word for reading.
    Description, as the server wrote it
    List all scheduled posts that are pending approval. These posts won't be published until approved.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_projectsList imported product/codebase projects for social strategy and content generation.No findings

    Why it is in this group

    • The name "list_projects" says "list": a word for reading.
    Description, as the server wrote it
    List imported product/codebase projects for social strategy and content generation.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_recurring_seriesList recurring scheduled-post series and their recurrence metadata.No findings

    Why it is in this group

    • The name "list_recurring_series" says "list": a word for reading.
    Description, as the server wrote it
    List recurring scheduled-post series and their recurrence metadata.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_teamsList all teams you belong to.No findings

    Why it is in this group

    • The name "list_teams" says "list": a word for reading.
    Description, as the server wrote it
    List all teams you belong to. Returns team names, IDs, and your role. Use the returned team ID with the team_id parameter in other tools to operate in team context.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true
  • list_workflow_runsList recent runs for a workflow.No findings

    Why it is in this group

    • The name "list_workflow_runs" says "list": a word for reading.
    Description, as the server wrote it
    List recent runs for a workflow.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_workflowsList all automation workflows with their status and trigger info.No findings

    Why it is in this group

    • The name "list_workflows" says "list": a word for reading.
    Description, as the server wrote it
    List all automation workflows with their status and trigger info.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • validate_contentValidate content against platform requirements BEFORE publishing.No findings

    Why it is in this group

    • The name "validate_content" says "validate": a word for reading.
    Description, as the server wrote it
    Validate content against platform requirements BEFORE publishing. USE THIS WHEN: • Unsure if content will work on target platforms • Publishing to multiple platforms with different requirements • Want to catch errors before attempting publish Returns specific errors (e.g., 'TikTok requires video', 'Instagram needs media') and warnings (e.g., 'text close to character limit').

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
    • idempotentHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http sendit https://sendit.infiniteappsai.com/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__sendit__get_analytics",
      "mcp__sendit__list_teams",
      "mcp__sendit__list_connected_accounts",
      "mcp__sendit__get_tiktok_creator_info",
      "mcp__sendit__get_scheduled_posts",
      "mcp__sendit__get_platform_requirements",
      "mcp__sendit__validate_content",
      "mcp__sendit__get_upload_session",
      "mcp__sendit__get_producthunt_analytics",
      "mcp__sendit__connect_x",
      "mcp__sendit__connect_linkedin",
      "mcp__sendit__connect_linkedin-page",
      "mcp__sendit__connect_facebook",
      "mcp__sendit__connect_instagram",
      "mcp__sendit__connect_threads",
      "mcp__sendit__connect_bluesky",
      "mcp__sendit__connect_mastodon",
      "mcp__sendit__connect_nostr",
      "mcp__sendit__connect_youtube",
      "mcp__sendit__connect_tiktok",
      "mcp__sendit__connect_lemmy",
      "mcp__sendit__connect_discord",
      "mcp__sendit__connect_slack",
      "mcp__sendit__connect_telegram",
      "mcp__sendit__connect_pinterest",
      "mcp__sendit__connect_dribbble",
      "mcp__sendit__connect_devto",
      "mcp__sendit__connect_hashnode",
      "mcp__sendit__connect_gmb",
      "mcp__sendit__connect_whop",
      "mcp__sendit__connect_producthunt",
      "mcp__sendit__list_library",
      "mcp__sendit__get_library_item",
      "mcp__sendit__list_dead_letter",
      "mcp__sendit__list_brand_voices",
      "mcp__sendit__list_pending_approvals",
      "mcp__sendit__list_inbox",
      "mcp__sendit__get_best_times",
      "mcp__sendit__get_audit_log",
      "mcp__sendit__check_ai_media_status",
      "mcp__sendit__get_platform_settings_schema",
      "mcp__sendit__list_connectors",
      "mcp__sendit__get_connector_capabilities",
      "mcp__sendit__list_connected_connectors",
      "mcp__sendit__get_connector_health",
      "mcp__sendit__list_ad_accounts",
      "mcp__sendit__list_ad_campaigns",
      "mcp__sendit__get_ad_performance",
      "mcp__sendit__get_unified_ad_report",
      "mcp__sendit__list_agents",
      "mcp__sendit__get_agent_run",
      "mcp__sendit__list_agent_runs",
      "mcp__sendit__get_agent_policies",
      "mcp__sendit__list_workflows",
      "mcp__sendit__list_workflow_runs",
      "mcp__sendit__get_workflow_run",
      "mcp__sendit__get_unified_analytics",
      "mcp__sendit__get_anomaly_alerts",
      "mcp__sendit__get_benchmark_comparison",
      "mcp__sendit__get_post_analytics",
      "mcp__sendit__list_analytics_reports",
      "mcp__sendit__list_conversations",
      "mcp__sendit__get_conversation",
      "mcp__sendit__get_inbox_summary",
      "mcp__sendit__autopilot_get_progress",
      "mcp__sendit__autopilot_list_goals",
      "mcp__sendit__list_projects",
      "mcp__sendit__get_project_analysis",
      "mcp__sendit__get_scheduled_post",
      "mcp__sendit__list_calendar_events",
      "mcp__sendit__list_recurring_series",
      "mcp__sendit__get_calendar_gaps",
      "mcp__sendit__get_calendar_recommendations",
      "mcp__sendit__get_approval_comments",
      "mcp__sendit__list_media_assets"
    ],
    "ask": [
      "mcp__sendit__publish_content",
      "mcp__sendit__schedule_content",
      "mcp__sendit__edit_post",
      "mcp__sendit__upload_media",
      "mcp__sendit__create_upload_session",
      "mcp__sendit__bulk_schedule",
      "mcp__sendit__preview_content",
      "mcp__sendit__save_to_library",
      "mcp__sendit__update_library_item",
      "mcp__sendit__trigger_scheduled_post",
      "mcp__sendit__requeue_dead_letter",
      "mcp__sendit__create_brand_voice",
      "mcp__sendit__set_default_brand_voice",
      "mcp__sendit__approve_post",
      "mcp__sendit__reject_post",
      "mcp__sendit__reply_to_comment",
      "mcp__sendit__score_content",
      "mcp__sendit__generate_ai_media",
      "mcp__sendit__generate_content",
      "mcp__sendit__create_library_item",
      "mcp__sendit__draft_reply",
      "mcp__sendit__summarize_mentions",
      "mcp__sendit__generate_post_bundle",
      "mcp__sendit__critique_post",
      "mcp__sendit__connect_platform",
      "mcp__sendit__connect_connector",
      "mcp__sendit__execute_connector_operation",
      "mcp__sendit__update_ad_campaign",
      "mcp__sendit__repurpose_url",
      "mcp__sendit__invoke_agent",
      "mcp__sendit__update_agent_policy",
      "mcp__sendit__create_workflow",
      "mcp__sendit__update_workflow",
      "mcp__sendit__trigger_workflow",
      "mcp__sendit__get_attribution_report",
      "mcp__sendit__run_analytics_report",
      "mcp__sendit__create_scheduled_report",
      "mcp__sendit__reply_to_conversation",
      "mcp__sendit__update_conversation",
      "mcp__sendit__escalate_to_support",
      "mcp__sendit__autopilot_set_goal",
      "mcp__sendit__autopilot_generate_plan",
      "mcp__sendit__autopilot_approve_plan",
      "mcp__sendit__autopilot_execute_plan",
      "mcp__sendit__create_project",
      "mcp__sendit__import_project_source",
      "mcp__sendit__analyze_project",
      "mcp__sendit__generate_project_strategy",
      "mcp__sendit__request_project_content",
      "mcp__sendit__save_project_content_to_library",
      "mcp__sendit__schedule_content_advanced",
      "mcp__sendit__edit_scheduled_post",
      "mcp__sendit__retry_scheduled_post",
      "mcp__sendit__duplicate_scheduled_post",
      "mcp__sendit__suggest_next_schedule_time",
      "mcp__sendit__suggest_queue_slots",
      "mcp__sendit__schedule_multilang_content",
      "mcp__sendit__update_calendar_event",
      "mcp__sendit__bulk_update_calendar_events",
      "mcp__sendit__update_recurring_series"
    ],
    "deny": [
      "mcp__sendit__delete_scheduled_post",
      "mcp__sendit__delete_post",
      "mcp__sendit__create_goal",
      "mcp__sendit__complete_goal",
      "mcp__sendit__upvote_product",
      "mcp__sendit__delete_library_item",
      "mcp__sendit__publish_from_library",
      "mcp__sendit__publish_ai",
      "mcp__sendit__disconnect_connector",
      "mcp__sendit__create_ad_campaign",
      "mcp__sendit__create_ad_creative",
      "mcp__sendit__delete_workflow",
      "mcp__sendit__cancel_recurring_series"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as sendit. Review it before you use it.