> ## Documentation Index
> Fetch the complete documentation index at: https://docs.leposta.com/llms.txt
> Use this file to discover all available pages before exploring further.

# create_note

> Save a note for the current user to pick up later, optionally scheduled for a date or tied to a project.

> Save a note (a 'posta') for the current user to pick up later: an idea, a pending task, or where some work was left. Use it when the user asks to remember, note down, or leave something for later. Write it so it makes sense without this conversation: what it is, where things stand, and the next step. Write it in the user's language. When working in a git repository, set project to the repository folder name and add repo, branch and files to refs. Never include passwords, API keys, tokens or customer data.

**Annotations:** `readOnlyHint: false`, `destructiveHint: false`, `idempotentHint: false`, `openWorldHint: false`.

## Input

**title** `string` *required*

Short title shown in the inbox. 1 to 80 characters; line breaks become spaces.

**next\_step** `string`

The first action when picking this up. Up to 1,000 characters.

**body** `string`

What it is and where things stand. Up to 8,000 characters.

**refs** `object[]`

Up to 20 inert references. LePosta never opens them.

**properties**

**type** `string` *required*

One of `repo`, `branch`, `commit`, `file`, `url`, `other`.

**value** `string` *required*

For example `acme/web`, `feat/sessions` or `src/api/sessions.ts`. Up to 500 characters.

**lines** `string`

For files: a line or a range, like `12` or `12-40`.

**project** `string`

Project name; in a git repository, the repository folder name. Stored trimmed and lowercase. Up to 100 characters.

**surface** `object` (default: \{"mode": "next\_open"})

When the note shows up. See [Lifecycle](/concepts/lifecycle.md#when-a-posta-shows-up).

**properties**

**mode** `string` *required*

One of `now`, `next_open`, `at`, `project_open`. `project_open` requires `project`.

**at** `string`

Required with `mode: "at"`, not allowed otherwise. ISO 8601 with UTC offset, in the user's local time, in the future and at most 180 days ahead. Example: `2026-10-22T09:00:00-03:00`.

## Example

```json Arguments theme={null}
{
  "title": "Review the tenant migration",
  "next_step": "Run the dry-run script against staging and compare row counts.",
  "project": "posta-mcp",
  "refs": [
    { "type": "repo", "value": "acme/platform" },
    { "type": "file", "value": "scripts/migrate-tenants.ts" }
  ],
  "surface": { "mode": "at", "at": "2026-10-22T09:00:00-03:00" }
}
```

```text Result theme={null}
Saved posta 01M5F4D1NEATEFTXG8ZVFN8KKY "Review the tenant migration". It will show up on 2026-10-22 09:00 -03:00.
```

The last sentence depends on the mode:

| Mode | Result ends with |
| - | - |
| `next_open` | `It will show up the next time you open your computer or Claude Code.` |
| `now` | `It will show up right away.` |
| `at` | `It will show up on <date in your time zone>.` |
| `project_open` | `It will show up the next time you open <project>.` |

## Errors

Field limits, dates, a missing `project` for `project_open`, detected secrets, the hourly limit and a full inbox. See [Errors](/mcp/errors.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.