Skip to main content

Examples

Ask in plain language; the assistant picks the tools. Each example lists the prompt, the tools it typically calls, and what you need.

Run a scraper and summarize the results​

Find a TikTok scraper on Lantfly, get 30 recent posts for #skincare, and summarize the main themes with links to the three most-liked posts.

Tools: search-actors → get-actor-details → call-actor → get-dataset-items.

Needs: a connection that isn't read-only, Start runs in an organization. The run is billed.

tip

For actors you use often, add them to the address (https://lantfly.com/mcp?actors=lantfly~tiktok-scraper). The assistant then gets a dedicated tool with the actor's input as its arguments and skips the search.

Follow a long run​

Start the web scraper on these 200 URLs. Don't wait; check back every few minutes and tell me when it's done and how many pages failed.

Tools: call-actor with wait_secs: 0 → get-run (with wait_secs) → get-run-log → get-dataset-items.

A tool call waits at most 120 seconds. For longer runs the assistant gets the run ID back and keeps polling.

Investigate a failed run​

My last run of the Shopee scraper failed. Read the log and tell me why.

Tools: list-runs (status FAILED) → get-run-log → get-key-value-record (INPUT).

Works on a read-only connection.

Monitor a hashtag​

In my "Brand monitoring" listening project, what happened with #glowup this week? Compare with last week and list the top creators.

Tools: list-listening-projects → get-project-dashboard (with compare_from, compare_to, q) → get-hashtag-trends → list-influencers.

Needs: listening.read, viewer role.

To keep following a hashtag, the assistant (as a manager) can add it as a source:

Add #glowup on TikTok and Instagram as sources and collect now.

Tools: get-my-project-access → add-source (twice) → collect-project-now (billed).

Label mentions​

Go through last month's negative mentions in "Brand monitoring". Fix any sentiment that is wrong, tag the ones about shipping with the "Delivery" attribute, and mark spam as irrelevant.

Tools: get-my-project-access → list-attributes → search-mentions (paged) → label-mentions (one action per call, up to 200 mentions each).

Needs: listening.write, analyst role. Marking irrelevant also needs the verify right. Labels the assistant sets are manual labels: the built-in AI never replaces them.

Work the verify queue​

Verify the unverified mentions across my projects from today. Add a note on anything unclear instead of guessing.

Tools: list-verify-queue → get-mention → verify-mentions.

Estimate the audience​

Estimate the gender and age split of the people talking about "Brand monitoring" in October. Use only public names and what they wrote, leave pages and shops out, and save the totals.

Tools: list-authors (paged) → the assistant's own analysis → save-audience-estimate → get-audience.

Lantfly stores only the counts (at least 10 authors; groups under 10 are hidden on the dashboard). The assistant must not send or keep labels per person. The estimate shows on the project dashboard next to Lantfly's own estimate.

Find leads​

Show me new leads from the last 7 days in "Home services", group them by what they ask for, and mark the spam ones as ignored.

Tools: list-leads (status new) → get-mention → update-lead.

Weekly report​

Create a report for "Brand monitoring" for last week, then give me a five-line summary from it.

Tools: create-report → get-report (once it's ready) or get-project-dashboard.

Call the server from code​

Agents you build yourself can call the server over plain HTTP:

agent_step.py
import os

import requests

def call_tool(name, arguments, id_=1):
res = requests.post(
"https://lantfly.com/mcp",
headers={"Authorization": f"Bearer {os.environ['LANTFLY_TOKEN']}"},
json={"jsonrpc": "2.0", "id": id_, "method": "tools/call",
"params": {"name": name, "arguments": arguments}},
timeout=150, # tool calls may wait up to 120 s
)
res.raise_for_status()
result = res.json()["result"]
if result["isError"]:
raise RuntimeError(result["content"][0]["text"])
return result["structuredContent"]

projects = call_tool("list-listening-projects", {})
print([p["name"] for p in projects["items"]])

For production scripts that don't need an AI, the REST API and the SDKs are a better fit.