# list_posts

> List posts for a Blogizi project (defaults to published; metadata only).

HTML version: https://blogizi.com/docs/mcp-list-posts
Markdown version: https://blogizi.com/docs/mcp-list-posts.md

Lists posts for a project. Returns **metadata only** (no full markdown body) so agents can see what already exists before drafting.

Defaults to **published** posts. Pass `status` to include drafts or the schedule queue.

## Arguments

| Argument | Required | Description |
| --- | --- | --- |
| `status` | No | `published` (default), `draft` (unpublished without a future schedule), `scheduled` (draft with future `scheduledAt`), or `all` |
| `limit` | No | Max posts to return (default 50, max 100) |
| `projectSlug` | When multiple blogs | Same as `blogizi use` / other MCP post tools |

## Example result

```json
{
  "project": { "id": "665f…", "slug": "my-app" },
  "status": "published",
  "count": 2,
  "data": [
    {
      "id": "666a…",
      "title": "How we ship SEO posts",
      "slug": "how-we-ship-seo-posts",
      "description": "…",
      "keyword": "seo workflow",
      "status": "published",
      "coverImageUrl": "https://…",
      "publishedAt": "2026-10-01T12:00:00.000Z",
      "scheduledAt": null,
      "createdAt": "2026-09-28T09:00:00.000Z",
      "updatedAt": "2026-10-01T12:00:00.000Z"
    }
  ]
}
```

Use a returned `slug` with [update_post](/docs/mcp-update-post), [publish_post](/docs/mcp-publish-post), [schedule_post](/docs/mcp-schedule-post), or [upload_post_image](/docs/mcp-upload-post-image).
