Luma ACTION
List Events
List events managed by the connected Luma calendar. Use this to find event IDs for Get Event, Get Guests, Add Guests, or Send Invites. This only returns events managed by the calendar, not external events merely listed on it. See the documentation
- Action
- Read only
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Luma account once, then configure and run List Events from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "luma-list-events",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
luma: { authProvisionId: "apn_xxxxxxx" },
after: "After",
before: "Before",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "luma-list-events",
"configured_props": {
"luma": { "authProvisionId": "apn_xxxxxxx" },
"after": "After",
"before": "Before"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "luma",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "luma-list-events",
arguments: {
after: "After",
before: "Before",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
after After | string | Return events starting after this ISO 8601 datetime, for example 2026-05-01T00:00:00Z. Optional |
before Before | string | Return events starting before this ISO 8601 datetime, for example 2026-06-01T00:00:00Z. Optional |
paginationCursor Pagination Cursor | string | The next_cursor value from a previous Luma list response. Optional |
paginationLimit Pagination Limit | integer | The number of items to request. Luma enforces a server-side maximum. Optional |
platforms Platforms | string[] | Event platforms to include. Defaults to luma; pass both luma and external to include external events. Optional |
status Status | string | Calendar submission status to include. Luma defaults to approved. Optional |
sortColumn Sort Column | string | The column to sort by. Luma currently supports start_at. Optional |
sortDirection Sort Direction | string | The order to return records in. Optional |
fetchAll Fetch All Pages | boolean | When enabled, keep following next_cursor until there are no more pages or Max Pages is reached. Optional |
maxPages Max Pages | integer | The maximum number of pages to retrieve when fetching all pages. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- luma-list-events
- Version
- 0.0.2
- App
- Luma
- Authentication
- API key
- Read-only
- Yes
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗