generate_ideas
This tool starts a background job and returns a job_id immediately — it does NOT return posts directly. After calling this you MUST call check_ideas_status with the returned job_id and keep polling until status is 'completed' or 'failed'. Tell the user generation is in progress while you wait.
Generate new X/Twitter post ideas using the current Ideas Lab engine (two modes only). Generation often takes 1–3 minutes — after this tool returns a job_id you MUST keep calling check_ideas_status until completed or failed. Do not stop after 30 seconds.
IMPORTANT: Before calling this tool, always ask the user for any missing required information. Do not make assumptions or use defaults.
Do NOT offer deprecated options: remix, niche, viral, or myPosts.
Required information to collect:
1. **Writing style** — exactly one of:
- "myStyle": write in the user's personal tone
- "creators": write in a chosen creator's style
2. **Idea source** — exactly one of:
- "user": ideas from the user's own posts
- "creator": ideas from a chosen creator
3. **Number of posts** — how many ideas to generate (5–20).
4. **Creators** — required when ideaSource is "creator" OR writingStyle is "creators". At least one X/Twitter username (without @).
Only call this tool once you have all required answers from the user.Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"writingStyle": "<writingStyle>",
"ideaSource": "<ideaSource>"
},
"name": "generate_ideas"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| creators | No | X/Twitter usernames (without @). Required when ideaSource is 'creator' or writingStyle is 'creators'. Example: ['naval', 'paulg'] | |
| ideaSource | Yes | Where ideas come from. 'user' = the user's own posts. 'creator' = a chosen creator. Do not use niche, viral, or myPosts. | |
| social_set | No | The social set (brand) this is for: its name, id or one of its handles. Omit when the user has one set. | |
| writingStyle | Yes | Writing style. 'myStyle' = the user's personal tone. 'creators' = a chosen creator's style. Do not use remix. | |
| number_of_posts | No | Number of posts to generate (5-20). Defaults to 10. | |
| user_instructions | No | Optional free-form instructions to guide the AI generation. Example: 'Focus on practical startup lessons' or 'Keep tone punchy and contrarian'. |