MCP Tools
Content

list_content

List all content documents visible to you as a single unified array, whether created from scratch or from a blueprint. Use a content_id to fetch full content or to create a share link. Pass a `search` query to rank results by semantic relevance instead of recency.

Input Schema

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "description": "Optional natural-language query. When provided, results are ranked by SEMANTIC relevance to this query instead of recency, and each item gains a relevance_score. Omit or leave empty for the normal recency-ordered list."
    }
  }
}

Output Schema

{
  "type": "object",
  "required": [
    "content"
  ],
  "properties": {
    "content": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "name",
          "content_id"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Content name."
          },
          "stage": {
            "type": "string",
            "description": "in_progress or ready."
          },
          "web_url": {
            "type": "string",
            "description": "Direct URL to view this content in Marcora."
          },
          "category": {
            "type": [
              "object",
              "null"
            ],
            "properties": {
              "id": {
                "type": "integer"
              },
              "name": {
                "type": "string"
              }
            },
            "description": "{id, name} or null if uncategorized."
          },
          "projects": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Project names this content belongs to."
          },
          "content_id": {
            "type": "string",
            "format": "uuid",
            "description": "Content identifier."
          },
          "created_by": {
            "type": "string",
            "description": "Name of the creator."
          },
          "visibility": {
            "type": "string",
            "description": "private or team."
          },
          "relevance_score": {
            "type": [
              "number",
              "null"
            ],
            "description": "Present only when a `search` query was given. A number (cosine similarity 0–1; higher = more relevant) when the item was scored against embeddings, or null when the item is not embedded yet and could not be scored (sorts last). Absent entirely when no search was provided. Cross-comparable with list_context_items relevance_score."
          }
        }
      }
    }
  }
}

Instructions

Returns all content visible to the current user as a single unified array. Content created from scratch (canvas) and from blueprints (deliverable) are merged with consistent field names. The same content_id can be passed to get_content, update_content, and create_external_share.

Semantic search (search)

Pass a natural-language search query to rank results by SEMANTIC relevance instead of recency. Each returned item then carries a relevance_score:

  • Absent (field not present) — no search was given; the list is ordered by recency.
  • A number (cosine similarity 0–1, higher = more relevant) — the item was scored against embeddings.
  • null — the item is not embedded yet and could not be scored; it sorts LAST.

Scores are cross-comparable with list_context_items. To find the best reference material across both content and context, call both tools with the SAME search, merge the results, and take the top matches by relevance_score. A typical flow: search → present the top matches to the user for confirmation → fetch full text with get_content → feed the chosen content_ids into create_content's reference_content_ids to generate from them.

Use search when the user asks to find or surface content by topic or meaning rather than browse the recency list.

Example prompts

  • "Show me all my content"
  • "List my documents"
  • "What content have I created?"
  • "Find my content about onboarding emails"

Clients that previously read the bare array must now read response.content.

Scroll to Top