list_content
What it does
Returns a paginated list of content items on the workspace board. Use it to find what's in editing, what's waiting for approval, what's already shipped — or to scope a downstream tool (e.g. analyze_video on every item in Attesa Approvazione).
Items are sorted by the soonest of posting_date → deadline → created_at so the queue surfaces what's urgent first.
Input schema
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| status | string | optional | — |
Status filter (e.g. Attesa Approvazione, In Editing, Approvato, Da modificare, Postato). |
| limit | number | optional | 50 |
Max rows to return. Hard cap is 200. |
Example call
json{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "list_content", "arguments": { "status": "Attesa Approvazione", "limit": 25 } } }
Response shape
json{ "items": [ { "id": "c_abc123def456", "title": "CS — Reel 042", "brand": "CorpoSostenibile", "stato": "Attesa Approvazione", "editor_assigned": "[email protected]", "posting_date": "2026-05-23", "deadline": "2026-05-22" } ] }
Each item is a thin row — full details (description, custom fields, attachments) come from get_content.
Usage from Claude Desktop
prompt"Show me everything waiting for approval — title, brand, deadline."
Claude picks list_content with { "status": "Attesa Approvazione" } and renders the table for you.
Usage from Python
pythonimport requests LUMIQA = "https://lumiqa.io/mcp/your-slug" HEADERS = {"Authorization": "Bearer lk_live_xxxxxxxxxxxx"} r = requests.post(LUMIQA, headers=HEADERS, json={ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "list_content", "arguments": {"status": "Attesa Approvazione", "limit": 25} }, }) import json items = json.loads(r.json()["result"]["content"][0]["text"])["items"] for it in items: print(it["id"], it["title"], it["deadline"])
Usage from Node
javascriptconst r = await fetch("https://lumiqa.io/mcp/your-slug", { method: "POST", headers: { "Authorization": "Bearer lk_live_xxxxxxxxxxxx", "Content-Type": "application/json", }, body: JSON.stringify({ jsonrpc: "2.0", id: 1, method: "tools/call", params: { name: "list_content", arguments: { status: "Attesa Approvazione", limit: 25 }, }, }), }); const { result } = await r.json(); const { items } = JSON.parse(result.content[0].text); console.log(items.length, "items");
Required env vars / integrations
- None — reads the workspace D1 database directly.
Known limitations
limithard-caps at200. For larger pulls iterate by date or rely onlist_calendar.- No cursor-based pagination yet — results are bounded by
limit. - Status strings are case-sensitive and use the workspace's Italian labels by default (
Attesa Approvazione,Approvato, etc.).