Install
openclaw skills install @wilzer/aidelly-socialCreate, schedule, and manage social posts via Aidelly's public MCP server — post creation, scheduling, approval workflows, and analytics.
openclaw skills install @wilzer/aidelly-socialAutomate social content workflows in Aidelly via Claude Code. This skill documents the Aidelly MCP server endpoints for creating/scheduling posts, checking approval status, and pulling analytics summaries.
Set up environment variables before using:
export AIDELLY_API_KEY=your_api_key_here
export AIDELLY_WORKSPACE_ID=your_workspace_id # optional; required if managing multiple workspaces
The MCP server (https://app.aidelly.ai/api/mcp/public-api) will use these headers:
Authorization: Bearer ${AIDELLY_API_KEY}x-aidelly-workspace-id: ${AIDELLY_WORKSPACE_ID} (if set)Tool: aidelly_create_post
Create and publish a post immediately across one or more social platforms.
Parameters:
text (string, required): Post content (max 63,206 chars; platform-specific limits enforced)content.media (array, optional): List of media objects
media.id (string): Media ID from aidelly_upload_media or aidelly_create_media_upload_urlmedia.type (string): 'image' or 'video'accounts (array, required): List of account IDs or connection IDs to post toscheduled_for (string, optional): ISO 8601 timestamp for scheduled publishExample:
{
"text": "New blog post is live!",
"content": {
"media": [{ "id": "media_abc123", "type": "image" }]
},
"accounts": ["account_123", "account_456"]
}
Returns: Post object with id, status, accounts, created_at
Tool: aidelly_create_scheduled_post
Schedule a post for future publish (with optional approval workflow).
Parameters:
text (string, required): Post contentcontent.media (array, optional): Media objects (same as create_post)accounts (array, required): Account IDs to post toscheduled_for (string, required): ISO 8601 timestamp for publishplatform_specific (object, optional): Platform-specific settings
platform_specific.comments (array): First-comment blocks (LinkedIn, Facebook, Twitter support)platform_specific.linkedInAuthorTarget (object): LinkedIn org/member routingapproval_required (boolean, optional): Require approval before publishingReturns: Scheduled post object with id, status: 'scheduled', scheduled_for, accounts
Tool: aidelly_list_pending_approvals
List posts awaiting approval in the workspace.
Parameters:
limit (integer, optional): Max results (default 25)offset (integer, optional): Pagination offset (default 0)Returns: Array of approval objects with:
id, post_id, workspace_id, status ('pending', 'approved', 'rejected')created_at, created_by_id (if available)Tool: aidelly_post_approvals_id_action
Approve or reject a pending post.
Parameters:
id (string, required): Approval IDaction (string, required): 'approve' or 'reject'reason (string, optional): Reason for rejectionReturns: Updated approval object with new status
Tool: aidelly_get_analytics_summary
Pull engagement metrics for published posts (last 30 days by default).
Parameters:
accounts (array, optional): Filter by account IDsplatforms (array, optional): Filter by platforms (e.g., ['instagram', 'twitter'])start_date (string, optional): ISO 8601 start dateend_date (string, optional): ISO 8601 end dateReturns: Analytics object with:
total_posts: Count of posts in periodtotal_engagements: Likes + comments + shares + repoststotal_reach: Impressionstop_posts: Array of highest-performing posts with metricsplatform_breakdown: Metrics per platformTool: aidelly_get_post
Retrieve a single post's details, status, and platform-specific data.
Parameters:
id (string, required): Post IDReturns: Post object with:
id, text, accounts, status ('published', 'scheduled', 'failed')created_at, published_atprovider_post_ids: Map of platform → remote post IDanalytics: (if published) engagement metricsTool: aidelly_upload_media
Upload an image or video for inclusion in a post.
Parameters:
source_url (string): Public HTTPS URL of image/video to fetchalt_text (string, optional): Accessibility descriptionReturns: Media object with:
id: Media ID (use in content.media)url: Hosted media URLtype: 'image' or 'video'size, width, height1. aidelly_upload_media (fetch image from URL)
2. aidelly_create_scheduled_post (schedule for tomorrow, approval_required: true)
3. aidelly_list_pending_approvals (check approval status)
4. aidelly_post_approvals_id_action (approve when ready)
1. aidelly_get_analytics_summary (last 7 days, all platforms)
2. For each top post: aidelly_get_post (detailed metrics)
3. Aggregate platform-specific performance
All MCP calls follow standard error responses:
{
"content": [{ "type": "text", "text": "<error message>" }],
"isError": true
}
Common errors:
AIDELLY_API_KEY