Generate, schedule, and publish tweets in your voice using AI. Browse viral content for inspiration, manage your post queue, and track billing and quota.
All tools require an XREPLY_TOKEN environment variable — a JWT token from XreplyAI Settings. This is automatically injected by OpenClaw when set in your skill config.
The XReply MCP server is published as @xreplyai/mcp on npm. You invoke tools via mcporter:
mcporter call 'npx @xreplyai/mcp' <tool_name> [param:value ...]
To discover all available tools and their parameters:
mcporter list 'npx @xreplyai/mcp' --all-parameters
Browse high-performing tweets (100+ likes) for inspiration. Filter by niche, keyword, and time range. Requires Pro or BYOK subscription.
mcporter call 'npx @xreplyai/mcp' xreply_viral_library
mcporter call 'npx @xreplyai/mcp' xreply_viral_library niche:ai sort:top_engaged
mcporter call 'npx @xreplyai/mcp' xreply_viral_library niche:saas query:pricing time_range:7d
mcporter call 'npx @xreplyai/mcp' xreply_viral_library niche:startups sort:recent page:2
Parameters:
niche (optional): ai | saas | marketing | productivity | startups | growthsort (optional): top_engaged (default) | recentquery (optional): keyword search within tweet texttime_range (optional): 7d | 30dpage (optional): page number, 20 results per page (default: 1)Generate a single AI post in the user's voice and auto-save it as a draft. Returns the generated body and saved post ID. Counts as 1 against the daily quota (5/day free, 100/day pro).
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate topic:"my SaaS hit 1000 users"
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate topic:"lessons from year 1" angle:story_arc
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate angle:one_liner
Parameters:
topic (optional): topic or prompt for the post (max 280 chars)angle (optional): one_liner | list | question | story_arc | paragraph | my_voiceGenerate multiple AI posts at once. Each post counts as 1 against the daily quota — check billing first if quota is a concern. A batch of 9 will exhaust a free account.
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate_batch category:personalized count:5
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate_batch category:trending count:3
mcporter call 'npx @xreplyai/mcp' xreply_posts_generate_batch category:viral count:9
Parameters:
category (required): personalized | trending | viralcount (required): number of posts to generate (1–9, must not exceed remaining daily quota)List all posts in the queue — drafts, scheduled, and recent posts. Returns post IDs, body text, status, and scheduled times.
mcporter call 'npx @xreplyai/mcp' xreply_posts_list
No parameters.
Save a post draft. The post is not published until you call xreply_posts_publish.
mcporter call 'npx @xreplyai/mcp' xreply_posts_create body:"Your tweet text here"
mcporter call 'npx @xreplyai/mcp' xreply_posts_create body:"Tweet text" auto_rt_hours:24
Parameters:
body (required): post body text (max 280 chars)auto_rt_hours (optional): hours after publishing to auto-retweet (e.g. 24)Edit a post's body, scheduled time, or auto-retweet setting. Cannot edit posts that are processing or already published.
mcporter call 'npx @xreplyai/mcp' xreply_posts_edit id:123 body:"Updated tweet text"
mcporter call 'npx @xreplyai/mcp' xreply_posts_edit id:123 'scheduled_at:2026-03-15T09:00:00Z'
mcporter call 'npx @xreplyai/mcp' xreply_posts_edit id:123 body:"New text" auto_rt_hours:48
Parameters:
id (required): post ID (integer)body (optional): new body text (max 280 chars)scheduled_at (optional): ISO 8601 datetime string — omit to leave unchanged; to unschedule, omit the field and the post reverts to draftauto_rt_hours (optional): hours after publishing to auto-retweet — omit to leave unchangedDelete a post. Cannot delete posts that are processing or already published.
mcporter call 'npx @xreplyai/mcp' xreply_posts_delete id:123
Parameters:
id (required): post ID (integer)Publish or schedule a post to X/Twitter. Requires X account to be connected. Scheduling horizon depends on the subscription plan.
mcporter call 'npx @xreplyai/mcp' xreply_posts_publish id:123
mcporter call 'npx @xreplyai/mcp' xreply_posts_publish id:123 'scheduled_at:2026-03-15T09:00:00Z'
Parameters:
id (required): post ID (integer)scheduled_at (optional): ISO 8601 datetime to schedule; omit to publish immediatelyGet subscription tier (free/byok/pro), quota usage, daily limits, and subscription details.
mcporter call 'npx @xreplyai/mcp' xreply_billing_status
No parameters.
Get voice profile status — whether it has been analyzed, tweet count, AI provider configured, and writing style summary.
mcporter call 'npx @xreplyai/mcp' xreply_voice_status
No parameters.
Get current post generation preferences — tone, emoji usage, and default structure.
mcporter call 'npx @xreplyai/mcp' xreply_preferences_get
No parameters.
Update post generation preferences. Provide only the fields you want to change.
mcporter call 'npx @xreplyai/mcp' xreply_preferences_set tone:witty
mcporter call 'npx @xreplyai/mcp' xreply_preferences_set tone:professional include_emoji:false
mcporter call 'npx @xreplyai/mcp' xreply_preferences_set structure:story_arc
Parameters:
tone (optional): auto | casual | professional | witty | empatheticinclude_emoji (optional): true | falsestructure (optional): one_liner | paragraph | question | list | story_arcList custom writing rules applied during generation — e.g. "never use hashtags", "always end with a question". Requires Pro or BYOK subscription.
mcporter call 'npx @xreplyai/mcp' xreply_rules_list
No parameters.
1. mcporter call 'npx @xreplyai/mcp' xreply_posts_generate topic:"ship fast, learn faster" angle:story_arc
→ returns { body: "...", post: { id: 42, ... } }
2. mcporter call 'npx @xreplyai/mcp' xreply_posts_publish id:42 'scheduled_at:2026-03-12T09:00:00Z'
1. mcporter call 'npx @xreplyai/mcp' xreply_viral_library niche:saas sort:top_engaged
→ review viral tweet formats
2. mcporter call 'npx @xreplyai/mcp' xreply_posts_generate topic:"inspired by those formats" angle:list
1. mcporter call 'npx @xreplyai/mcp' xreply_billing_status
→ check remaining quota before a large batch
2. mcporter call 'npx @xreplyai/mcp' xreply_posts_generate_batch category:personalized count:7
→ generates 7 drafts
3. mcporter call 'npx @xreplyai/mcp' xreply_posts_list
→ review the queue
4. mcporter call 'npx @xreplyai/mcp' xreply_posts_edit id:101 'scheduled_at:2026-03-11T09:00:00Z'
mcporter call 'npx @xreplyai/mcp' xreply_posts_edit id:102 'scheduled_at:2026-03-12T09:00:00Z'
→ schedule each post
1. mcporter call 'npx @xreplyai/mcp' xreply_posts_list
→ find the draft ID
2. mcporter call 'npx @xreplyai/mcp' xreply_posts_edit id:55 body:"Revised tweet text"
3. mcporter call 'npx @xreplyai/mcp' xreply_posts_publish id:55
Token expired: If tools return a 401 error, the XREPLY_TOKEN has expired (tokens last 30 days). Ask the user to get a fresh token from XreplyAI Settings and update it in their OpenClaw config.
Quota exhausted: If generation returns a quota error (e.g. "Daily generation quota exhausted"), call xreply_billing_status to check limits and inform the user. Quota resets at midnight.
Quota insufficient for batch: If xreply_posts_generate_batch returns quota_insufficient: true, reduce count to the available value shown in the response, or ask the user to confirm.
Schedule out of range: If scheduling returns a validation error, the requested time exceeds the plan's scheduling horizon. Call xreply_billing_status to check max_schedule_days and suggest an earlier time.
Cannot edit/delete: Posts with status processing or posted cannot be edited or deleted. Call xreply_posts_list to check the current status.
Viral library requires Pro: If xreply_viral_library or xreply_rules_list returns a 403, inform the user these features require a Pro or BYOK subscription.
共 1 个版本