list_content_plan

list_content_plan MCP tool: the content strategist's plan as it reads today. This week's missions, the rest of the month and the next months, each with its reason and the app page that holds it.

Updated 2026-10-17

list_content_plan returns the content plan of a project, exactly as the Plan tab of the Action plan reads it today. The plan mixes pages to create or rework (pillars and satellites of each business theme), page and template fixes from Site health, sources to get mentioned on and, for a local business, the local actions: areas to win, the Google Business Profile, reviews. Missions already done or excluded are gone. Every row carries its reason, computed from real data (search demand, who ranks, traffic potential), never free text from a model.

When to use

When an agent asks "what should I work on this week?" or "what is planned for next month?". Read period: ["week"] first: it holds four or five missions at most, articles at the pace the user chose. Once a mission is done, mark it with set_recommendation_status and the plan moves on.

Input

Field Type Default Description
projectId string (CUID) required Project scope.
filters.period array of week | month | later all week = this week's missions, month = the rest of the current month, later = the next months.
cursor string none nextCursor from the previous page.
limit number 20 1 to 100.

Response

{
  "data": [
    {
      "id": "content:best-crm-for-freelancers",
      "period": "week",
      "month": "2026-10",
      "kind": "page",
      "title": "Create: best crm for freelancers",
      "why": [
        "Best-of list",
        "1,900 searches/month",
        "hubspot.com ranks 1st",
        "~140 visits/month potential"
      ],
      "link": "/p/cmg7z0q1p0001l70f8h3k5m1n/plan",
      "step": "purchase",
      "started": false,
      "theme": "CRM for freelancers",
      "role": "satellite",
      "action": "create",
      "format": "listicle",
      "url": null,
      "mainQuery": "best crm for freelancers",
      "score": 42.7,
      "traffic": 140,
      "effort": "M"
    },
    {
      "id": "fix:robots-ai-blocked",
      "period": "week",
      "month": "2026-10",
      "kind": "blocking",
      "title": "AI robots blocked",
      "why": ["Blocks AI crawlers or search engines from reading your site."],
      "link": "/p/cmg7z0q1p0001l70f8h3k5m1n/site/robots-ai-blocked",
      "step": "blocking",
      "started": false
    }
  ],
  "pageInfo": { "hasMore": true, "nextCursor": "20", "totalCount": 31 },
  "summary": {
    "running": false,
    "computed": true,
    "month": "2026-10",
    "articlesPerWeek": 2,
    "done": 6,
    "beyondHorizon": 4,
    "computedAt": "2026-10-13T09:12:00.000Z"
  }
}
  • Rows come in screen order: this week, the rest of the month, then month by month. month is the calendar month (YYYY-MM) the mission falls in.
  • kind: page (create, rework, merge or split a page), fix (a page or template fix), blocking (a fix that keeps engines from reading the site), source (the sources to get on this month, prompts and local areas together), local (a Google Business Profile or reviews action). A local area's page is a page mission in the city_page format.
  • why: the reasons, strongest first. For a page: its format, then the score's reasons, then the traffic potential.
  • link: the app page that holds the mission (page sheet, Site health fix, local area). A page to create links to the Action plan, where its generation starts.
  • Page rows add theme, role (pillar or satellite), action, format, url (null for a page to create), mainQuery, score, traffic (visits per month at the target position) and effort (S, M, L).
  • started: the page or fix was already under way at the last monthly update.
  • summary.beyondHorizon: missions that enter as the plan is updated each month.
  • No strategy yet: data is empty and summary is null. Strategy launched but not computed yet: summary is { "running": true, "computed": false }.

Tips and patterns

  • One week at a time. The week is sized to be finished. Read it, do it, mark it done, read it again.
  • Details on demand. get_content_mission gives the components of a page's opportunity score: target and current Google position, stronger sites in the top 10.
  • Shared keys. A page fix in the plan has the same id as in list_priority_pages: done in one place, done everywhere.

Related tools

You can see where you stand today.

Free trial. Start tracking your AI visibility, no credit card.