list_content_sources

List content sources

List recent workspace repurposing jobs.

Authorization and permissions

Requires a valid delegated OAuth token and access to the selected workspace.

OAuth scope
mcp:read
Workspace requirement
Authorized workspace and current membership required

Current workspace member.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "limit": {
      "default": 20,
      "description": "Limit.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "offset": {
      "default": 0,
      "description": "Offset.",
      "minimum": 0,
      "type": "integer"
    },
    "team_id": {
      "description": "Consented workspace ID.",
      "minimum": 1,
      "type": "integer"
    }
  },
  "required": [
    "team_id"
  ],
  "type": "object"
}

Result schema

{
  "additionalProperties": false,
  "properties": {
    "has_more": {
      "description": "Has more.",
      "type": "boolean"
    },
    "sources": {
      "description": "Sources.",
      "items": {
        "additionalProperties": false,
        "description": "Sources item.",
        "properties": {
          "created_at": {
            "description": "Created at.",
            "type": "string"
          },
          "error": {
            "description": "Error.",
            "type": "string"
          },
          "id": {
            "description": "Public content-source sqid.",
            "maxLength": 32,
            "minLength": 1,
            "type": "string"
          },
          "ideas": {
            "description": "Ideas.",
            "items": {
              "additionalProperties": false,
              "description": "Ideas item.",
              "properties": {
                "content": {
                  "description": "Content.",
                  "type": "string"
                },
                "id": {
                  "description": "Id.",
                  "minimum": 1,
                  "type": "integer"
                },
                "order": {
                  "description": "Order.",
                  "minimum": 0,
                  "type": "integer"
                },
                "post_id": {
                  "description": "Post id.",
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "required": [
                "id",
                "content",
                "order",
                "post_id"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "requested_post_count": {
            "description": "Requested post count.",
            "type": "integer"
          },
          "status": {
            "description": "Status.",
            "enum": [
              "pending",
              "processing",
              "completed",
              "failed"
            ]
          },
          "title": {
            "description": "Title.",
            "type": "string"
          },
          "url": {
            "description": "Url.",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "id",
          "url",
          "title",
          "status",
          "error",
          "requested_post_count",
          "created_at"
        ],
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "sources",
    "has_more"
  ],
  "type": "object"
}

Example arguments

{
  "limit": 20,
  "offset": 0,
  "team_id": 42
}

Example result

{
  "has_more": false,
  "sources": [
    {
      "created_at": "2026-10-01T14:05:00+00:00",
      "error": "",
      "id": "S4n8Qp2L",
      "requested_post_count": 10,
      "status": "processing",
      "title": "Customer interview research",
      "url": "https://example.com/research/customer-interviews"
    },
    {
      "created_at": "2026-10-01T14:05:00+00:00",
      "error": "",
      "id": "S4n8Qp2L",
      "requested_post_count": 10,
      "status": "completed",
      "title": "Customer interview research",
      "url": "https://example.com/research/customer-interviews"
    }
  ]
}

Errors and retry

Requires current workspace membership; conversion also requires draft creation permission or an owned profile. Unknown and cross-workspace source/idea IDs return not found. Source creation accepts public HTTPS HTML only (1 MB maximum); fetch failures appear asynchronously in status=failed and error. AI usage is tracked and mcp:ai creation is limited to 30 calls per user per hour; no additional MCP AI quota is enforced.

Reads are safe to retry and pending/processing sources should be polled with get_content_source. Before retrying source creation after an ambiguous response, list sources to avoid duplicate jobs. Idea conversion is atomic and returns the existing draft on retry; read state before retrying deletion.

Effects, limits, and source

Workspace roles, subscription and AI usage limits, approval rules, and server rate limits are enforced at call time. Rate-limit responses identify when to retry; scheduled work returns state rather than holding the request open.

services.repurposing.list_content_sources

Message on LinkedIn