- mcp
- workflow
How to keep an idea inbox that Claude can read
Park ideas from Claude Code or Cursor over MCP without leaving your task, then let your assistant list, search and finish them later.
· 13 min read
On this page
- Why an inbox beats a notes app
- What "readable by Claude" means
- Connect it once
- Park an idea mid-task
- Pick it back up
- A full session, start to finish
- Patterns that work well
- Working across several repos and editors
- Keep notes as you go
- Move ideas along
- A weekly review that takes five minutes
- Reminders close the loop
- What to do when you disagree with the assistant
- Using the dashboard alongside the assistant
- Keeping the inbox small
- Common problems
- Privacy
- Why this beats a notes app
You are halfway through a feature when a better idea shows up. Switching to a notes app costs you the thread. Ignoring it means it is gone by tomorrow.
An idea inbox that your AI assistant can write to fixes both. You stay in the editor, and the idea lands somewhere you will see again. This guide shows how to build that habit with Shelvd: what to say, which tools run, how to review the inbox and how to keep it from filling with clutter. Each step uses behavior that the server actually implements.
Why an inbox beats a notes app#
Notes apps fail at capture and at review.
At capture, they ask you to leave the work. Even a fast app costs ten seconds and a lost train of thought. During a hard debugging session, that cost is high enough that you skip the note.
At review, they ask you to come back on your own. Nobody opens a note pile for fun. Items without a date or an owner rot, and the pile grows until you stop trusting it.
An inbox that your assistant can read changes both. Capture becomes a sentence in the chat you already have open. Review becomes a question you can ask at the moment it matters: what is waiting for this repo?
What "readable by Claude" means#
Claude, Cursor and other MCP clients can call external tools. If your inbox exposes tools over the Model Context Protocol, the assistant can save and read ideas the same way it reads files.
Shelvd exposes ten tools:
park_ideasaves a new idea cardlist_ideasandsearch_ideasfind ideasget_ideaandupdate_idearead and edit onestart_idea,complete_ideaandsnooze_ideamove it alongdelete_ideaandclear_ideasremove one, or a whole scope such asdoneor a single project
You rarely name these tools yourself. You speak in plain words, and the assistant picks the tool. Knowing what exists helps you ask for things the assistant can actually do.

Connect it once#
Add the hosted MCP server to Claude Code:
claude mcp add --transport http -s user shelvd https://www.shelvd.dev/api/mcpRun /mcp and sign in when prompted. There are no API keys to copy. Other clients take the same URL. The connect guide covers Cursor, Claude Desktop and everything else.
Park an idea mid-task#
Tell the assistant what you want, in plain words:
Park this for Tuesday: add CSV export to the reports page.
The idea is saved with a title and details. The due date is read in your timezone, so "Tuesday", "in 3 hours" and "friday 3pm" all work. Dates run forward, so a weekday name always means the next one. A date with no time gets your default reminder time.
If the date cannot be parsed, the idea is still parked, just without one. The reply says so, and you can fix it with a follow-up.
The context that gets attached#
The assistant also attaches context: the client you used, the repo, the branch, up to 20 file paths and a short summary. With no project named, the repo becomes the project. If neither exists the idea lands in the Inbox, and the tool tells the assistant to set a project with update_idea.
This context is what turns a vague note into something you can resume. "Add CSV export" alone is a wish. "Add CSV export, repo acme/reports, branch feature/filters, files ReportTable.tsx and export.ts" is a starting point.
The server instructions ask the assistant to read your git remote and branch before it parks. If you notice ideas arriving with no repo, tell the assistant once to include context every time.
Good prompts for parking#
Short, specific requests work best. Compare:
- Weak: "Remember that thing about the export."
- Strong: "Park this for Tuesday: stream the CSV export instead of buffering, because large accounts time out."
The strong version gives a clear title, a date and the reason. The reason goes in the details, where future you will want it. A title should say what to do. The details should say why.
A few phrasings that all work:
Park an idea: add rate limiting to the webhook route.
Park this with no date: rename the settings tab to Preferences.
Park this for tomorrow morning, project billing: handle failed renewals.

Pick it back up#
Later, ask what is waiting:
What ideas have I parked for this repo?
The assistant calls list_ideas, which can filter by project, by the editor an idea came from, and by status (parked, due, snoozed or done). With no status it shows everything that is not done. Results come back as a table, with overdue ideas first, then due, then snoozed or upcoming, then undated, then done. Within a group, earlier due dates come first.
By default it shows 20 ideas. You can ask for more, up to 200. You can also filter by a date range with from and to, which is handy for questions like "what is due this week?".
If you ask about a project that does not exist, the tool replies with the list of known projects. That small detail saves a round trip when you misremember a name.
Searching#
When you remember a word and not a project, use search:
Search my ideas for webhook.
search_ideas looks in the title, details, project and notes. It is a plain case-insensitive text match, not fuzzy search, so use a word that probably appears in the text. It searches every status by default, including done ideas, which is useful when you suspect you already handled something.
Starting work on an idea#
This is the step most people miss. Say:
Let's work on the CSV export idea.
The assistant calls start_idea, which returns a brief: title, project, due time, details, repo and branch, the file list, the saved summary and any notes. The assistant now has the same context you had when you parked it.
The brief is labeled as stored user data and not as instructions. That matters for safety. An idea is free text, and free text could contain anything, including words that look like commands. Labeling it keeps the assistant treating it as information about your task and not as orders.
A full session, start to finish#
Here is one realistic exchange, described step by step.
You are fixing a pagination bug in an orders list. While reading the query code you spot a missing index. It is not the bug you are fixing, so you do not touch it. You say: "Park this for next Monday: add an index on orders.created_at, the list query scans the whole table."
The assistant reads your git remote and branch, then calls park_idea. The reply names the idea, the project taken from your repo, its id and the due time, Monday at your default reminder time. You finish the pagination fix.
Two days later you are in a different repo. You ask: "What ideas are due this week across all my projects?" The assistant calls list_ideas with a date range. The orders index idea shows up in the table with its project name, so you know which repo it belongs to.
On Monday your phone buzzes at the due time. You open your editor in the orders repo and say: "Start the orders index idea." The assistant calls start_idea and gets the repo, branch, files and the original reason. It opens the query file and proposes a migration. You review it, merge it and say "mark it done".
Count the context switches. There were none. Nothing was copied, retyped or looked up.
Patterns that work well#
Some situations produce good ideas again and again. These are worth recognizing.
Side findings during a fix. You spot a smell, a missing index or a stale comment while chasing something else. Park it with a date a few days out, and return to the fix.
Follow-ups after a merge. A pull request is good enough to merge, but you know of two small improvements. Park each as its own idea in the same project so they do not get lost in review comments.
Questions to research. "Look up how the queue retries failed jobs" is a legitimate idea. Park it with the files you were reading, and the answer will have its starting point ready.
Feature thoughts at the wrong time. Product ideas arrive in the middle of unrelated work. Park them with no date. They sit in the backlog until your weekly review.
Reminders to yourself. "Rotate the staging key on Friday" works as a dated idea. The push and email carry the reminder.
Working across several repos and editors#
Each idea records its project and the editor that parked it. If you split work across Claude Code in the terminal and Cursor for front-end work, you can see which came from where.
list_ideas accepts a provider filter, so you can ask for "ideas I parked from Cursor". The dashboard has the same filter. The known providers are Claude Code, Cursor, Windsurf, Codex, VS Code and Claude.ai, with a catch-all for others.
Project names are matched case-insensitively. "Billing" and "billing" are the same project when you ask for a list, so you do not need to match capitalization.
Keep notes as you go#
Ideas change as you learn more. Use update_idea to append a note without rewriting the idea:
Add a note to the CSV export idea: the streaming helper already exists in lib/stream.ts.
Notes append to the existing notes, separated by newlines. You can also change the title, details, project or due date in the same call. If you give a due date it cannot parse, the tool changes nothing and says so, so a typo never half-applies an edit.
Move ideas along#
Four actions cover the rest of an idea's life.
Snooze. "Snooze the webhook idea until Monday" or "snooze it for 90 minutes". Snooze takes either a date phrase or a number of minutes, and it moves the due time. The reminder cycle restarts from the new time.
Complete. "Mark the CSV export idea done." The idea moves to done and stops nagging. Done ideas also stop counting toward the free plan limit.
Delete. "Delete the rename-tab idea." This removes one idea for good.
Clear. "Clear all done ideas." This is the bulk action, and it has a safety check. Without a confirm flag, the tool only reports what it would delete and tells the assistant to ask you first. The scope is done, all or project:<name>. Ask for a preview, read the list, then confirm.
A weekly review that takes five minutes#
An inbox only works if you look at it. A short routine keeps it honest.
Once a week, ask your assistant:
- "List my overdue ideas." Decide on each: do it, snooze it or delete it.
- "List ideas due this week." Check that the dates are realistic.
- "List parked ideas with no date." Pick two to schedule and leave the rest.
- "Clear done ideas." Preview first, then confirm.
The goal is not an empty inbox. The goal is an inbox you trust. When every item is either scheduled, snoozed on purpose or knowingly undated, you stop worrying about what you forgot.
Reminders close the loop#
Capture is half the job. The other half is getting the idea back in front of you.
On any plan, an idea with a due date sends one push and one email at that time. Each carries Done and Snooze links, so you can clear it without opening the app. A daily digest at 8:00 local time lists what is overdue.
On Pro, Shelvd keeps nudging every 15 minutes by default until you act. After 20 nudges it slows to hourly, and it stops 24 hours after the due time unless you widen the window. Quiet hours, 22:00 to 08:00 by default, keep it from waking you.
Ideas with no date never nag. They wait in the backlog until you look. That is by design: parking is not the same as scheduling. For a longer look at reminders, read Shelvd: park the idea, finish the feature.
What to do when you disagree with the assistant#
Assistants make small mistakes. They pick a poor title, guess the wrong project or park a two-part idea as one card. None of these is hard to fix.
Ask for a correction in plain words: "Change the title to Stream the CSV export" or "Move that idea to the billing project". The assistant calls update_idea with only the fields that change. Everything else stays as it was.
If an idea holds two tasks, park the second one as a new card and edit the first. If an idea was parked by mistake, delete it. Because deleting one idea is a single named action, it is hard to remove the wrong thing by accident, and the bulk action asks for confirmation first.
Using the dashboard alongside the assistant#
The assistant is the fast path, and the dashboard is the overview. They share the same data.
The dashboard groups ideas into Due today, Overdue, Upcoming and Parked backlog. You can filter by project or by editor, search by text, switch to a board view and open a calendar in Month, Week or Agenda form. Each idea shows its captured context, and a copy button builds a resume prompt you can paste into any assistant.
Use the dashboard when you want to see the whole shape of your inbox at once. Use the assistant when you want to act without leaving the code.
Keeping the inbox small#
The free plan holds 50 open ideas. Done ideas do not count, so finishing or clearing old ones frees room. Pro removes the limit.
Even without a limit, a small inbox is a useful one. Some habits that help:
- Write titles as actions. "Stream the CSV export" is easier to act on than "CSV thing".
- Park one idea per call. Two ideas in one card cannot be completed separately.
- Date what you will really do. An undated idea is fine. A falsely dated idea teaches you to ignore reminders.
- Delete what no longer matters. Deleting is a decision, and decisions keep the pile honest.
Common problems#
Ideas land in the Inbox. The assistant did not send a project or repo. Ask it to update the idea's project, and tell it to include context from now on.
The date came out wrong. Check your timezone in settings. Dates are read in the timezone saved on your account. Use the detect button there, or set it by hand.
Park fails with a quota message. You have 50 open ideas on the free plan. Complete or delete some, or upgrade.
The list is too long. Filter by project or status, or ask for a date range.
The assistant does not call Shelvd. Name the server in your request, as in "park this in shelvd". If the tools are missing, run /mcp or restart the client.
Privacy#
Idea text is encrypted at rest. Shelvd stores only what the assistant sends, which is the title, details, notes, repo, branch, file names and a summary. It does not read your files. Each request is scoped to the account in your token, and each user is limited to 60 calls per minute.
You can export everything as JSON or Markdown from settings at any time, on any plan.
Why this beats a notes app#
An idea you can only reach by opening another app tends to stay unread. An idea your assistant can surface while you are already working gets seen at the moment it is useful.
Start small. Next time a thought interrupts you, say "park this", keep working, and ask what is waiting at the end of the week.
Park your next idea in Shelvd
Save it from Claude, Cursor or Codex. Get nudged until it ships.
Launch App