What you get
| Capabilities | Post search / Account search / Account details / Account posts / Post details / Fetch comments |
|---|---|
| Response fields | Post url, text, author (id/handle/name), created_at, likes, reposts, replies, cover |
| Integration | MCP (Streamable HTTP) or REST (GET or POST) |
| Billing | Pay per call, automatic refund on failure |
Response schema
Whichever platform you call, post-type responses share the same structure: items[] holds platform / id / url / author{id,handle,name} / text / created_at / stats{...} / cover; creator responses are handle / name / bio / followers / following / posts / verified / avatar / url. Switching platforms needs no changes to your parsing code.
MCP or REST
For models, use MCP: add https://lucydomi.com/mcp to your client config and it selects the tools itself. For code, use REST: https://lucydomi.com/mcp/v1/search_posts, where GET with query parameters or POST with a JSON body both work and return an identical structure.
Copy and run
curl -s https://lucydomi.com/mcp/v1/search_posts \
-H "Authorization: Bearer $BUSYBEE_API_KEY" \
-H "Content-Type: application/json" \
-X POST \
-d '{"platform": "twitter", "keyword": "coffee", "limit": 3}'import os, json, urllib.request
KEY = os.environ["BUSYBEE_API_KEY"]
req = urllib.request.Request(
"https://lucydomi.com/mcp/v1/search_posts",
data=json.dumps({"platform": "twitter", "keyword": "coffee", "limit": 3}).encode(),
headers={"Authorization": f"Bearer {KEY}", "Content-Type": "application/json"},
method="POST",
)
data = json.load(urllib.request.urlopen(req, timeout=60))
for it in data["items"]:
print(it.get("url"), it.get("text", "")[:60])Sample response
This is a real production response, truncated to one item and with billing fields removed.
{
"ok": true,
"platform": "twitter",
"tool": "search_posts",
"count": 1,
"items": [
{
"platform": "twitter",
"id": "2113381699765628934",
"url": "https://x.com/quietwolfzz/status/2113381699765628934",
"author": {
"id": "2034537496894398464",
"handle": "quietwolfzz",
"name": "𝚀𝚞𝚒𝚎𝚝 𝚆𝚘𝚕𝚏"
},
"text": "Nobody ever asked if you wanted coffee with your rest.\n\nIn 1952, coffee sellers gave your break a product’s name. Your boss kept the minutes.\n\nWatch. Learn. Go quiet. 🐺\n\n📖 The 7 levers they use on all of us (free guide): \nhttps://t.co/3QtN8q53jr\n\n🎬 Made with @higgsfield_ai 👇\n\nhttps://t.co/vMzUntJTnl\n\n#coffeebreak #coffee #history #psychology",
"created_at": "Thu Oct 22 21:27:16 +0000 2026",
"stats": {
"likes": 1806,
"comments": 34,
"shares": 280,
"views": 37304,
"collects": 780
},
"cover": null
}
]
}FAQ
Do I need my own scraper or proxy?
Can I use it commercially?
Can I raise the number of results?
Related
One key, six platforms
Same fields, same MCP endpoint; switching platforms only changes one parameter. Sign up and get $0.2 in trial credit.
See pricing Try one call