이 MCP로 할 수 있는 일
Plans, generates, approves, schedules, publishes, and analyzes social media content across LinkedIn, Instagram, Threads, TikTok, and X.
도구
입력 스키마
{'type': 'object', 'required': ['projectId'], 'properties': {'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'projectId': {'type': 'string'}}}
입력 스키마
{'type': 'object', 'required': ['postId'], 'properties': {'postId': {'type': 'string', 'description': 'The scheduled post ID to approve'}, 'comment': {'type': 'string', 'description': 'Optional approval comment'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'properties': {'action': {'enum': ['approve', 'reject'], 'type': 'string', 'description': 'Action for individual item (default: approve)'}, 'itemId': {'type': 'string', 'description': 'Individual item ID to approve or reject'}, 'planId': {'type': 'string', 'description': 'Plan ID to approve (approves all pending items)'}, 'feedback': {'type': 'string', 'description': 'Feedback when rejecting an item'}}}
입력 스키마
{'type': 'object', 'required': ['planId'], 'properties': {'planId': {'type': 'string', 'description': 'Plan ID to execute'}}}
입력 스키마
{'type': 'object', 'required': ['goalId'], 'properties': {'goalId': {'type': 'string', 'description': 'The autopilot goal ID to generate a plan for'}, 'weekNumber': {'type': 'number', 'description': 'Specific week number to generate (optional, auto-increments)'}}}
입력 스키마
{'type': 'object', 'required': ['goalId'], 'properties': {'goalId': {'type': 'string', 'description': 'Goal ID to check progress for'}}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'required': ['goalText', 'platforms'], 'properties': {'goalText': {'type': 'string', 'description': 'The social media goal to achieve'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}, 'description': "Target platforms (e.g. ['twitter', 'linkedin', 'instagram'])"}, 'durationWeeks': {'type': 'number', 'description': 'How many weeks to run the autopilot (1-52, default 4)'}, 'targetMetrics': {'type': 'object', 'description': 'Target metrics (e.g. { followers: 1000, engagement_rate: 0.05 })', 'additionalProperties': True}}}
입력 스키마
{'type': 'object', 'required': ['csv_content'], 'properties': {'filename': {'type': 'string', 'description': 'Optional filename for tracking (default: upload.csv)'}, 'csv_content': {'type': 'string', 'description': 'CSV content as a string (include header row)'}, 'skip_errors': {'type': 'boolean', 'description': 'If true, skip rows with errors and schedule valid rows only'}, 'validate_only': {'type': 'boolean', 'description': 'If true, only validate without scheduling. Default: true for safety.'}}}
입력 스키마
{'type': 'object', 'required': ['ids', 'action'], 'properties': {'ids': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 200, 'minItems': 1, 'description': 'Calendar event IDs or scheduled post IDs to update.'}, 'shift': {'type': 'object', 'required': ['amount', 'unit'], 'properties': {'unit': {'enum': ['minutes', 'hours', 'days'], 'type': 'string', 'description': 'Shift unit.'}, 'amount': {'type': 'number', 'description': 'Shift magnitude.'}}}, 'action': {'enum': ['shift', 'set_time', 'move_to_queue', 'cancel', 'assign'], 'type': 'string', 'description': 'Bulk action to apply.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for queue-based moves.'}, 'applyScope': {'enum': ['single', 'recurrence_group'], 'type': 'string', 'description': 'Whether to affect only the selected IDs or their recurrence groups.'}, 'assigneeId': {'type': 'string', 'description': "Required for the 'assign' action."}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': "Replacement ISO 8601 time for the 'set_time' action."}, 'deltaMinutes': {'type': 'number', 'description': 'Compatibility shift amount in minutes.'}, 'scheduledTime': {'type': 'string', 'format': 'date-time', 'description': 'Compatibility alias for scheduledAt.'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for seriesId.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'seriesId': {'type': 'string', 'description': 'Recurring series parent scheduled post ID.'}}}
입력 스키마
{'type': 'object', 'required': ['job_id'], 'properties': {'job_id': {'type': 'string', 'description': 'The AI media job ID to check'}}}
입력 스키마
{'type': 'object', 'required': ['goalId', 'completed'], 'properties': {'goalId': {'type': 'string', 'description': 'The ID of the goal to update'}, 'completed': {'type': 'boolean', 'description': 'Set to true to mark complete, false to mark incomplete'}}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'required': ['connectorId'], 'properties': {'apiKey': {'type': 'string', 'description': 'API key (for api_key auth strategy connectors)'}, 'botToken': {'type': 'string', 'description': 'Bot token (for bot_token auth strategy connectors like Telegram, Discord)'}, 'webhookUrl': {'type': 'string', 'description': 'Webhook URL (for webhook auth strategy connectors)'}, 'connectorId': {'type': 'string', 'description': 'Connector ID to connect'}}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'required': ['platform'], 'properties': {'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Platform ID to connect'}}}
출력 스키마
{'type': 'object', 'properties': {'note': {'type': 'string'}, 'setup': {'type': 'object', 'additionalProperties': True}, 'authUrl': {'type': 'string'}, 'isError': {'type': 'boolean'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'username': {'type': 'string'}, 'connected': {'type': 'boolean'}, 'errorMessage': {'type': 'string'}, 'alreadyConnected': {'type': 'boolean'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'required': ['adAccountId', 'name', 'objective', 'budgetType', 'budgetAmount'], 'properties': {'name': {'type': 'string', 'description': 'Campaign name'}, 'endDate': {'type': 'string', 'format': 'date-time', 'description': 'Campaign end date (optional)'}, 'objective': {'enum': ['awareness', 'traffic', 'engagement', 'leads', 'conversions', 'app_installs', 'video_views', 'reach'], 'type': 'string', 'description': 'Campaign objective'}, 'startDate': {'type': 'string', 'format': 'date-time', 'description': 'Campaign start date (ISO 8601)'}, 'targeting': {'type': 'object', 'description': 'Targeting configuration (platform-specific)', 'additionalProperties': True}, 'budgetType': {'enum': ['daily', 'lifetime'], 'type': 'string', 'description': 'Budget type'}, 'adAccountId': {'type': 'string', 'description': 'Ad account ID'}, 'budgetAmount': {'type': 'number', 'description': 'Budget amount in account currency'}}}
입력 스키마
{'type': 'object', 'required': ['campaignId', 'creativeType', 'headline', 'body'], 'properties': {'body': {'type': 'string', 'description': 'Ad body text'}, 'name': {'type': 'string', 'description': 'Creative name'}, 'adSetId': {'type': 'string', 'description': 'Ad set ID (optional)'}, 'headline': {'type': 'string', 'description': 'Ad headline'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Media URLs for the creative'}, 'campaignId': {'type': 'string', 'description': 'Campaign ID'}, 'landingUrl': {'type': 'string', 'description': 'Landing page URL'}, 'callToAction': {'enum': ['learn_more', 'shop_now', 'sign_up', 'book_now', 'contact_us', 'download', 'get_offer', 'subscribe'], 'type': 'string', 'description': 'Call to action button text'}, 'creativeType': {'enum': ['image', 'video', 'carousel', 'text', 'native'], 'type': 'string', 'description': 'Creative type'}}}
입력 스키마
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Name for this brand voice profile'}, 'tone': {'type': 'string', 'description': 'Overall tone (e.g., professional, casual, energetic)'}, 'doRules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Things the brand voice SHOULD do'}, 'dontRules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Things the brand voice should NEVER do'}, 'isDefault': {'type': 'boolean', 'description': 'Set as the default brand voice'}, 'keyPhrases': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Key phrases to incorporate'}, 'bannedWords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Words to never use'}, 'personality': {'type': 'string', 'description': 'Brand personality description'}, 'examplePosts': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Example posts in this voice'}, 'writingStyle': {'type': 'string', 'description': 'Writing style guidelines'}, 'approvedHashtags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Preferred hashtags'}}}
입력 스키마
{'type': 'object', 'required': ['title'], 'properties': {'dueAt': {'type': 'string', 'format': 'date-time', 'description': 'Optional due date in ISO 8601 format'}, 'title': {'type': 'string', 'description': 'Goal title (max 280 characters)'}}}
입력 스키마
{'type': 'object', 'required': ['title', 'text'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags for organization'}, 'text': {'type': 'string', 'description': 'The content text/caption'}, 'type': {'enum': ['draft', 'template', 'evergreen'], 'type': 'string', 'description': 'Content type (default: draft)'}, 'title': {'type': 'string', 'description': 'Title for the saved content'}, 'category': {'type': 'string', 'description': 'Category for organization'}, 'mediaUrl': {'type': 'string', 'description': 'Media URL (image or video)'}, 'targetPlatforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Which platforms this content is designed for'}, 'evergreenEnabled': {'type': 'boolean', 'description': 'Enable evergreen auto-republishing'}, 'evergreenIntervalDays': {'type': 'number', 'description': 'Days between evergreen republishes'}}}
입력 스키마
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'string'}, {'type': 'object', 'properties': {'url': {'type': 'string'}, 'title': {'type': 'string'}, 'fileName': {'type': 'string'}, 'mimeType': {'type': 'string'}}, 'additionalProperties': True}]}}, 'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'category': {'type': 'string'}, 'description': {'type': 'string'}}}
입력 스키마
{'type': 'object', 'required': ['name', 'reportType', 'schedule'], 'properties': {'name': {'type': 'string', 'description': 'Report name'}, 'schedule': {'enum': ['daily', 'weekly', 'monthly'], 'type': 'string', 'description': 'Report frequency'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Platforms to include'}, 'reportType': {'enum': ['performance_overview', 'channel_comparison', 'content_analysis', 'ad_performance', 'attribution', 'executive_summary'], 'type': 'string', 'description': 'Report type'}, 'deliveryMethod': {'enum': ['email', 'slack', 'webhook'], 'type': 'string', 'description': 'How to deliver the report'}, 'deliveryTarget': {'type': 'string', 'description': 'Email address, Slack channel, or webhook URL'}}}
입력 스키마
{'type': 'object', 'properties': {'mediaType': {'enum': ['image', 'video'], 'type': 'string', 'description': 'Optional hint for expected media type'}}}
출력 스키마
{'type': 'object', 'properties': {'files': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'status': {'type': 'string'}, 'isError': {'type': 'boolean'}, 'success': {'type': 'boolean'}, 'mediaUrl': {'type': 'string'}, 'expiresAt': {'type': 'string'}, 'mediaType': {'type': 'string'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}}, 'sessionId': {'type': 'string'}, 'uploadUrl': {'type': 'string'}, 'mediaItems': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'errorMessage': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['name', 'triggerType', 'triggerConfig', 'steps'], 'properties': {'name': {'type': 'string', 'description': 'Workflow name'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'name', 'config'], 'properties': {'name': {'type': 'string'}, 'type': {'enum': ['connector_action', 'connector_operation', 'agent_invoke', 'condition', 'delay', 'http_request', 'transform', 'notify'], 'type': 'string'}, 'config': {'type': 'object', 'additionalProperties': True}, 'onError': {'enum': ['stop', 'skip', 'retry'], 'type': 'string'}}}, 'description': 'Workflow steps in execution order'}, 'active': {'type': 'boolean', 'description': 'Activate workflow immediately (default: false)'}, 'description': {'type': 'string', 'description': 'Workflow description'}, 'triggerType': {'enum': ['manual', 'schedule', 'event', 'webhook', 'connector_event'], 'type': 'string', 'description': 'Trigger type'}, 'triggerConfig': {'type': 'object', 'description': 'Trigger configuration (cron expression, event type, etc.)', 'additionalProperties': True}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'text'], 'properties': {'text': {'type': 'string', 'description': 'Post text to critique (required)'}, 'mediaUrl': {'type': 'string', 'description': 'Optional media URL for media score'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Target platforms for scoring context (required)'}}}
입력 스키마
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'The content library item ID to delete'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'required': ['platform', 'postId'], 'properties': {'postId': {'type': 'string', 'description': 'Post identifier: database ID, platform post ID, or post URL'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'platform': {'enum': ['x', 'facebook', 'linkedin', 'linkedin-page', 'threads', 'youtube', 'pinterest', 'bluesky', 'mastodon', 'telegram'], 'type': 'string', 'description': 'Platform to delete from'}}}
출력 스키마
{'type': 'object', 'properties': {'error': {'type': 'string'}, 'message': {'type': 'string'}, 'success': {'type': 'boolean'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['scheduleId'], 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'scheduleId': {'type': 'string', 'description': 'Schedule ID to delete'}}}
출력 스키마
{'type': 'object', 'properties': {'error': {'type': 'string'}, 'message': {'type': 'string'}, 'success': {'type': 'boolean'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['workflowId'], 'properties': {'workflowId': {'type': 'string', 'description': 'Workflow ID'}}}
입력 스키마
{'type': 'object', 'required': ['connectorId'], 'properties': {'connectorId': {'type': 'string', 'description': 'Connector ID to disconnect'}, 'credentialId': {'type': 'string', 'description': 'Specific credential ID to revoke (optional)'}}}
입력 스키마
{'type': 'object', 'required': ['mention_id'], 'properties': {'tone': {'type': 'string', 'description': 'Reply tone: friendly, professional, casual'}, 'max_length': {'type': 'number', 'description': 'Maximum reply length in characters (default: 280)'}, 'mention_id': {'type': 'string', 'description': 'The ID of the mention to reply to (required)'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'postId': {'type': 'string', 'description': 'Scheduled post ID.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'scheduleId': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': 'Optional ISO 8601 time for the duplicated post.'}}}
입력 스키마
{'type': 'object', 'required': ['postId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'New tags (YouTube only)'}, 'text': {'type': 'string', 'description': 'New text/caption/commentary for the post'}, 'title': {'type': 'string', 'description': 'New title (YouTube only)'}, 'postId': {'type': 'string', 'description': 'Published post ID (database ID returned when the post was published)'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'description': {'type': 'string', 'description': 'New description (YouTube only)'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'text': {'type': 'string', 'description': 'Updated post text.'}, 'postId': {'type': 'string', 'description': 'Scheduled post ID.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'mediaUrl': {'type': 'string', 'description': 'Replacement public HTTPS media URL, or an empty value to remove media.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for the updated schedule.'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Replacement public HTTPS media URLs.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional replacement platform list.'}, 'applyScope': {'enum': ['single', 'this_and_future'], 'type': 'string', 'description': 'Whether to apply the edit to only this post or this and future occurrences.'}, 'publishNow': {'type': 'boolean', 'description': 'If true, publish immediately after applying the edit.'}, 'scheduleId': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': 'Compatibility alias for scheduledTime.'}, 'firstComment': {'type': 'string', 'description': 'Optional replacement Instagram first comment.'}, 'scheduledTime': {'type': 'string', 'format': 'date-time', 'description': 'Updated ISO 8601 scheduled publish time.'}, 'pinterestBoardId': {'type': 'string', 'description': 'Optional replacement Pinterest board ID.'}}}
입력 스키마
{'type': 'object', 'required': ['conversationId', 'targetConnector'], 'properties': {'note': {'type': 'string', 'description': 'Internal note for the support team'}, 'priority': {'enum': ['low', 'normal', 'high', 'urgent'], 'type': 'string'}, 'conversationId': {'type': 'string', 'description': 'Conversation to escalate'}, 'targetConnector': {'enum': ['zendesk', 'intercom', 'hubspot', 'salesforce'], 'type': 'string', 'description': 'Support platform to escalate to'}}}
입력 스키마
{'type': 'object', 'required': ['connectorId', 'operation'], 'properties': {'data': {'type': 'object', 'description': 'Operation-specific input data', 'additionalProperties': True}, 'operation': {'type': 'string', 'description': "Operation name (e.g., 'publish', 'read_posts', 'campaigns.list')"}, 'connectorId': {'type': 'string', 'description': 'Connector ID'}, 'idempotencyKey': {'type': 'string', 'description': 'Idempotency key to prevent duplicate operations (optional)'}}}
입력 스키마
{'type': 'object', 'required': ['provider', 'prompt'], 'properties': {'prompt': {'type': 'string', 'description': 'Creative prompt for generation'}, 'provider': {'enum': ['heygen-mcp', 'codex-oauth-image'], 'type': 'string', 'description': 'AI media provider'}, 'media_type': {'enum': ['image', 'video'], 'type': 'string', 'description': 'Type of media to generate (default: video)'}, 'parameters': {'type': 'object', 'description': 'Provider-specific parameters (e.g. duration, resolution, style, aspectRatio)'}}}
입력 스키마
{'type': 'object', 'required': ['platforms'], 'properties': {'prompt': {'type': 'string', 'description': 'Creative prompt or topic for content generation'}, 'hashtags': {'enum': ['on', 'off', 'platform_auto'], 'type': 'string', 'description': 'Hashtag mode'}, 'mediaUrl': {'type': 'string', 'description': 'Media URL to analyze for content generation'}, 'strictAi': {'type': 'boolean', 'description': 'If true, fail instead of using fallback templates when AI is unavailable'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Target platforms to generate content for'}, 'generation': {'type': 'object', 'properties': {'tone': {'enum': ['professional', 'casual', 'energetic', 'informative'], 'type': 'string', 'description': 'Content tone'}, 'style': {'enum': ['storytelling', 'promotional', 'educational', 'entertaining'], 'type': 'string', 'description': 'Content style'}, 'callToAction': {'type': 'string', 'description': 'Call to action to include'}}, 'description': 'Generation parameters for tone, style, and CTA'}, 'contentOverrides': {'type': 'object', 'properties': {'title': {'type': 'string', 'description': 'Override generated title'}, 'caption': {'type': 'string', 'description': 'Override generated caption'}, 'hashtags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Override generated hashtags'}}, 'description': 'Manual overrides for generated content'}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'prompt'], 'properties': {'prompt': {'type': 'string', 'description': 'Content topic or instructions (required)'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Target platforms (required)'}, 'generation': {'type': 'object', 'properties': {'tone': {'type': 'string'}, 'style': {'type': 'string'}, 'callToAction': {'type': 'string'}}, 'description': 'Generation parameters (tone, style, CTA)'}, 'variant_count': {'type': 'number', 'description': 'Number of variants to generate (1-5, default: 3)'}}}
입력 스키마
{'type': 'object', 'required': ['projectId'], 'properties': {'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'projectId': {'type': 'string'}}}
입력 스키마
{'type': 'object', 'required': ['entityType', 'entityId'], 'properties': {'endDate': {'type': 'string', 'format': 'date', 'description': 'End date (YYYY-MM-DD)'}, 'metrics': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Specific metrics to retrieve (optional, returns all by default)'}, 'entityId': {'type': 'string', 'description': 'Entity ID'}, 'breakdown': {'enum': ['none', 'day', 'week', 'month', 'platform'], 'type': 'string', 'description': 'Breakdown dimension'}, 'startDate': {'type': 'string', 'format': 'date', 'description': 'Start date (YYYY-MM-DD)'}, 'entityType': {'enum': ['account', 'campaign', 'ad_set', 'creative'], 'type': 'string', 'description': 'Entity type to get metrics for'}}}
입력 스키마
{'type': 'object', 'required': ['agentId'], 'properties': {'agentId': {'enum': ['strategy_planner', 'content_ideation', 'multi_format_composer', 'creative_asset', 'variant_repurposer', 'calendar_optimizer', 'listening_analyst', 'inbox_reply', 'campaign_builder', 'budget_optimizer', 'experimentation', 'executive_insights'], 'type': 'string', 'description': 'Agent to get policies for'}}}
입력 스키마
{'type': 'object', 'required': ['runId'], 'properties': {'runId': {'type': 'string', 'description': 'Agent run ID'}}}
입력 스키마
{'type': 'object', 'required': ['platform'], 'properties': {'limit': {'type': 'number', 'maximum': 1000, 'minimum': 1, 'description': 'Optional maximum posts to return. Facebook feed scanning is capped at 1,000 posts.'}, 'endDate': {'type': 'string', 'format': 'date', 'description': 'Optional end date (YYYY-MM-DD).'}, 'team_id': {'type': 'string', 'description': 'Team ID to get team analytics. If omitted, gets personal analytics.'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Platform to get analytics for'}, 'startDate': {'type': 'string', 'format': 'date', 'description': 'Optional start date (YYYY-MM-DD). For Facebook, omit this to scan up to 2 years of Page feed history.'}}}
출력 스키마
{'type': 'object', 'properties': {'isError': {'type': 'boolean'}, 'rawText': {'type': 'string'}, 'success': {'type': 'boolean'}, 'summary': {'type': 'object', 'additionalProperties': True}, 'warning': {'type': 'string'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'topPosts': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'dateRange': {'type': 'object', 'properties': {'to': {'type': 'string'}, 'from': {'type': 'string'}}, 'additionalProperties': True}, 'errorMessage': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20)'}, 'severity': {'enum': ['info', 'warning', 'critical'], 'type': 'string', 'description': 'Filter by severity (optional)'}, 'dismissed': {'type': 'boolean', 'description': 'Include dismissed alerts'}}}
입력 스키마
{'type': 'object', 'required': ['team_id'], 'properties': {'postId': {'type': 'string', 'description': 'Scheduled post ID to load comments for.'}, 'post_id': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'team_id': {'type': 'string', 'description': 'Team ID is required because approval comments are only available in team scope.'}}}
입력 스키마
{'type': 'object', 'required': ['model', 'startDate', 'endDate'], 'properties': {'model': {'enum': ['first_touch', 'last_touch', 'linear', 'time_decay', 'position_based', 'data_driven'], 'type': 'string', 'description': 'Attribution model'}, 'endDate': {'type': 'string', 'format': 'date'}, 'startDate': {'type': 'string', 'format': 'date'}, 'conversionType': {'type': 'string', 'description': 'Filter by conversion type (optional)'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max entries to return (default 50, max 200)'}, 'action': {'type': 'string', 'description': "Filter by action (e.g. 'post.published', 'account.connected')"}, 'end_date': {'type': 'string', 'format': 'date', 'description': 'End date (YYYY-MM-DD)'}, 'start_date': {'type': 'string', 'format': 'date', 'description': 'Start date (YYYY-MM-DD)'}, 'resource_type': {'type': 'string', 'description': "Filter by resource type (e.g. 'post', 'account', 'keyword')"}}}
입력 스키마
{'type': 'object', 'required': ['platform', 'metric'], 'properties': {'metric': {'enum': ['engagement_rate', 'follower_growth', 'click_through_rate', 'conversion_rate', 'cost_per_click'], 'type': 'string', 'description': 'Metric to compare'}, 'industry': {'type': 'string', 'description': 'Industry vertical for comparison'}, 'platform': {'type': 'string', 'description': 'Platform to benchmark'}}}
입력 스키마
{'type': 'object', 'required': ['platform'], 'properties': {'limit': {'type': 'number', 'description': 'Number of time slots to return (default 5, max 20)'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Platform to get best times for'}}}
입력 스키마
{'type': 'object', 'required': ['start', 'end'], 'properties': {'end': {'type': 'string', 'format': 'date', 'description': 'Range end date in YYYY-MM-DD format.'}, 'start': {'type': 'string', 'format': 'date', 'description': 'Range start date in YYYY-MM-DD format.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional platform subset to inspect.'}}}
입력 스키마
{'type': 'object', 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for the recommendation labels.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional platform subset to optimize for.'}}}
입력 스키마
{'type': 'object', 'required': ['connectorId'], 'properties': {'connectorId': {'type': 'string', 'description': "Connector ID (e.g., 'linkedin', 'meta_ads', 'slack')"}}}
입력 스키마
{'type': 'object', 'required': ['connectorId'], 'properties': {'connectorId': {'type': 'string', 'description': 'Connector ID'}}}
입력 스키마
{'type': 'object', 'required': ['conversationId'], 'properties': {'conversationId': {'type': 'string', 'description': 'Conversation ID'}}}
입력 스키마
{'type': 'object', 'properties': {'timeRange': {'enum': ['24h', '7d', '30d'], 'type': 'string', 'description': 'Time range for summary metrics'}}}
입력 스키마
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'The content library item ID'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'required': ['platform'], 'properties': {'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Platform to get requirements for'}}}
출력 스키마
{'type': 'object', 'properties': {'name': {'type': 'string'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'textLimit': {'type': 'number'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['platform'], 'properties': {'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Platform ID to inspect'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'postId': {'type': 'string', 'description': 'Published post ID to inspect.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'publishedPostId': {'type': 'string', 'description': 'Compatibility alias for postId.'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum products to fetch (default 20)'}, 'username': {'type': 'string', 'description': 'Product Hunt username (optional, defaults to connected account)'}}}
입력 스키마
{'type': 'object', 'required': ['projectId'], 'properties': {'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'projectId': {'type': 'string'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'postId': {'type': 'string', 'description': 'Scheduled post ID.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'scheduleId': {'type': 'string', 'description': 'Compatibility alias for postId.'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'maximum': 200, 'minimum': 1, 'description': 'Optional forward-compatible maximum number of scheduled posts to return.'}, 'cursor': {'type': 'string', 'description': 'Optional forward-compatible pagination cursor from a previous scheduled-post listing response.'}, 'status': {'enum': ['pending', 'publishing', 'draft_delivered', 'published', 'failed', 'cancelled'], 'type': 'string', 'description': 'Optional forward-compatible status filter. Legacy handlers may continue returning pending posts only.'}, 'endDate': {'type': 'string', 'format': 'date', 'description': 'Optional forward-compatible upper date bound in YYYY-MM-DD format.'}, 'team_id': {'type': 'string', 'description': "Team ID to list team's scheduled posts. If omitted, lists personal posts."}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Filter by platform (optional)'}, 'upcoming': {'type': 'boolean', 'description': 'Optional forward-compatible flag to prefer upcoming scheduled posts.'}, 'startDate': {'type': 'string', 'format': 'date', 'description': 'Optional forward-compatible lower date bound in YYYY-MM-DD format.'}}}
출력 스키마
{'type': 'object', 'properties': {'posts': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'isError': {'type': 'boolean'}, 'success': {'type': 'boolean'}, 'postCount': {'type': 'number'}, 'schedules': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'errorMessage': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to fetch the team TikTok account. If omitted, uses the personal TikTok account.'}}}
입력 스키마
{'type': 'object', 'required': ['startDate', 'endDate'], 'properties': {'endDate': {'type': 'string', 'format': 'date', 'description': 'End date'}, 'groupBy': {'enum': ['platform', 'campaign', 'objective', 'day'], 'type': 'string', 'description': 'Group results by dimension'}, 'startDate': {'type': 'string', 'format': 'date', 'description': 'Start date'}}}
입력 스키마
{'type': 'object', 'required': ['startDate', 'endDate'], 'properties': {'endDate': {'type': 'string', 'format': 'date', 'description': 'End date (YYYY-MM-DD)'}, 'breakdown': {'enum': ['none', 'day', 'week', 'month', 'platform', 'content_type'], 'type': 'string', 'description': 'Breakdown dimension'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Filter to specific platforms (optional, all if omitted)'}, 'startDate': {'type': 'string', 'format': 'date', 'description': 'Start date (YYYY-MM-DD)'}, 'includePaid': {'type': 'boolean', 'description': 'Include paid metrics (default true)'}, 'includeOrganic': {'type': 'boolean', 'description': 'Include organic metrics (default true)'}}}
입력 스키마
{'type': 'object', 'required': ['sessionId'], 'properties': {'sessionId': {'type': 'string', 'description': 'The session ID returned from create_upload_session'}}}
출력 스키마
{'type': 'object', 'properties': {'files': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'status': {'type': 'string'}, 'isError': {'type': 'boolean'}, 'success': {'type': 'boolean'}, 'mediaUrl': {'type': 'string'}, 'expiresAt': {'type': 'string'}, 'mediaType': {'type': 'string'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}}, 'sessionId': {'type': 'string'}, 'uploadUrl': {'type': 'string'}, 'mediaItems': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'errorMessage': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['runId'], 'properties': {'runId': {'type': 'string', 'description': 'Workflow run ID'}}}
입력 스키마
{'type': 'object', 'required': ['projectId', 'sources'], 'properties': {'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'string'}, {'type': 'object', 'additionalProperties': True}]}}, 'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'projectId': {'type': 'string'}}}
입력 스키마
{'type': 'object', 'required': ['agentId', 'input'], 'properties': {'input': {'type': 'object', 'description': 'Agent-specific input parameters', 'additionalProperties': True}, 'agentId': {'enum': ['strategy_planner', 'content_ideation', 'multi_format_composer', 'creative_asset', 'variant_repurposer', 'calendar_optimizer', 'listening_analyst', 'inbox_reply', 'campaign_builder', 'budget_optimizer', 'experimentation', 'executive_insights'], 'type': 'string', 'description': 'Agent to invoke'}, 'context': {'type': 'object', 'description': 'Additional context (brand voice ID, date range, etc.)', 'additionalProperties': True}}}
입력 스키마
{'type': 'object', 'properties': {'platform': {'type': 'string', 'description': "Filter by ad platform (e.g., 'meta_ads', 'google_ads_search')"}}}
입력 스키마
{'type': 'object', 'required': ['adAccountId'], 'properties': {'status': {'enum': ['draft', 'active', 'paused', 'completed', 'archived'], 'type': 'string', 'description': 'Filter by status'}, 'adAccountId': {'type': 'string', 'description': 'Ad account ID'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum results to return (default 20)'}, 'status': {'enum': ['pending', 'running', 'completed', 'failed'], 'type': 'string', 'description': 'Filter by status (optional)'}, 'agentId': {'enum': ['strategy_planner', 'content_ideation', 'multi_format_composer', 'creative_asset', 'variant_repurposer', 'calendar_optimizer', 'listening_analyst', 'inbox_reply', 'campaign_builder', 'budget_optimizer', 'experimentation', 'executive_insights'], 'type': 'string', 'description': 'Filter by agent (optional)'}}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'properties': {'end': {'type': 'string', 'description': 'Optional range end. ISO 8601 date or date-time.'}, 'limit': {'type': 'number', 'maximum': 200, 'minimum': 1, 'description': 'Maximum number of results to return.'}, 'start': {'type': 'string', 'description': 'Optional range start. ISO 8601 date or date-time.'}, 'cursor': {'type': 'string', 'description': 'Opaque pagination cursor from a previous response.'}, 'status': {'enum': ['draft', 'scheduled', 'queued', 'pending', 'publishing', 'draft_delivered', 'published', 'failed', 'cancelled'], 'type': 'string', 'description': 'Optional event status filter.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'upcoming': {'type': 'boolean', 'description': 'If true, return only upcoming events.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional platform filter.'}}}
입력 스키마
{'type': 'object', 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to list team accounts. Get available teams with list_teams. If omitted, lists personal accounts.'}}}
출력 스키마
{'type': 'object', 'properties': {'isError': {'type': 'boolean'}, 'accounts': {'type': 'array', 'items': {'type': 'object', 'properties': {'authUrl': {'type': 'string'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'username': {'type': 'string'}, 'connected': {'type': 'boolean'}, 'expiryWarning': {'type': 'boolean'}, 'platformUsername': {'type': 'string'}}, 'additionalProperties': True}}, 'errorMessage': {'type': 'string'}, 'connectedCount': {'type': 'number'}, 'totalPlatforms': {'type': 'number'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'category': {'enum': ['organic', 'paid_media', 'automation', 'workspace'], 'type': 'string', 'description': 'Filter by category (optional)'}}}
입력 스키마
{'type': 'object', 'properties': {'status': {'enum': ['available', 'beta', 'coming_soon'], 'type': 'string', 'description': 'Filter by availability status (optional)'}, 'category': {'enum': ['organic', 'paid_media', 'automation', 'workspace'], 'type': 'string', 'description': 'Filter by connector category (optional)'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20)'}, 'status': {'enum': ['open', 'closed', 'snoozed', 'archived'], 'type': 'string', 'description': 'Filter by conversation status'}, 'priority': {'enum': ['low', 'normal', 'high', 'urgent'], 'type': 'string', 'description': 'Filter by priority'}, 'sentiment': {'enum': ['positive', 'neutral', 'negative', 'mixed'], 'type': 'string', 'description': 'Filter by sentiment'}, 'assignedTo': {'type': 'string', 'description': 'Filter by assignee'}, 'connectorId': {'type': 'string', 'description': 'Filter by connector/platform'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum items to return (default 50)'}, 'status': {'enum': ['dead', 'requeued', 'discarded'], 'type': 'string', 'description': 'Filter by status (default: dead)'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max threads to return (default 20)'}, 'status': {'enum': ['open', 'replied', 'closed', 'archived'], 'type': 'string', 'description': 'Filter by thread status (optional)'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string', 'description': 'Filter by platform (optional)'}}}
입력 스키마
{'type': 'object', 'properties': {'type': {'enum': ['draft', 'template', 'evergreen'], 'type': 'string', 'description': 'Filter by content type'}, 'limit': {'type': 'number', 'description': 'Maximum items to return (default 20, max 100)'}, 'search': {'type': 'string', 'description': 'Search in title and text'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'category': {'type': 'string', 'description': 'Filter by category'}}}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['image', 'video'], 'type': 'string', 'description': 'Optional broad media kind filter.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional tag filter. Assets matching any supplied tag may be returned.'}, 'limit': {'type': 'number', 'maximum': 200, 'minimum': 1, 'description': 'Maximum number of results to return.'}, 'cursor': {'type': 'string', 'description': 'Opaque pagination cursor from a previous response.'}, 'search': {'type': 'string', 'description': 'Optional filename search query.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'mimeType': {'type': 'string', 'description': 'Optional exact MIME type filter such as image/png or video/mp4.'}, 'collection': {'type': 'string', 'description': 'Optional collection name filter.'}}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'maximum': 100, 'minimum': 1}, 'search': {'type': 'string'}, 'status': {'enum': ['draft', 'importing', 'analyzing', 'ready', 'failed', 'archived'], 'type': 'string'}, 'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'maximum': 100, 'minimum': 1, 'description': 'Maximum number of results to return.'}, 'cursor': {'type': 'string', 'description': 'Opaque pagination cursor from a previous response.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'properties': {}}
입력 스키마
{'type': 'object', 'required': ['workflowId'], 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20)'}, 'status': {'enum': ['pending', 'running', 'completed', 'failed', 'paused'], 'type': 'string'}, 'workflowId': {'type': 'string', 'description': 'Workflow ID'}}}
입력 스키마
{'type': 'object', 'properties': {'active': {'type': 'boolean', 'description': 'Filter by active/inactive (optional)'}, 'triggerType': {'enum': ['manual', 'schedule', 'event', 'webhook', 'connector_event'], 'type': 'string', 'description': 'Filter by trigger type (optional)'}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'content'], 'properties': {'content': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'Post text/caption'}, 'mediaUrl': {'type': 'string', 'description': 'Single media URL (optional)'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Media type hint'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Multiple media URLs for carousel (optional)'}}}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Platforms to generate previews for'}}}
출력 스키마
{'type': 'object', 'properties': {'isError': {'type': 'boolean'}, 'summary': {'type': 'object', 'required': ['totalPlatforms', 'hasIssues', 'errorCount', 'warningCount'], 'properties': {'hasIssues': {'type': 'boolean'}, 'errorCount': {'type': 'number'}, 'warningCount': {'type': 'number'}, 'totalPlatforms': {'type': 'number'}}}, 'previews': {'type': 'array', 'items': {'type': 'object', 'required': ['platform', 'html', 'hasIssues', 'validation'], 'properties': {'html': {'type': 'string'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'hasIssues': {'type': 'boolean'}, 'validation': {'type': 'object', 'required': ['charCount', 'charLimit', 'errors', 'warnings'], 'properties': {'errors': {'type': 'array', 'items': {'type': 'string'}}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'charCount': {'type': 'number'}, 'charLimit': {'type': 'number'}}, 'additionalProperties': True}}, 'additionalProperties': True}}, 'errorMessage': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['platforms'], 'properties': {'prompt': {'type': 'string', 'description': 'Creative prompt for AI content generation'}, 'hashtags': {'enum': ['on', 'off', 'platform_auto'], 'type': 'string'}, 'mediaUrl': {'type': 'string', 'description': 'Media URL for the post'}, 'strictAi': {'type': 'boolean'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Media type hint'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Multiple media URLs for carousel'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Target platforms to generate content for and publish to'}, 'generation': {'type': 'object', 'properties': {'tone': {'enum': ['professional', 'casual', 'energetic', 'informative'], 'type': 'string'}, 'style': {'enum': ['storytelling', 'promotional', 'educational', 'entertaining'], 'type': 'string'}, 'callToAction': {'type': 'string'}}}, 'contentOverrides': {'type': 'object', 'properties': {'title': {'type': 'string'}, 'caption': {'type': 'string'}, 'hashtags': {'type': 'array', 'items': {'type': 'string'}}}}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'content'], 'properties': {'content': {'type': 'object', 'required': ['text'], 'properties': {'link': {'type': 'string', 'description': 'Pinterest source URL for the pin'}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'YouTube video tags'}, 'text': {'type': 'string', 'description': 'Post caption/text. Required for all platforms.'}, 'title': {'type': 'string', 'description': 'YouTube video title, Pinterest pin title'}, 'boardId': {'type': 'string', 'description': 'Pinterest only: Board ID to pin to. If not specified, uses first available board.'}, 'mediaUrl': {'type': 'string', 'description': 'Public HTTPS media URL. Do NOT pass local file paths — use create_upload_session to get a public URL first.'}, 'boardName': {'type': 'string', 'description': 'Pinterest only: Board name (alternative to boardId). Searches for matching board.'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': "Media type hint: 'image' for photos, 'video' for Reels/TikTok"}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Carousel: Instagram (2-10 images), Threads (2-20 mixed), X (2-4 images)'}, 'description': {'type': 'string', 'description': 'YouTube video description'}, 'youtubeMode': {'enum': ['auto', 'short', 'standard'], 'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for YouTube mode. Preferred: content.platformSettings.youtube.youtubeMode'}, 'facebookMode': {'enum': ['auto', 'reel', 'feed'], 'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for Facebook mode. Preferred: content.platformSettings.facebook.facebookMode'}, 'firstComment': {'type': 'string', 'description': 'Instagram first comment text (often used for hashtags)'}, 'threadTweets': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'Tweet text (max 280 chars)'}, 'mediaUrl': {'type': 'string', 'description': 'Optional public HTTPS image or video URL for this tweet'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Media type hint'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional multiple images for this tweet (max 4)'}}}, 'description': 'X (Twitter) only: additional tweets in the thread after the main text. The main text is always the first tweet. Each item here becomes a subsequent reply in the thread.'}, 'privacyStatus': {'enum': ['public', 'unlisted', 'private'], 'type': 'string', 'description': 'YouTube video privacy: public, unlisted, or private'}, 'pinterestBoardId': {'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for Pinterest board targeting. Preferred: content.platformSettings.pinterest.boardId'}, 'platformSettings': {'type': 'object', 'description': 'Optional advanced per-platform settings map. Key by platform ID and use it for platform-specific publish options plus per-platform text/title/description overrides.', 'additionalProperties': {'type': 'object', 'additionalProperties': True}}}}, 'team_id': {'type': 'string', 'description': 'Team ID to publish as team. Get available teams with list_teams. If omitted, publishes from personal accounts.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Target platforms. Choose based on content type: text-only→LinkedIn/Threads/X, image→Instagram/Threads/Facebook/Pinterest/TikTok Photo Mode, video→Instagram/TikTok/Threads/YouTube'}}}
출력 스키마
{'type': 'object', 'properties': {'isError': {'type': 'boolean'}, 'results': {'type': 'array', 'items': {'type': 'object', 'properties': {'error': {'type': 'string'}, 'postId': {'type': 'string'}, 'postUrl': {'type': 'string'}, 'success': {'type': 'boolean'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}}, 'additionalProperties': True}}, 'success': {'type': 'boolean'}, 'errorMessage': {'type': 'string'}, 'totalPlatforms': {'type': 'number'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}, 'successfulPlatforms': {'type': 'number'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['id', 'platforms'], 'properties': {'id': {'type': 'string', 'description': 'The content library item ID to publish'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Platforms to publish to'}}}
입력 스키마
{'type': 'object', 'required': ['postId', 'reason'], 'properties': {'postId': {'type': 'string', 'description': 'The scheduled post ID to reject'}, 'reason': {'type': 'string', 'description': 'Reason for rejection'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}}}
입력 스키마
{'type': 'object', 'required': ['threadId', 'text'], 'properties': {'text': {'type': 'string', 'description': 'Your reply text'}, 'threadId': {'type': 'string', 'description': 'The inbox thread ID to reply to'}}}
입력 스키마
{'type': 'object', 'required': ['conversationId', 'content'], 'properties': {'content': {'type': 'string', 'description': 'Reply text'}, 'routing': {'type': 'object', 'required': ['credentialId', 'operation'], 'properties': {'baseInput': {'type': 'object', 'description': 'Static input merged into every reply (e.g. channel/thread identifiers)', 'additionalProperties': True}, 'operation': {'type': 'string', 'description': 'Connector operation name to execute (e.g. send_message)'}, 'connectorId': {'type': 'string', 'description': 'Optional: connector ID for validation'}, 'credentialId': {'type': 'string', 'description': 'connector_credentials.id to execute with'}}, 'description': "Optional: set conversation reply routing (persisted on conversations.metadata.replyRouting). Use this when the conversation doesn't yet have reply routing configured.", 'additionalProperties': True}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Media to attach (optional)'}, 'conversationId': {'type': 'string', 'description': 'Conversation ID'}}}
입력 스키마
{'type': 'object', 'required': ['url', 'target_platforms'], 'properties': {'url': {'type': 'string', 'description': 'Source URL to repurpose (article, YouTube video, or podcast RSS feed)'}, 'tone': {'type': 'string', 'description': "Optional tone override (e.g., 'professional', 'casual', 'witty')"}, 'brand_voice_id': {'type': 'string', 'description': 'Optional brand voice profile ID to apply'}, 'target_platforms': {'type': 'array', 'items': {'type': 'string'}, 'description': "Target platforms to generate content for (e.g., ['x', 'linkedin', 'instagram'])"}}}
입력 스키마
{'type': 'object', 'required': ['projectId'], 'properties': {'goal': {'type': 'string'}, 'count': {'type': 'number', 'maximum': 10, 'minimum': 1}, 'prompt': {'type': 'string'}, 'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'contentType': {'enum': ['reaction_demo', 'hook_slideshow', 'tiktok_video_remix', 'tiktok_slideshow_remix', 'ugc_avatar', 'caption_pack', 'content_calendar'], 'type': 'string'}, 'saveToLibrary': {'type': 'boolean'}, 'consentConfirmed': {'type': 'boolean', 'description': 'Required when using uploaded creator or likeness-like media.'}}}
입력 스키마
{'type': 'object', 'required': ['deadLetterId'], 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'deadLetterId': {'type': 'string', 'description': 'The dead letter post ID to requeue'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'text': {'type': 'string', 'description': 'Replacement post text for the retry.'}, 'postId': {'type': 'string', 'description': 'Scheduled post ID.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'mediaUrl': {'type': 'string', 'description': 'Replacement public HTTPS media URL for the retry.'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Replacement public HTTPS media URLs for the retry.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional subset of failed platforms to retry.'}, 'publishNow': {'type': 'boolean', 'description': 'Publish the retry immediately instead of scheduling it.'}, 'scheduleId': {'type': 'string', 'description': 'Compatibility alias for postId.'}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': 'New ISO 8601 retry time. Required unless publishNow is true.'}, 'firstComment': {'type': 'string', 'description': 'Optional replacement Instagram first comment.'}, 'pinterestBoardId': {'type': 'string', 'description': 'Optional replacement Pinterest board ID.'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for reportId.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'reportId': {'type': 'string', 'description': 'Saved analytics report ID.'}}}
입력 스키마
{'type': 'object', 'required': ['projectId'], 'properties': {'count': {'type': 'number', 'maximum': 10, 'minimum': 1}, 'prompt': {'type': 'string'}, 'team_id': {'type': 'string', 'description': 'Optional team ID or slug. Ignored when using a team-scoped API key.'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'contentType': {'enum': ['reaction_demo', 'hook_slideshow', 'tiktok_video_remix', 'tiktok_slideshow_remix', 'ugc_avatar', 'caption_pack', 'content_calendar'], 'type': 'string'}}}
입력 스키마
{'type': 'object', 'required': ['title', 'text'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags for organization'}, 'text': {'type': 'string', 'description': 'The content text/caption'}, 'type': {'enum': ['draft', 'template', 'evergreen'], 'type': 'string', 'description': 'Content type (default: draft)'}, 'title': {'type': 'string', 'description': 'Title for the saved content'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'category': {'type': 'string', 'description': 'Category for organization'}, 'mediaUrl': {'type': 'string', 'description': 'Media URL (image or video)'}, 'targetPlatforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Which platforms this content is designed for'}, 'evergreenEnabled': {'type': 'boolean', 'description': 'Enable evergreen auto-republishing'}, 'evergreenIntervalDays': {'type': 'number', 'description': 'Days between evergreen republishes'}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'content', 'scheduledTime'], 'properties': {'content': {'type': 'object', 'required': ['text'], 'properties': {'link': {'type': 'string', 'description': 'Pinterest source URL for the pin'}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'YouTube video tags'}, 'text': {'type': 'string', 'description': 'Post caption/text. Required for all platforms.'}, 'title': {'type': 'string', 'description': 'YouTube video title, Pinterest pin title'}, 'boardId': {'type': 'string', 'description': 'Pinterest only: Board ID to pin to. If not specified, uses first available board.'}, 'mediaUrl': {'type': 'string', 'description': 'Public HTTPS media URL. Do NOT pass local file paths — use create_upload_session to get a public URL first.'}, 'boardName': {'type': 'string', 'description': 'Pinterest only: Board name (alternative to boardId). Searches for matching board.'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': "Media type hint: 'image' for photos, 'video' for Reels/TikTok"}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Carousel: Instagram (2-10 images), Threads (2-20 mixed), X (2-4 images)'}, 'description': {'type': 'string', 'description': 'YouTube video description'}, 'youtubeMode': {'enum': ['auto', 'short', 'standard'], 'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for YouTube mode. Preferred: content.platformSettings.youtube.youtubeMode'}, 'facebookMode': {'enum': ['auto', 'reel', 'feed'], 'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for Facebook mode. Preferred: content.platformSettings.facebook.facebookMode'}, 'firstComment': {'type': 'string', 'description': 'Instagram first comment text (often used for hashtags)'}, 'threadTweets': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'Tweet text (max 280 chars)'}, 'mediaUrl': {'type': 'string', 'description': 'Optional public HTTPS image or video URL for this tweet'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Media type hint'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional multiple images for this tweet (max 4)'}}}, 'description': 'X (Twitter) only: additional tweets in the thread after the main text. The main text is always the first tweet. Each item here becomes a subsequent reply in the thread.'}, 'privacyStatus': {'enum': ['public', 'unlisted', 'private'], 'type': 'string', 'description': 'YouTube video privacy: public, unlisted, or private'}, 'pinterestBoardId': {'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for Pinterest board targeting. Preferred: content.platformSettings.pinterest.boardId'}, 'platformSettings': {'type': 'object', 'description': 'Optional advanced per-platform settings map. Key by platform ID and use it for platform-specific publish options plus per-platform text/title/description overrides.', 'additionalProperties': {'type': 'object', 'additionalProperties': True}}}}, 'team_id': {'type': 'string', 'description': 'Team ID to schedule as team. Get available teams with list_teams. If omitted, schedules from personal accounts.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for queue scheduling and recurring series metadata.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': "Target platforms - ensure content matches each platform's requirements"}, 'scoreGate': {'type': 'number', 'maximum': 100, 'minimum': 1, 'description': 'Optional forward-compatible minimum content score threshold for advanced scheduling flows.'}, 'recurrence': {'type': 'object', 'required': ['frequency'], 'properties': {'count': {'type': 'number', 'maximum': 52, 'minimum': 1}, 'until': {'type': 'string', 'format': 'date-time'}, 'interval': {'type': 'number', 'minimum': 1}, 'frequency': {'enum': ['daily', 'weekly', 'monthly'], 'type': 'string'}}, 'description': 'Optional forward-compatible structured recurrence definition.'}, 'bypassToken': {'type': 'string', 'description': 'Optional forward-compatible bypass token returned by advanced scheduling score-gate checks.'}, 'scheduleMode': {'enum': ['exact', 'queue'], 'type': 'string', 'description': "Optional forward-compatible scheduling mode. 'queue' asks SendIt to place the post in the next available queue slot."}, 'scheduledTime': {'type': 'string', 'format': 'date-time', 'description': 'ISO 8601 datetime in UTC (e.g., 2025-01-15T14:30:00Z)'}, 'recurrenceRule': {'type': 'string', 'description': 'Optional forward-compatible RRULE string for recurring schedules.'}, 'targetAccounts': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional advanced scheduling target account IDs. Legacy handlers may ignore this until advanced scheduling is enabled.'}, 'mediaAttachments': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'altText': {'type': 'string'}, 'saveToLibrary': {'type': 'boolean'}}}, 'description': 'Optional forward-compatible media asset attachments to associate with the scheduled post.'}, 'platformOverrides': {'type': 'object', 'description': 'Optional forward-compatible per-platform overrides keyed by platform ID.', 'additionalProperties': {'type': 'object', 'additionalProperties': True}}, 'recurrenceEndDate': {'type': 'string', 'format': 'date-time', 'description': 'Optional forward-compatible ISO 8601 end date for recurrence.'}}}
출력 스키마
{'type': 'object', 'properties': {'status': {'type': 'string'}, 'isError': {'type': 'boolean'}, 'success': {'type': 'boolean'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}}, 'scheduleId': {'type': 'string'}, 'errorMessage': {'type': 'string'}, 'scheduledTime': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['content', 'targetAccounts'], 'properties': {'content': {'type': 'object', 'properties': {'body': {'type': 'string', 'description': 'Compatibility alias for content text. If both are provided, text wins.'}, 'text': {'type': 'string', 'description': 'Primary post caption or body text.'}, 'title': {'type': 'string', 'description': 'Optional title for platforms that support titles such as YouTube or Pinterest.'}, 'mediaUrl': {'type': 'string', 'description': 'Optional public HTTPS media URL.'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Optional media type hint.'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional public HTTPS media URLs for carousels or multi-asset posts.'}, 'firstComment': {'type': 'string', 'description': 'Optional Instagram first comment text.'}, 'threadTweets': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'Tweet text for this follow-up post.'}, 'mediaUrl': {'type': 'string', 'description': 'Optional public HTTPS media URL for this tweet.'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Optional media type hint for this tweet.'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional public HTTPS media URLs for this tweet.'}}}, 'description': 'Optional X thread tweets after the primary tweet.'}, 'pinterestBoardId': {'type': 'string', 'description': 'Optional Pinterest board ID override.'}}}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for queue resolution and recurrence.'}, 'scoreGate': {'type': 'number', 'maximum': 100, 'minimum': 1, 'description': 'Optional minimum content score threshold. If unmet, the tool can return a bypass token instead of scheduling.'}, 'recurrence': {'type': 'object', 'required': ['frequency'], 'properties': {'count': {'type': 'number', 'maximum': 52, 'minimum': 1, 'description': 'Maximum number of occurrences to create.'}, 'until': {'type': 'string', 'format': 'date-time', 'description': 'Stop generating occurrences after this ISO 8601 time.'}, 'interval': {'type': 'number', 'minimum': 1, 'description': 'Repeat every N frequency units.'}, 'frequency': {'enum': ['daily', 'weekly', 'monthly'], 'type': 'string', 'description': 'Recurrence frequency.'}}, 'description': 'Optional structured recurrence definition.'}, 'bypassToken': {'type': 'string', 'description': 'Optional bypass token returned from a previous score gate warning.'}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': "ISO 8601 time for exact scheduling. Required unless scheduleMode is 'queue'."}, 'scheduleMode': {'enum': ['exact', 'queue'], 'type': 'string', 'description': "Scheduling strategy. Use 'queue' to place the post into the next available queue slot."}, 'recurrenceRule': {'type': 'string', 'description': 'Optional RRULE string for advanced recurring schedules.'}, 'targetAccounts': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Connected account IDs to schedule to. These determine the target platforms.'}, 'mediaAttachments': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'url'], 'properties': {'id': {'type': 'string', 'description': 'Media asset ID.'}, 'url': {'type': 'string', 'description': 'Public HTTPS URL for the attachment.'}, 'altText': {'type': 'string', 'description': 'Optional accessibility alt text.'}, 'saveToLibrary': {'type': 'boolean', 'description': 'If true, preserve this asset in the media library after scheduling.'}}}, 'description': 'Optional media library assets to link to the scheduled post.'}, 'platformOverrides': {'type': 'object', 'description': 'Optional per-platform overrides keyed by platform ID. Use this for platform-specific text, title, description, or publish settings.', 'additionalProperties': {'type': 'object', 'additionalProperties': True}}, 'recurrenceEndDate': {'type': 'string', 'format': 'date-time', 'description': 'Optional ISO 8601 date-time to stop the recurring series.'}}}
입력 스키마
{'type': 'object', 'required': ['versions', 'scheduledAt'], 'properties': {'title': {'type': 'string', 'description': 'Optional shared title for supported platforms.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'mediaUrl': {'type': 'string', 'description': 'Optional shared public HTTPS media URL.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone stored with the scheduled posts.'}, 'versions': {'type': 'array', 'items': {'type': 'object', 'required': ['lang', 'text', 'targetAccounts'], 'properties': {'lang': {'type': 'string', 'description': 'Language code such as en, es, fr, or de.'}, 'text': {'type': 'string', 'description': 'Localized post text for this version.'}, 'targetAccounts': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Connected account IDs for this language version.'}}}, 'description': 'Language-specific post variants. Maximum 11 versions per request.'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Optional shared media type hint.'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional shared public HTTPS media URLs.'}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': 'Future ISO 8601 publish time for every language version.'}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'text'], 'properties': {'text': {'type': 'string', 'description': 'The post text content'}, 'mediaUrl': {'type': 'string', 'description': 'Primary media URL (optional)'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Multiple media URLs for carousel (optional)'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Target platforms to score against'}, 'scheduledTime': {'type': 'string', 'format': 'date-time', 'description': 'Scheduled publish time in ISO 8601 (optional, improves time score)'}}}
입력 스키마
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'The brand voice profile ID to set as default'}}}
입력 스키마
{'type': 'object', 'properties': {'mode': {'enum': ['best_time', 'queue'], 'type': 'string', 'description': "Use 'best_time' for analytics-based suggestions or 'queue' for queue-slot suggestions."}, 'after': {'type': 'string', 'format': 'date-time', 'description': 'Optional lower bound. Suggestions should be strictly after this time.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'platform': {'type': 'string', 'description': 'Single platform to optimize for.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for the returned recommendation.'}, 'mediaType': {'enum': ['text', 'image', 'carousel', 'video', 'story'], 'type': 'string', 'description': 'Optional content media type hint for best-time recommendations.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional platform set to optimize across.'}}}
입력 스키마
{'type': 'object', 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'timezone': {'type': 'string', 'description': 'Optional IANA timezone for the suggested local queue times.'}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Optional platform list. If omitted, suggestions may be generated for all supported platforms.'}, 'slotsPerPlatform': {'type': 'number', 'maximum': 10, 'minimum': 1, 'description': 'How many suggested slots to return per platform.'}}}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max mentions to analyze (default: 30, max: 50)'}, 'since': {'type': 'string', 'description': 'ISO date string — only include mentions after this date'}, 'platform': {'type': 'string', 'description': 'Filter to a specific platform'}, 'keyword_id': {'type': 'string', 'description': 'Filter to mentions matching a specific keyword'}}}
입력 스키마
{'type': 'object', 'required': ['scheduleId'], 'properties': {'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'scheduleId': {'type': 'string', 'description': 'The ID of the scheduled post to trigger'}}}
출력 스키마
{'type': 'object', 'properties': {'isError': {'type': 'boolean'}, 'results': {'type': 'array', 'items': {'type': 'object', 'properties': {'error': {'type': 'string'}, 'postId': {'type': 'string'}, 'postUrl': {'type': 'string'}, 'success': {'type': 'boolean'}, 'platform': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}}, 'additionalProperties': True}}, 'success': {'type': 'boolean'}, 'errorMessage': {'type': 'string'}, 'totalPlatforms': {'type': 'number'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}, 'successfulPlatforms': {'type': 'number'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['workflowId'], 'properties': {'inputData': {'type': 'object', 'description': 'Input data to pass to the workflow run', 'additionalProperties': True}, 'workflowId': {'type': 'string', 'description': 'Workflow ID to trigger'}}}
입력 스키마
{'type': 'object', 'required': ['campaignId'], 'properties': {'name': {'type': 'string', 'description': 'New campaign name'}, 'status': {'enum': ['active', 'paused'], 'type': 'string', 'description': 'Change campaign status'}, 'endDate': {'type': 'string', 'format': 'date-time', 'description': 'Updated end date'}, 'campaignId': {'type': 'string', 'description': 'Campaign ID'}, 'budgetAmount': {'type': 'number', 'description': 'Updated budget amount'}}}
입력 스키마
{'type': 'object', 'required': ['agentId', 'policyType', 'rules'], 'properties': {'rules': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'action', 'reason'], 'properties': {'action': {'enum': ['allow', 'block', 'require_approval', 'warn'], 'type': 'string'}, 'reason': {'type': 'string', 'description': 'Reason for this rule'}, 'condition': {'type': 'string', 'description': 'Rule condition'}}}, 'description': 'Policy rules'}, 'active': {'type': 'boolean', 'description': 'Whether policy is active'}, 'agentId': {'enum': ['strategy_planner', 'content_ideation', 'multi_format_composer', 'creative_asset', 'variant_repurposer', 'calendar_optimizer', 'listening_analyst', 'inbox_reply', 'campaign_builder', 'budget_optimizer', 'experimentation', 'executive_insights'], 'type': 'string', 'description': 'Agent to set policy for'}, 'policyType': {'enum': ['brand_safety', 'platform_compliance', 'approval_gate', 'budget_limit', 'content_filter'], 'type': 'string', 'description': 'Policy type'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for eventId.'}, 'postId': {'type': 'string', 'description': 'Compatibility alias when the calendar event maps directly to a scheduled post.'}, 'status': {'enum': ['draft', 'scheduled', 'queued', 'pending', 'publishing', 'draft_delivered', 'published', 'failed', 'cancelled'], 'type': 'string', 'description': 'Updated event status.'}, 'eventId': {'type': 'string', 'description': 'Calendar event ID or backing scheduled post ID.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'metadata': {'type': 'object', 'description': 'Optional event metadata patch.', 'additionalProperties': True}, 'assigneeId': {'type': 'string', 'description': 'Optional assignee user ID.'}, 'scheduledAt': {'type': 'string', 'format': 'date-time', 'description': 'Updated ISO 8601 schedule time for the event.'}}}
입력 스키마
{'type': 'object', 'required': ['conversationId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Set tags'}, 'status': {'enum': ['open', 'closed', 'snoozed', 'archived'], 'type': 'string'}, 'priority': {'enum': ['low', 'normal', 'high', 'urgent'], 'type': 'string'}, 'sentiment': {'enum': ['positive', 'neutral', 'negative', 'mixed'], 'type': 'string'}, 'assignedTo': {'type': 'string', 'description': 'Assign to team member ID'}, 'conversationId': {'type': 'string', 'description': 'Conversation ID'}}}
입력 스키마
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'The content library item ID'}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags'}, 'text': {'type': 'string', 'description': 'New content text'}, 'type': {'enum': ['draft', 'template', 'evergreen'], 'type': 'string', 'description': 'Content type'}, 'title': {'type': 'string', 'description': 'New title'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'category': {'type': 'string', 'description': 'Category'}, 'mediaUrl': {'type': 'string', 'description': 'Media URL'}, 'evergreenEnabled': {'type': 'boolean', 'description': 'Enable evergreen'}, 'evergreenIntervalDays': {'type': 'number', 'description': 'Republish interval in days'}}}
입력 스키마
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Compatibility alias for seriesId.'}, 'team_id': {'type': 'string', 'description': 'Team ID to operate in team scope. Get available teams with list_teams. If omitted, uses personal scope.'}, 'seriesId': {'type': 'string', 'description': 'Recurring series parent scheduled post ID.'}, 'recurrenceRule': {'type': 'string', 'description': 'Replacement RRULE string.'}, 'recurrenceEndDate': {'type': 'string', 'format': 'date-time', 'description': 'Replacement ISO 8601 end date for the series.'}}}
입력 스키마
{'type': 'object', 'required': ['workflowId'], 'properties': {'name': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'active': {'type': 'boolean'}, 'workflowId': {'type': 'string', 'description': 'Workflow ID'}}}
입력 스키마
{'type': 'object', 'properties': {'folder': {'type': 'string', 'description': 'Optional folder name for organizing uploads'}, 'filePath': {'type': 'string', 'description': 'Local file path to upload (e.g., ~/Photos/image.jpg)'}, 'mediaUrl': {'type': 'string', 'description': 'Existing public URL to validate (alternative to filePath)'}}}
입력 스키마
{'type': 'object', 'required': ['postId'], 'properties': {'postId': {'type': 'string', 'description': 'The Product Hunt post ID to upvote'}}}
입력 스키마
{'type': 'object', 'required': ['platforms', 'content'], 'properties': {'content': {'type': 'object', 'required': ['text'], 'properties': {'link': {'type': 'string', 'description': 'Pinterest source URL for the pin'}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'YouTube video tags'}, 'text': {'type': 'string', 'description': 'Post caption/text. Required for all platforms.'}, 'title': {'type': 'string', 'description': 'YouTube video title, Pinterest pin title'}, 'boardId': {'type': 'string', 'description': 'Pinterest only: Board ID to pin to. If not specified, uses first available board.'}, 'mediaUrl': {'type': 'string', 'description': 'Public HTTPS media URL. Do NOT pass local file paths — use create_upload_session to get a public URL first.'}, 'boardName': {'type': 'string', 'description': 'Pinterest only: Board name (alternative to boardId). Searches for matching board.'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': "Media type hint: 'image' for photos, 'video' for Reels/TikTok"}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Carousel: Instagram (2-10 images), Threads (2-20 mixed), X (2-4 images)'}, 'description': {'type': 'string', 'description': 'YouTube video description'}, 'youtubeMode': {'enum': ['auto', 'short', 'standard'], 'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for YouTube mode. Preferred: content.platformSettings.youtube.youtubeMode'}, 'facebookMode': {'enum': ['auto', 'reel', 'feed'], 'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for Facebook mode. Preferred: content.platformSettings.facebook.facebookMode'}, 'firstComment': {'type': 'string', 'description': 'Instagram first comment text (often used for hashtags)'}, 'threadTweets': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'Tweet text (max 280 chars)'}, 'mediaUrl': {'type': 'string', 'description': 'Optional public HTTPS image or video URL for this tweet'}, 'mediaType': {'enum': ['image', 'video', 'auto'], 'type': 'string', 'description': 'Media type hint'}, 'mediaUrls': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional multiple images for this tweet (max 4)'}}}, 'description': 'X (Twitter) only: additional tweets in the thread after the main text. The main text is always the first tweet. Each item here becomes a subsequent reply in the thread.'}, 'privacyStatus': {'enum': ['public', 'unlisted', 'private'], 'type': 'string', 'description': 'YouTube video privacy: public, unlisted, or private'}, 'pinterestBoardId': {'type': 'string', 'deprecated': True, 'description': 'Deprecated compatibility alias for Pinterest board targeting. Preferred: content.platformSettings.pinterest.boardId'}, 'platformSettings': {'type': 'object', 'description': 'Optional advanced per-platform settings map. Key by platform ID and use it for platform-specific publish options plus per-platform text/title/description overrides.', 'additionalProperties': {'type': 'object', 'additionalProperties': True}}}}, 'platforms': {'type': 'array', 'items': {'enum': ['x', 'linkedin', 'linkedin-page', 'facebook', 'instagram', 'threads', 'bluesky', 'mastodon', 'nostr', 'youtube', 'tiktok', 'lemmy', 'discord', 'slack', 'telegram', 'pinterest', 'dribbble', 'devto', 'hashnode', 'gmb', 'whop', 'producthunt'], 'type': 'string'}, 'description': 'Platforms to validate against'}}}
출력 스키마
{'type': 'object', 'properties': {'valid': {'type': 'boolean'}, 'errors': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'isError': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'platforms': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'errorMessage': {'type': 'string'}, 'followUpSuggestions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
최근 도구 변경
유사한 MCP 서버
captapi
Retrieves social media profiles, posts, engagement metrics, comments, marketplace listings, events, and Meta advertising data acr…
aidelly
Supports agency social media operations including content creation, approvals, scheduling, publishing, repurposing, analytics, ec…
LinkedIn MCP Server (Salesbot)
Supports LinkedIn lead discovery, contact enrichment, CRM pipelines, campaign sequencing, message approval and human-reviewed out…
excalibur-mcp
Creates, schedules, manages, and measures formatted posts for X, with OAuth, snippets, writing voice, and post performance tracki…
uplika
Publishes and manages posts, replies, messages, media, and automations across connected social platforms.
Prowlo — Reddit & X for AI agents
Indexes and searches Reddit and X-related social data, discovers communities, monitors keywords, finds engagement opportunities, …
ChiefLab
Runs approval-gated product launch workflows with channel-specific marketing drafts, social publishing, email actions, measuremen…
Meta Ads (Facebook & Instagram)
Reads and manages Meta advertising campaigns, ad sets, ads, creatives, audiences, business accounts, pages, pixels, budgets, targ…