*MCP › Reference › Operations › Internal services*

# List internal services

> Returns the plannable assignments not attached to an order, cursor-paginated.

Filter by status, type, project and an overlap window (`overlapsFrom`/`overlapsTo`: assignments whose period overlaps it). Sorted by start date. Creation and update date filters and filtering by assigned resource are not available on this listing.

TOOL `filmo_internal_services_list` · `internal-services:read` · 120/min · Server annotation: Read-only · Server annotation: Idempotent

## Arguments

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `limit` | integer | No | Page size (1-500). Defaults to 50. = `50` |
| `cursor` | string | No | Opaque cursor of the page to return. Pass the value of `pagination.nextCursor` from the previous response; treat it as opaque. |
| `sort` | string | No | Sort order: up to 3 comma-separated fields, each with a leading "-" for descending (e.g. "-updatedAt,name"). Sortable fields: startDate, endDate, title, status, createdAt, updatedAt. Defaults to "startDate". Ties are broken by id, so the order is stable across pages, and a cursor is bound to the sort it was issued with. |
| `status` | string | No | Filter by status: active, completed or cancelled. `active`, `completed`, `cancelled` |
| `serviceType` | string | No | Filter by type: crew (personnel), fleet (vehicles) or general. `crew`, `fleet`, `general` |
| `projectId` | string | No | Filter by associated project. |
| `overlapsFrom` | string<date> \| string<date-time> | No | Start of the overlap window: returns assignments whose period overlaps [overlapsFrom, overlapsTo]. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset. |
| `overlapsTo` | string<date> \| string<date-time> | No | End of the overlap window: returns assignments whose period overlaps [overlapsFrom, overlapsTo]. A bare day (YYYY-MM-DD, read in the business timezone) or an ISO 8601 instant with offset. |
| `includeTotal` | boolean | No | Set it to true to include `pagination.total`, the number of results that match the filters across all pages. Off by default. = `false` |

## Result

On success the result carries `structuredContent` with `data` and `meta`. These are the attributes of `data`.

| Name | Type | Description |
| --- | --- | --- |
| `id` | string | Unique assignment identifier. |
| `title` | string | Assignment title. |
| `status` | string | Status: active, completed or cancelled. |
| `startDate` | string<date-time> | Start in ISO 8601 UTC. |
| `endDate` | string<date-time> | End in ISO 8601 UTC. |
| `projectId` | string | Associated project; null if not applicable. |
| `createdAt` | string<date-time> | Creation date in ISO 8601 UTC. |
| `updatedAt` | string<date-time> | Last modification date in ISO 8601 UTC. |

*Call · filmo_internal_services_list*

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "filmo_internal_services_list",
    "arguments": {
      "limit": 20
    }
  }
}
```

*Result (generated from the schema)*

```json
{
  "structuredContent": {
    "data": [
      {
        "id": "id_8f2a1c",
        "title": "Example",
        "status": "<status>",
        "startDate": "2026-09-01T08:00:00Z",
        "endDate": "2026-09-01T08:00:00Z",
        "projectId": "proj_8f2a1c",
        "createdAt": "2026-09-01T08:00:00Z",
        "updatedAt": "2026-09-01T08:00:00Z"
      }
    ],
    "pagination": {
      "nextCursor": "eyJvIjo1MH0",
      "hasMore": true,
      "total": 1
    },
    "meta": {
      "rateLimit": {
        "limit": 120,
        "remaining": 119,
        "reset": 42
      }
    }
  }
}
```

## The same operation by REST

This tool runs [`GET /api/v1/internal-services`](https://docs.filmo.io/rest-api/endpoint-reference/internal-services/list-internal-services).

---

Canonical URL: https://docs.filmo.io/mcp/tools/internal-services/filmo-internal-services-list  
Last updated: 2026-10-25