---
title: "List skills"
method: GET
path: "/skills"
tags: ["Skills"]
---

# List skills

`GET /skills`

List skills the caller has access to. Filter by team, search by name, or narrow to a specific creator, related MCP server, or agent.

## Query parameters

- `team_id` string
- `search_query` string
- `sort_order` 'newest' | 'popular' | 'most_used'
- `page_size` integer
- `cursor` string
- `creator_user_id` string
- `related_server_id` string
- `agent_id` string
- `unused` string

## Response `200`

Skills matching the provided filters.

- object
  - `skills` object[]
    - `id` string — Unique skill identifier.
    - `name` string
    - `description` string
    - `team_id` string — ID of the team that owns the skill.
    - `created_at` string, date-time, nullable — ISO 8601 timestamp of when the skill was created.
    - `updated_at` string, date-time, nullable — ISO 8601 timestamp of when the skill was last updated.
    - `metadata` object — User-defined metadata. May include `related_server_ids` (array of MCP server IDs the skill references).
    - `usage_count` integer, nullable
    - `view_count` integer, nullable
    - `last_used_at` string, date-time, nullable
    - `version_id` string, nullable — ID of the version exposed by this payload (the current draft, by default).
    - `major_version` integer, nullable
    - `is_deployed` boolean, nullable
    - `version_created_at` string, date-time, nullable
    - `creator` object, nullable — Creator of the skill. `null` when no creator is recorded.
      - `id` string, nullable
      - `first_name` string, nullable
      - `last_name` string, nullable
      - `email` string, nullable
      - `profile_picture` string, nullable
  - `next_cursor` string, nullable — Opaque cursor for the next page, or `null` when there are no more results.
  - `total_count` integer, nullable — Total number of skills matching the filters across all pages.

## Other responses

- `400` — Bad request — invalid query parameter (for example, non-integer `page_size`).
- `401` — Unauthorized — missing or invalid API key.
- `403` — Forbidden — the caller does not have skill access on the requested team.
- `500` — Internal server error.

---

[API](https://skmtc.dev/gumloop/apis/public-api.md) · [All operations](https://skmtc.dev/gumloop/apis/public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gumloop/public-api/revisions/115f2d6ce387/schema)
