MarketMage Notebook: Saved Ideas & Seller Profile avatar

MarketMage Notebook: Saved Ideas & Seller Profile

Pricing

from $0.20 / 1,000 notebook reads

Go to Apify Store
MarketMage Notebook: Saved Ideas & Seller Profile

MarketMage Notebook: Saved Ideas & Seller Profile

The memory of the MarketMage plugin for Claude, kept in your own Apify account: the product ideas you checked with their verdicts and key numbers, versions tried, decisions, linked watchlists, and your seller profile as bands only. Read, export or delete it any time.

Pricing

from $0.20 / 1,000 notebook reads

Rating

0.0

(0)

Developer

CleanPull

CleanPull

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Features

Limited permissions

Share

The MarketMage notebook is the memory of the MarketMage plugin for Claude, kept in your own Apify account. It is mostly run by the plugin, not by hand: with it, Claude remembers across chats the product ideas you checked (verdict, confidence, key numbers, date), the versions you tried, the decisions you made, the watchlists linked to an idea, and your seller profile as bands only (budget band, how you fulfil, experience, channels, goal, country, and how you like answers laid out). You can read it, export it and delete it at any time. Reading or writing it costs a fraction of a cent.

How to use the MarketMage notebook

  1. In Claude, ask the MarketMage plugin to keep a notebook. The plugin runs this actor in your Apify account for you: it starts the notebook, saves your profile and the ideas you check, and reads them back in later chats. You don't need to open the actor yourself.
  2. To read, export or delete it yourself, open MarketMage Notebook on Apify and go to its input form.
  3. Pick an Operation: read to see what is kept, upsertProfile with a Seller profile, addEntry or updateEntry with an Entry, deleteEntry with an Entry id, or deleteAll with Confirm: delete the whole notebook on. The first write, when the account has no notebook yet, needs Start the notebook on.
  4. For a read, narrow it with Kinds, Search, Since and Entries returned, and set Detail to full for an export.
  5. Start the run. Open the Result view to read OK, Message, Refused because, Warnings and Entries by kind.
MarketMage notebook input: operation upsertProfile, seller profile in bands, start the notebook

What the MarketMage notebook gives you

  • "Remember my situation." Claude saves your profile as bands ("$1k–5k · own stock · first time · US"), so the next chat's "For you" advice starts from it without asking again.
  • "What did I check last month?" Claude reads the ideas with their verdicts and numbers, newest first, or only those matching a word.
  • "I tried the steel version; I'll test it." A variation and a decision are linked to the idea they belong to.
  • "Which watchlist was for the garlic press?" Watch links keep the task and schedule ids next to the idea.
  • "My landed cost is $4.35 a unit." Your own cost for an idea is kept with its currency and date, so the next margin check starts from it.
  • "I use a screen reader." Your answer layout (no tables, or plain text) is kept with your profile.
  • "Forget all of it." One run deletes the whole notebook and its store.

MarketMage notebook privacy

  • In your account, nobody else's. The notebook lives in a key-value store named marketmage-notebook in your own Apify account (Storage → Key-value stores): one record per entry, one for the profile, a small meta-v2 record and a small status record (below). CleanPull never sees it. The actor runs with limited permissions, so it can open only that store and its own run storages.
  • Bands, never amounts. The profile takes bands only. A budget given as an amount ("about $2,000") is turned into its band (1k-5k) and the amount is not stored. Any other profile field holding an amount is refused. Your own landed cost per unit is the one figure of yours an idea may keep: a number with its currency and date, never text.
  • No personal or secret data. Every field is checked: email addresses, phone numbers, card and bank numbers, API keys, tokens, passwords, and amounts of your own money in free text ("my budget is $3k", "I have 2k to spend") are refused, while market figures ("leaders sell at $19.99") are kept, and the refusal names the field without repeating the value.
  • Only the schema. A field outside the schema below is refused, not silently stored. A profile value outside a field's bands (say an option a newer plugin offers) leaves that one field out, with a warning in the result row, and saves the others. Free text is capped (a note at 300 characters, an idea label at 80), and the whole notebook at 500 entries and 200 KB.
  • Nothing half-saved. A refused input saves nothing and says why in the result row. Every write is checked first, then saved in one piece.
  • Versioned. The meta-v2 record names the schema version (now 2). Later builds read older notebooks, serving anything readable and naming what is not; a build never writes to a notebook from a newer one.
  • Only on request. The notebook is created only by a write with startNotebook: true, which Claude sends once you ask it to keep a notebook. Any other write on an account without one saves nothing, so a deleted notebook is not brought back by a late call (a run may leave an empty store, which holds nothing).

MarketMage notebook input

FieldKeyWhat it does
Operationoperationread (default), upsertProfile, addEntry, updateEntry, deleteEntry or deleteAll
Seller profileprofileFor upsertProfile: the fields to set, as bands; null clears one
EntryentryFor addEntry (a whole entry) and updateEntry (only the fields to change; null clears one)
Entry id, Delete linked entries tooentryId, deleteLinkedFor updateEntry and deleteEntry; deleting an idea also deletes its linked entries unless turned off
Kinds, Search, Since, Entries returnedkinds, search, since, limitFor read: only some kinds, entries mentioning a word (with their linked entries), from a date, at most N (50 by default)
DetaildetailFor read: compact (default) or full (with created and changed times, for an export)
Start the notebookstartNotebookOn only for the first write after you asked to keep a notebook: it creates the notebook. Without it, a write to an account with no notebook saves nothing
Confirm: delete the whole notebookconfirmDeleteAllFor deleteAll: must be true

The profile

FieldValues
budgetBandunder-1k, 1k-5k, 5k-25k, 25k-plus (an amount is turned into its band)
fulfilmentdropship, own-stock, fba, print-on-demand, maker (they make it)
experiencenone, some, brand
channelsany of none, store, amazon, tiktok, etsy, ebay, email-list, social
goalside-income, brand
marketCountrya two-letter country code: US, GB, DE…
skillsoptional: any of ads, content, sourcing, design
timePerWeekoptional: under-5h, 5-15h, 15-30h, 30h-plus (hours are turned into a band)
answerShapeoptional: default, no-tables, plain-text (for screen readers)

Entries

FieldOnWhat it holds
kindallidea, variation, decision or watch
ideaallA short label, up to 80 characters; linked entries take their parent's
parentIdvariation, watch (needed); decision (optional)The idea (or variation) it belongs to
dateallYYYY-MM-DD, default today
marketplaceallFor example amazon.com
verdict, confidenceidea, variationgo, maybe, no; high, medium, low
signalsidea, variationCounts: { "favours", "against", "neutral", "unknown" }
keyNumbersidea, variationUp to 10 market metrics, numbers only, from a fixed list (priceMedian, medianReviews, moq, marginPercent…)
landedCostPerUnitidea, variationYour own landed cost per unit: { "amount": 4.35, "currency": "USD", "asOf": "2026-10-20" }; a number above 0 and at most 100,000, a three-letter currency code, a day not after today
changevariation (needed)What differs from the idea, up to 120 characters
decisiondecision (needed)pursue, test, park or drop
watchwatch (needed){ "actor": "cleanpull/…", "taskId", "scheduleId", "label" }
noteallUp to 300 characters

The same idea noted twice on the same day (a retried call, or a recheck) updates the first entry instead of adding a second.

Example inputs

Start the notebook and save the profile (the first write):

{
"operation": "upsertProfile",
"startNotebook": true,
"profile": {
"budgetBand": "1k-5k",
"fulfilment": "own-stock",
"experience": "none",
"channels": ["none"],
"goal": "side-income",
"marketCountry": "US"
}
}

Note an idea checked:

{
"operation": "addEntry",
"entry": {
"kind": "idea",
"idea": "Silicone garlic press",
"marketplace": "amazon.com",
"verdict": "maybe",
"confidence": "high",
"signals": { "favours": 3, "against": 2, "neutral": 1, "unknown": 0 },
"keyNumbers": { "priceMedian": 14.99, "medianReviews": 1850 },
"note": "Paid pressure is the main risk."
}
}

Read what was noted about it:

{ "operation": "read", "search": "garlic" }

MarketMage notebook output

MarketMage notebook output: Result view with operation, OK, message, refused because, entries by kind and size

One row, in the Result view, with the answer first.

Example rows

Illustrative: the row for the second example input above (note an idea checked), on a notebook that held no ideas yet:

{
"operation": "addEntry",
"ok": true,
"message": "Added idea i-yysyr5.",
"error": null,
"schemaVersion": 2,
"counts": { "idea": 1, "variation": 0, "decision": 0, "watch": 0 },
"entry": {
"id": "i-yysyr5",
"kind": "idea",
"idea": "Silicone garlic press",
"verdict": "maybe",
"date": "2026-10-23"
},
"sizeBytes": 683,
"sizeLimitBytes": 200000,
"store": {
"name": "marketmage-notebook",
"id": "…",
"consoleUrl": "https://console.apify.com/storage/key-value-stores/…"
}
}

A read adds profile, entries (newest first), matched, returned and more. A profile saved with a field left out says which in warnings. A refused input has "ok": false and the reason in error, for example entry.note looks like it holds an email address. To export everything, read with detail: "full" and a high limit, or download the records from the store.

RowBilled
ok: true, a write savedOne notebook write, plus entries read beyond 20
ok: true, a read of a notebook with something in itOne notebook read, plus entries read beyond 20
ok: true, an empty or missing notebook, or deleteAllFree beyond the start fee
ok: false, a refused input or operationFree beyond the start fee

Notebook status record

Every write also keeps a small status record in the store: that the notebook is on, the profile's bands and answer layout, and how many entries of each kind it holds. No idea labels, notes or numbers. A notebook saved before 0.2 gets its status record on its first read (not charged extra). If the record is missing, the notebook may still be there: a read run is the sure answer. Claude can read it at the start of a chat straight from the store, without running this actor:

GET /v2/key-value-stores/~marketmage-notebook/records/status
{
"notebook": "on",
"schemaVersion": 2,
"profile": {
"budgetBand": "1k-5k",
"fulfilment": "maker",
"answerShape": "no-tables",
"updatedAt": "…"
},
"counts": { "idea": 3, "variation": 1, "decision": 1, "watch": 0 },
"updatedAt": "…"
}

A 404 means no notebook (or one last written before this record existed; its next write adds it). A read never writes it, and deleting the notebook deletes it.

Pricing

EventAll plans
Notebook read (a read of a non-empty notebook)$0.20 per 1,000
Entries read (each entry record read beyond the first 20 of a run)$0.01 per 1,000
Notebook write (a profile or entry saved, changed or deleted)$0.30 per 1,000

Each run also has a $0.00005 start fee. Reading an empty notebook, deleting the whole notebook and refused inputs cost only the start. A write is charged only once it is saved. Most reads stay within the first 20 entries; a search of a full 500-entry notebook adds about half a cent.

Limits

  • One notebook per Apify account. Each entry is its own record, so changes from several chats at once never overwrite each other. Two changes to the same entry or to the profile at the same moment: the later one wins.
  • 500 entries and 200 KB. Delete old ideas to make room; a full notebook says so instead of dropping anything.
  • The notebook belongs to this actor. Other actors (with limited permissions) cannot open it. You can always open, download or delete it yourself in Storage.
  • Nothing found: a read of an empty or deleted notebook, or a refused input or operation, still succeeds: the one row has ok and a message or error saying what happened, and nothing is charged. The run fails only on an unexpected error of its own.

FAQ

How much does the MarketMage notebook cost per chat?

A fraction of a cent, the same on every Apify plan: a read of a notebook with something in it is $0.0002 and each write (a profile or entry saved, changed or deleted) $0.0003. Reading the notebook once and saving two ideas is 3 runs: $0.0008 plus 3 start fees of $0.00005, about $0.001 in all. Entry records read beyond the first 20 of a run add $0.00001 each, so a search of a full 500-entry notebook adds about half a cent. Reading an empty notebook, deleting the whole notebook and refused inputs cost only the start fee (see Pricing above).

Do I need to run the notebook myself?

No. The MarketMage plugin runs it from Claude: the notebook is created only by a write with startNotebook: true, which Claude sends once you ask it to keep a notebook, and Claude can check the status record at the start of a chat without a run. Run it yourself when you want to read, export or delete what is kept.

What is the difference between a read and the status record?

A read run returns your profile and the entries (newest first, filtered by Kinds, Search and Since) and is charged as a notebook read. The status record is a small record in the store, read without a run: whether the notebook is on, the profile's bands and answer layout, and how many entries of each kind it holds, with no idea labels, notes or numbers.

Why was something not saved?

  • No notebook yet: a write to an account with no notebook (never started, or deleted) saves nothing; the first write needs Start the notebook.
  • Personal or secret data: email addresses, phone numbers, card and bank numbers, keys, tokens, passwords and amounts of your own money in free text are refused; error names the field.
  • Outside the schema: a field the schema does not have is refused; a profile value outside its bands is left out with a warning in warnings, and the rest is saved.
  • Full: at 500 entries or 200 KB, delete old ideas first.
  • deleteAll without confirming: Confirm: delete the whole notebook must be on.
  • Restricted access: when the store cannot be opened under restricted access, nothing is read or saved and nothing is charged; error says how to run it.

What does the notebook keep about me?

Your seller profile as bands only (budget band, how you fulfil, experience, channels, goal, country, and optional skills, time per week and answer layout), and the entries: ideas with their verdict, confidence, signal counts, key market numbers and your own landed cost per unit, variations, decisions and watch links, each with a short label, date and note. A budget given as an amount is stored as its band; personal and secret data are refused (see MarketMage notebook privacy above).

Can I use the MarketMage notebook through the API?

Yes. Start runs through the Apify API or an API client with an Operation and its fields, and read the one row in the Result view or the RUN_SUMMARY record (the same row). The status record can be read straight from the store: GET /v2/key-value-stores/~marketmage-notebook/records/status.

How do I export or delete my notebook?

Export: run read with Detail set to full and a high Entries returned, or download the records from the marketmage-notebook store in Storage → Key-value stores. Delete one entry with deleteEntry and its Entry id (its linked entries go too, unless Delete linked entries too is off), or everything with deleteAll and Confirm: delete the whole notebook: the profile, every entry and the store itself, for good. You can also delete the store yourself in Storage.

Where is my notebook stored, and who can see it?

In a key-value store named marketmage-notebook in your own Apify account. CleanPull never sees it. The actor runs with limited permissions, so it can open only that store and its own run storages, and other actors with limited permissions cannot open it.

Other CleanPull actors for product research:

Use it from Claude

The MarketMage plugin runs these actors from a Claude chat.

Found it useful? A rating on the Store helps others find it.

Changelog

  • 0.2 (November 2026): maker fulfilment; a profile value outside its bands leaves only that field out, with a warning; answerShape in the profile; your own landedCostPerUnit on an idea or variation; the status record for a check without a run.
  • 0.1 (October 2026): profile in bands, ideas, variations, decisions and watch links; read with filters; delete one entry or everything; personal and secret data refused.