# Assist With Buying — for your AI 96 tools · 10 scopes · 61 writes MCP endpoint: https://assistwithbuying.com/mcp This page as HTML: https://assistwithbuying.com/for-your-ai Connect or narrow a connection: https://assistwithbuying.com/connect Long-form agent contract: https://assistwithbuying.com/llms-full.txt Assist With Buying assists a person's AI with buying and purchases. It has no AI of its own. Every sentence on a record here was written by the person or by an assistant they connected, and everything you write is attributed to you by name and dated. ## Reads - buying_list_trips [mission.read] Page through the Trips, past and planned, with a cursor for the next page. - buying_get_trip [mission.read] One Trip: its overview and a page of stops, journal entries or decisions, with each stop's source link, address precision, hours and who chose it; the day's time limits, visit lengths by sale type and the Going stops still to check; and what the day came to — spend, pieces, unpriced and voided lines, and retail against paid, per stop and in total. - buying_get_brief [mission.read] The opening read: what is waiting, what is in flight, and what changed since last time. - buying_search_workspace [mission.read] One bounded search across the workspace — a page of results and a cursor, never a whole table. - buying_get_mission_context [mission.read] One Mission in one call: its brief, criteria, options, observations, sources and decisions, and the Items, Types and Places it is linked to. Reach for this before assembling context by hand. - buying_list_items [mission.read] Page through Items across every Mission, filtered and bounded. - buying_get_item [mission.read] One Item: its photographs, the prices seen, its condition, every Mission it is in, and what has been decided about it. - buying_list_suggestion_decisions [mission.read] What the person already decided about earlier suggestions, and the standing rule each refusal left. Read this before proposing. - buying_list_places [mission.read] The Places the person saved and the shared directory, theirs first — a sale listed as " · by ". - buying_get_place [mission.read] One Place in full: where it is, its hours as recorded, the notes on it, today's price with its confidence, what your record says about how it prices, and its parent Place — a sale's company, with what it inherits, or a company's sales, upcoming and past. - buying_get_prediction_accuracy [mission.read] How well your price predictions at a Place, a company or a Type have matched the tags — with the pairs behind the score. - buying_list_lists [mission.read] The person's Lists, or one List or entry found by name. - buying_get_list [mission.read] One List: a page of its entries with every field, its runs, a rule List's computed rows, and whether it is shared (read-only). - buying_list_capture_queue [queue.read] The Queue items the person handed over, with what each one asks and where its photos were taken — one of their Places, or the town, street and business the location names. - buying_get_queue_activity [queue.read] One Queue item's history — who moved it, when, and to what. - buying_get_capture_image [media.read] Open one private photograph through the protected media path: a large one as its 1600px copy, or a region at full resolution, with its barcodes, where it was taken in words (and an older automatic reading where one was made before 2026-09-27). - buying_get_capture_images [media.read] Open several private photographs in one call, paging any that do not fit, each with its barcodes and where it was taken in words. - buying_get_photo_sheets [media.read] Scan a big set of photos — an ask, an Item, a Trip or a list of ids — as numbered contact sheets of up to thirty thumbnails, paged, with a legend from each number to its photo. - buying_get_voice_note [media.read] Hear one voice note the person recorded on an ask. On a Pro account an automatic transcript comes with it; otherwise you get the audio only, and transcribe it yourself or ask. - buying_list_public_locations [places.read] Search the shared public directory of shops, markets and venues. - buying_get_preferences [mission.read] The AI Interaction Profile and every Buying Preference marked readable, with version numbers, in one call. The detail read; buying_get_brief comes first. - buying_list_types [mission.read] Types, a page at a time, with counts and the price range each carries. - buying_get_type [mission.read] One Type: what to check, what they go for, where to look up prices, a page of its Items and purchases, and the notes on it. - buying_find_comparables [mission.read] Comparable prices from your own saved record, one price kind and one currency at a time, with the properties that matched, what was excluded and why. It hands back evidence; it never issues an appraisal. - buying_list_purchases [mission.read] Purchases in a date range, optionally for one Type, List, Trip or Item. What the rule lists read. - buying_list_notes [mission.read] The notes on one Item, Type, List, Place, Mission or Trip, in the person's words, with any reading kept apart. - buying_list_records_needing_titles [mission.read] Walk the records whose title or Recap still needs writing, one kind and one page at a time, each with a short digest to write from. - buying_read_library_document [mission.read] Read a Library record's text back — a saved write-up or a Source kept as text — one page at a time, so a long list like a movie collection is read in pieces and never summarised from its title. - buying_get_prompt [mission.read] The prompt library this site shows at /prompts, together with the person's own copies: every prompt with when to use it, or one in full by slug. Where they have their own version of a prompt, that is the one it returns. - buying_get_research [mission.read] Read the kept research back — the sources, the retained page text, what was checked and what was blocked — by pass, by record, by source, or every capture in the order it was kept. - buying_get_research_file [research.files.read] Read one back: what it is, a bounded page of its text with the byte and line numbers a citation needs, the picture inline, or one authorized download per part for a client that can reassemble it. - buying_prepare_dataset [mission.read] Prepare thousands of selected observations or propertyFacts as ordered JSONL parts you can page through, labelled selected_inputs, mixed_live or complete_at_cutoff — a label the server decides and refuses rather than grants. Other record families and Type subtrees exceeding 500 Types are refused. Ordinary reads answer conversation-sized questions; this answers 'all of them'. - buying_what_do_i_own [mission.read] What the person already owns, by words, Type or Item: how many, and each purchase's date, price and Place. Information to mention, never a reason to discourage. - buying_find_prior_sightings [mission.read] Find earlier Item/observation evidence by text or stored photo hash, with dated prices, booth and honest elapsed intervals; bounded and paged. - buying_manage_connection [no permission needed] Read this connection's own authority, or file one exact request for the person to approve. It changes no permission by itself. ## Writes - buying_save_trip [mission.write] Create or correct a Trip — its title, Recap, dates, area, purpose, the Lists or Missions it belongs to, and the map links of the day (a main map plus one per community sale). - buying_save_trip_stop [mission.write] Save one stop on a Trip: the sale or shop, its kind, freshness and fit, the seller's own words for where it is, when it was last checked, the planned arrive and leave-by times, its own map link, the community sale it is a house in, and your recommendation kept apart from the person's own choice. - buying_save_trip_stops [mission.write] Save up to 30 stops on one Trip in one call — a whole researched sale day, community sales before the houses that name them — all or nothing. - buying_add_trip_entry [mission.write] Append research, a photo reading, a visit note, a correction or a decision to a Trip or one of its stops. - buying_save_mission [mission.write] Create or correct a Mission — its title, Objective, Recap and status; one field at a time by missionId. links and unlinks connect the Items, Types and Places it is about, as many as it needs. - buying_save_option [mission.write] Save one option under a Mission, with what it costs and where it came from. - buying_save_comparison [mission.write] Save the options side by side, on the things that actually differ. - buying_log_sources [mission.write] Record the sources a piece of research rests on, with what each one said. - buying_save_decision [mission.write] Write down what the person chose and why, pointing at the research it came from. - buying_save_complete_result [mission.write] A finished piece of work in one call: the answer, its options, its sources and its decision. - buying_set_item_status [mission.write] Move an Item along its lifecycle — watching, passed, bought. - buying_propose_suggestion [mission.write] Raise a suggestion and leave it waiting. Nothing accepts one but the person. - buying_create_place [mission.write] Add a Place to this workspace — a shop, a branch of a shared chain, an estate-sale company, or one of its sales, with its parent Place (the company or the chain), a private point for matching photos, and a bin store's weekly price schedule when it has one. Private; it does not reach the directory. - buying_import_sale [mission.write] One call for a sale you have already read on any listing: the company when there is one (garage and yard sales need none), the sale, a stop on a Trip and the listing's photographs; a re-import retries photos still held. The site never reads the listing itself. - buying_import_sales [mission.write] Import up to 50 researched sales with per-row receipts; default to Trip stops without creating sale or company Places. Reuse source URLs or keys; opt into Places explicitly. - buying_use_public_place [mission.write] Use a Place from the shared directory in this person's own Places, as a reference rather than a copy. - buying_link_place [mission.write] Point one of this person's own Places at its shared directory entry, keeping everything on it. - buying_unlink_place [mission.write] Stop one of this person's own Places pointing at a shared directory entry; nothing on it is lost. - buying_add_place_observation [mission.write] Keep a workspace-private note about a Place — including "today it's $1", checked against its price schedule. - buying_record_visit [mission.write] Open or close a visit to a Place. - buying_save_place_description [mission.write] Write the long description of a Place. - buying_answer_appraisal [mission.write] Answer an Appraisal already on the record with your reasoning, the sources you checked (empty ones too) and its prices. The verdict is always shown as yours, named and dated. - buying_log_appraisal [mission.write] Write an Appraisal and its answer in one call, on a new or named Item, with how you got there and the prices it rests on. It also answers a question you queued earlier and closes that Queue ask. - buying_update_appraisal [mission.write] Fill in the facts around an Appraisal without changing its answer. - buying_record_outcome [mission.write] Record what the person actually did — bought, walked, negotiated. - buying_save_list_item [mission.write] Put a thing on a List, creating the List by name if it does not exist. - buying_record_list_price [mission.write] Record what a List entry cost, with where and when. - buying_attach_photo [media.write] Attach one photograph to a Queue item or an appraisal on an Item. Filed as attached by you, named and dated — never as one the person took. - buying_attach_photos [media.write] Attach up to 25 direct image URLs or existing workspace photos across records, with independent results and original-byte retention. - buying_update_capture_queue_item [queue.write] Claim, hold, finish, fail or ask a question about a Queue item you were handed. Finishing links every record the work changed, or for a workspace-wide cleanup says what was done and how many records it touched. A Needs you ask you already answered in chat closes with resolve_answered_elsewhere, and a reply says editedSinceClaim when the person changed the ask while you held it. - buying_queue_for_later [queue.write] Write down work the person ASKED to have done later, as ordinary Waiting asks marked "Left by your AI, at your request". Nothing starts. Your own ideas are suggestions, never this. An ask may carry a thing — title, photographs, what it is listed at, where it was seen, its condition — and that becomes an Item at once, with the ask linked to it. - buying_store_check [queue.write] In a store: claim every batch of photos the person snapped on Out, with the Place, today's price, their wants and sizes, and what they already own — one call. - buying_save_store_results [mission.write] In a store: save one Item and appraisal per thing in a store batch, and close the batch with its answer card — one call. - buying_find_or_create_public_location [places.contribute] Add a place to the shared public directory. - buying_add_location_contribution [places.contribute] Attach a short privacy-scrubbed note to a directory entry. - buying_withdraw_location_contribution [places.contribute] Withdraw a directory note you contributed. - buying_save_item [mission.write] Save one Item, or add what is now known about it: Type, asking price, condition, Place, Mission, evidence. - buying_save_items_batch [mission.write] Save up to 200 Items in one call. A sweep of listings is one request, not one per listing. - buying_capture [mission.write] A whole sale in ONE call and one approval: up to 50 Items with their prices, photographs and what you did about each, and one purchase covering any of them. - buying_save_prices [mission.write] Save up to 100 dated prices on your Items in one call — the Tag, asking elsewhere, sold, estimate, MSRP, paid — each saying how you learned it (marked on it, in a listing, told to you, a sale record, worked out, published), which market it came from, how well it is known, and the condition it applies to. Resending a key corrects that price and keeps the old one. - buying_save_purchases_batch [mission.write] Record a whole receipt at once: every line, quantity and price paid, one Place, one date, optional Trip and List. - buying_update_list [mission.write] Add, tick, skip, annotate or reorder up to 100 entries on a List in one call, and start or close a run. - buying_save_type [mission.write] Create or update a Type: overview, what to check, the price range and its basis, where to look up prices, and the group Type it is filed under. - buying_save_price_sheet [mission.write] One company’s dated price sheet, with its photos, and every line as a seller-attributed price on its Type. - buying_save_types_batch [mission.write] Write down up to 100 kinds of thing in one call. A Type's name is its identity, so re-sending a batch updates rather than duplicates. - buying_report_issue [mission.write] Tell the people who run Buying that a tool here is broken. It goes to them, never into the person's workspace, and tokens in the request you paste are stripped before anything is stored. - buying_save_note [mission.write] Leave a note in the person's words on a record, with your own reading kept apart and attributed. - buying_save_preference [mission.write] Save a preference the person explicitly asked you to save, as a new attributed version. Inferences go through propose. - buying_propose_preference [mission.write] Offer an inferred preference with its evidence. It waits for the person to adopt or dismiss it. - buying_save_item_decision [mission.write] Record a decision on an Item — pass, shortlist, choose or defer — with its reason and the List or Mission it belongs to. - buying_save_titles_and_recaps [mission.write] Write titles and Recaps for up to 100 records — Missions, Queue asks, Items, Types, Places, Lists, Trips, Library — in one call. Never replaces the person's own words without a stated reason. - buying_save_list [mission.write] Create or edit a List: behaviour, shelves, description, due date, cadence, rule, Places — or copy one shared by link. Sharing stays the person's. - buying_set_library_membership [mission.write] Link existing Library records to the Items, Types, Places and Missions they are about and put them on the shelf or take them off, up to 100 at once. A write-up about one thing lives on that record, off the shelf. The research is never removed. - buying_save_library_document [mission.write] Keep a finished write-up (Research) or somebody else's document kept whole (a Source, text or a kept file) as a Library record: a title, a body, and the Items, Types, Places and Missions it is about, all in one call — on the shelf only when it helps beyond that one thing. Saving the same key or title again corrects it rather than duplicating it. Instructions go to buying_save_prompt. - buying_save_prompt [mission.write] Keep the person's own version of a prompt in their workspace — a fork of a library one, or theirs from scratch. Private to them, and each new wording keeps the one it replaced. - buying_save_research [mission.write] Keep what a piece of research actually found: each source it used, the page text it retained from them, and the sites that would not load. Saved in batches as the work goes, so an interrupted session loses nothing. - buying_attach_research_file [research.files.write] Keep the source itself — a page, a PDF, an original a listing published — on a research pass, in parts of at most 2 MiB so a real file larger than a single request can get here at all. Frozen and immutable once finished; a correction keeps a new file beside it. - buying_save_identity [mission.write] Decide what is one thing: two spellings of a person's name, two Types that are one kind of thing, and the same object posted on three sites. It proposes matches and never merges on a resemblance; every merge keeps both records and can be taken back. - buying_void_purchase [mission.write] Take a purchase line recorded by mistake out of every total, with a reason. It is never deleted: it stays on the record struck through, and restoring it puts it back everywhere. - buying_archive_type [mission.write] Archive a Type that holds nothing. Refused while it still has Items or child Types, and the refusal names them. - buying_merge_type [mission.write] Fold one Type into another: its Items, purchases, prices, Notes and child Types move, the target keeps its own words, and the old Type is archived behind a redirect. ## The first-call sequence 1. Read the brief. buying_get_brief is one call and tells you what is waiting on the person, what is in flight, and what changed since you were last here. It is the cheapest orientation there is. 2. Read what the person wants remembered. Their AI Interaction Profile is how they want to be worked with; their Buying Preferences are standing facts about how they buy. buying_get_brief carries them and buying_get_preferences has the detail; every Preference is open to you unless the person switched it to Only me. Neither is a permission: guidance never widens what you may touch. 3. Check the Queue. buying_list_capture_queue. Anything waiting is work the person already asked for. Pick it up before starting anything new, and give it a short title that says what the answer will be about. 4. Read what exists before researching. Missions, Items, Lists, Places, prices, decisions. Most questions have half an answer on the record already, and buying_search_workspace finds it in one bounded call. 5. Work in the open. Save research with its premise and its sources, and link it to the Mission, Item, List or Place it belongs to in the same call. 6. Propose; never assume. Options are proposals. Only the person's own pick becomes a decision — there is no tool that accepts a suggestion, and that omission is deliberate. ## Fewer calls, same result 1. Read once, at the start. buying_get_brief and buying_list_capture_queue together are two calls. Do not re-read them mid-session unless the person says something changed. 2. Ask for a page, not a table. Every list tool returns a bounded page and a cursor. Fetch the next page only if the first did not answer the question. 3. Link in the same call. Every save tool accepts the Mission, Item, List or Place it belongs to. Saving and then linking is two calls for one thought. 4. Prefer the summary tool. buying_get_mission_context is one call that replaces five reads. Reach for it before assembling a Mission's context by hand. 5. Finish an Appraisal in one call. buying_log_appraisal opens and answers together, and buying_save_complete_result saves an answer with its options, sources and decision at once. ## Tips 1. Preferences exist. Ask before you save one. This person may have written standing preferences and an AI Interaction Profile. They reach you only when the person marked them readable, and there is no tool that lets you write one — if they tell you something durable, tell them it belongs on their Buying Preferences page and let them put it there. 2. You may not be the only assistant here. Several assistants can be connected to one account. Everything you write is attributed to you by name and dated, and the person can see every connection's recent requests. Read what another assistant already saved before repeating its work. 3. Start with buying_get_mission_context, not a dozen small reads. One call returns a Mission's brief, criteria, options, observations, sources and decisions. Use it before any research, and reach for the narrower reads when you need one thing. 4. Search before you research. buying_search_workspace covers Missions, Items, Lists, Places and earlier research. A question about a model's usual price or a seller's terms has usually been answered once. Read that first, then research only the gap. 5. Titles are yours to give. A Queue item often arrives without one. When you pick it up, give it a short title that says what the answer will be about, not a restatement of the question. The person sees it in every view. 6. Some things are better done on the site. Say so. Adding many photographs or reordering a List by hand is faster in the browser than through this connection. Tell the person plainly and point them at the page. 7. Record decisions as decisions. When the person chooses, save it with buying_save_decision and the research it came from. Ranking is a proposal, not a pick, and recording what someone did is not deciding for them. 8. Observed-on dates carry no verdict. A price from March is not stale and a price from yesterday is not true. Report what was checked and when, and keep asking prices, comparables and prices paid apart. 9. A refusal is information, not a wall. Buying re-reads the person's grant on every call. If you are refused, say which permission was missing and point them at Connect your AI — never retry the same call, and never ask them to paste a key. There is no key. 10. This page changes. The people who run this site update it as assistants change. Read it at the start of a session, not once. ## What each permission covers - mission.read — Read your Missions and the records around them (read only) Read your Buying brief, search your workspace, and open one Mission's options, criteria, comparison, dated observations, sources, and decisions — plus your items across every Mission, the places you have saved with your visits and your description of each, your lists and what you paid last time, your Types, your purchase record, your notes, and what you have already decided about earlier suggestions. It also reads your AI Interaction Profile and the preferences you marked readable — those only, and a count of the rest — and your own copies of prompts, so your wording is what it works from. Seller contact values are never included. - mission.write — Save Mission research (can change things) Create and correct Missions, options, comparisons, sources, and dated decisions — including one-call complete results. Also raise a suggestion for you to decide, save or correct Items one at a time or two hundred in one call, move an item along its lifecycle, record what you decided about one, keep Types and Notes, record a whole receipt of purchases, work your lists and start or close a run, keep a private note about a place, open a visit and write your description of a place, record what things cost, ask and answer an appraisal on an Item in one call, and record what you actually did about it. It can save a preference YOU asked for and propose one it inferred; only you adopt a proposal. It can keep your own copy of a prompt when you give it your wording, which stays private to you and leaves the site's Prompts library untouched. Writes are replay-safe and keep their source and AI provenance. Completing an ask through buying_answer_appraisal or buying_log_appraisal with queueItemId also needs queue.write; omit queueItemId for an ordinary appraisal save. - queue.read — See work you handed over (read only) List the Queue items you sent to your AI and read their activity history. Transcripts, legacy photo readings, photo locations, automatic titles and summaries, temporary names and media URLs also require effective media.read without media withholding; ordinary Queue metadata remains available. - queue.write — Work your Queue items (can change things) Claim, hold, complete, fail, release, or ask you a question about a Queue item you handed over. When you ask it to, it can also write an ask down in your Queue for later — marked "Left by your AI, at your request", and nothing it writes down starts on its own. A Queue item never widens any other permission. Completing one through an appraisal save needs this permission as well as mission.write. When you say "check" in a store, it picks up the photos you snapped on Out. - media.read — Open your captured photos and voice notes (read only) Retrieve the private images and voice notes attached to your Queue captures, through the protected media path rather than a public web fetch. A photo comes back as you took it, including where and when your camera says it was taken, so your AI can sort a photo dump by visit and Place. On Pro accounts a recording may carry an automatic transcript, bounded to five minutes measured from stored audio; an unmeasurable recording keeps its audio and reports transcriptError. Your AI can hear the audio itself, and every one of these reads is listed for you. - media.write — Attach a photo to your records (can change things) Attach photographs to your own records — an Item, a Type, one of your saved Places, an appraisal, a Queue item you handed over, or a stop on a Trip — and choose which photo leads an Item, a Type or a Place. It can send a picture it already has, give Buying the web address of a listing's photo for Buying to fetch on its behalf, or file a picture already in your workspace (such as one on a Queue ask) onto one of your records, which moves no bytes and keeps that picture's own history. It can also keep a close-up of part of a photo already in your workspace — a label, a mark, one thing from a busy photo — as a new photo on one of your records, saying which photo it came from; the photo it came from is never changed. A new picture is checked and kept exactly as sent — including where and when your camera says it was taken, which Buying reads so your AI can file it under the right Place — stored privately in your workspace and filed as attached by that AI, named and dated, never as one you took. Buying fetches over https only, never follows a redirect, checks all resolved destination addresses and pins an approved public address for the connection. Capture-time and location metadata are included on upload replies, replays and links to existing photos. The AI cannot make a photo public, cannot put one on the shared Places directory, and cannot take one back afterwards — you can remove it or turn this off whenever you like. - places.read — Look up shared venues (read only) (shared, not private) Search the shared public directory of shops, markets, and venues. This is community data, not your private workspace. - places.contribute — Add shared venue context (can change things) (shared, not private) Add a venue to the shared public directory and attach short privacy-scrubbed notes, or withdraw a note you contributed. Contributions carry no link back to your Missions. - research.files.read — Read retained research files (read only) Open the pages, documents and original files kept as evidence behind your research — the retained material itself, not just the summary of it. - research.files.write — Keep research files (can change things) Retain a page, document or original file as evidence on your research, so a later assistant can reread the source rather than trusting a summary. ## The rules every connection runs under - Signing in through OAuth and allowing the client is the approval. From that moment the connection holds mission.read, mission.write, queue.read, queue.write, media.read, media.write, places.read, places.contribute, research.files.read, research.files.write until the person removes it. Buying issues and receipts that authority separately from OAuth identity. - That baseline is the "ordinary-research" policy, version 5, decided 2026-09-28. Every grant records which policy issued it. A connection issued under an older version and never narrowed by the person is widened to the current default on its next call, and the ledger entry names both versions. - A selected-Mission connection must cover every existing subject of a continued pass and every supplied subject on the same grant. Supplying an allowed Mission does not authorize a different pass. An unreadable, empty or incomplete existing subject set is refused; the boundary reads up to 50 subjects and refuses larger sets for a narrowed connection. - Active approvals from before connections lost their expiry date remain usable, however many historical grants the account holds. Discovery, connection status and authorization use the same complete client lookup, including eligible unbound approvals; revoked grants and grants bound to another client never supply authority. - Nothing is withheld pending a request: every permission in this vocabulary is granted by signing in. https://assistwithbuying.com/connect is where the person narrows a connection or revokes it if they want less, never where they go to unlock ordinary use. - Attaching a photograph writes stored bytes rather than sentences, and "media.write" is nevertheless granted by signing in: this is a product for photographing things at sales, and the assistant that writes an Appraisal is the one holding the picture of what it appraised. The care that decision needs is in the tool rather than in the tier. A photograph an assistant attaches is filed as attached by that assistant, named and dated, never as one the person took; one at a time, under a hard size ceiling, with the bytes re-read and checked server-side; it lands as a private file, kept exactly as sent with its location and capture time (private to the workspace; a share only ever serves a location-free copy), and nothing an assistant may call can make it public or take it back. The person removes it in the product, and narrows the permission in one click at https://assistwithbuying.com/connect. - An assistant proposes and answers; the person decides. A suggestion is raised with buying_propose_suggestion and waits: there is no tool that accepts one, and an Appraisal never becomes a Mission by machine — growing one is the person's own action. Both omissions are deliberate. - Work the person ASKED to have done later is written down with buying_queue_for_later: an ordinary Waiting ask, marked "Left by your AI, at your request", that starts nothing. An idea the assistant had on its own is never filed that way; it is a suggestion, and waits for the person. - buying_queue_for_later handles each ask atomically; a refusal writes nothing for that ask. Replay an operationId with the complete original ask, including thing fields; changed content conflicts, and legacy thing asks without their original payload cannot safely replay. - buying_capture returns a saved Item and its receipt even when only the outcome is refused: saved[].outcomeRefused describes that refusal instead of claiming saved[].outcome. come_back also records a Trip return intention. Bundle allocations use accepted active Listed tags, estimates only when no tags exist, then even shares per object. Predictions, comparables and list prices do not establish tags or tag discounts. - A verdict on an Appraisal is optional and always shown as the answering assistant's, named and dated. Buying does not certify what a thing is worth, and no answer is ever presented as Buying's own. - Purchase replays preserve omitted metadata and companion attribution. For bundles, tagCents uses the Item's per-unit or whole-lot basis, unitCents is per unit, and totalCents is a whole-line weight fallback. Quantity is recorded separately. Replay the complete original purchase-key set; person-adjusted shares and the recorded total are preserved, and incompatible replays are refused. Each bundle contributes to private seller statistics once; corrections apply the contribution difference. - Type writes refuse a child whose parent has the same normalized name, and refuse moving a subtree when its bounded descendant walk is incomplete; no partial ancestry rewrite is saved. - Fewer calls, same result. Read once at the start — buying_get_brief and buying_get_preferences — rather than re-reading between saves. Batch every sweep: buying_save_items_batch for listings, buying_save_purchases_batch for a receipt, buying_update_list for several entries and their run. Ask for a page and follow its cursor instead of raising a limit until a whole table comes back. Link a record in the same call that saves it. Prefer the one tool that summarises a block over assembling it from five. - A preference is saved only when the person explicitly asked for it, and buying_save_preference records their own words as the reason. Anything an assistant merely inferred goes to buying_propose_preference and waits; nothing reads a pending proposal as a standing fact, and there is no tool that adopts one. A preference is readable back to an assistant only after the person opens that row themselves, so creating one does not make it visible to the assistant that wrote it. The one exception the person chose: what they look for — their wants, collections and shopping habits — is written for their own AI to read, so those three kinds start open and they close any of them in one click. - buying_get_trip day.purchasesByStop names each stop's lines — {stopId, name, lineCount, lines[{purchaseId, title, quantity, totalCents, currency, findingId, voided, boughtBy}], more} — under the first stop at the line's Place, lines at no stop last, at most 40 a stop. totalCents is null while a line is unpriced. - buying_get_place pricingProfile.tags.range {lowCents, highCents, currency, counted} is the lowest and highest tag in the window of the Place's newest prices, one currency only (null otherwise). Quote the spread; the average is a summary, not a price anyone asked. - buying_import_sale identifies an event by its normalized listing URL within your workspace, independently of its title. Different listing identities remain different events; re-importing the same identity reuses the event. Existing Place prose is retained; replacing it requires buying_save_place_description explicitly. - buying_get_trip day.total.byCurrency and day.stops[].byCurrency report currency, spendCents, companionCents, retailCents, retailLines and paidAgainstRetailCents separately per currency. Legacy money totals and day.currency are null for mixed currencies. Compare retail only with purchases in the same currency; companion lines remain attributed evidence outside personal spending. - Taking an Item off a Trip stop keeps the Item and records an exclusion, so its Place does not put it back on that stop. Explicitly linking it again clears that exclusion. Organizer matching reuses exact normalized company cores, never arbitrary name containment or suffix letters inside a name. Multiple core matches are refused with candidate IDs for an explicit choice. - A Note keeps the person's own wording. An assistant's reading of a note is stored in a separate, attributed field beside it, and no tool lets an assistant rewrite what the person said. - A suggestion the person declined carries a standing rule with their reason and the one condition under which it may be raised again. The rule is enforced on the write, and the refusal names it. Read buying_list_suggestion_decisions before proposing rather than learning the rule by being refused. - The token proves who is calling; the stored grant decides what they may do. The grant is re-read on every single call, and the token's own scopes are never read for authorization. - Asking for access never changes live authority. buying_manage_connection files one exact request and returns a link for the person; only their click can approve it. - No assistant operation narrows, widens, or revokes a permission. The one authority change that is not the person's own click is Buying raising a never-narrowed connection to the current default baseline, which only ever adds what every connection now holds and is recorded in the ledger. Narrowing and revoking remain the person's alone, at https://assistwithbuying.com/connect, and a connection they narrowed is never widened back. - A connection lasts until the person removes it at https://assistwithbuying.com/connect. It has no end date and nothing to renew; a connection nobody has used for a long time is shown to the person as unused, and is never ended automatically. A connection that holds nothing — waiting for the person, removed, or over the limit — still lists buying_manage_connection, which says which of those it is and links to https://assistwithbuying.com/connect. - No approval this product can issue ever allows any of the following. Reveal a seller's contact details, or contact, message, or negotiate with anyone. Make an offer, spend money, or complete a purchase. Permanently delete, archive, or export your workspace. Publish your private research, or share it outside Buying. Reach another person's workspace, or any other Assist product. - A connected client may still apply its own per-tool prompt or block policy; Buying does not override client-side approval controls. ## What no approval can ever allow - Reveal a seller's contact details, or contact, message, or negotiate with anyone. - Make an offer, spend money, or complete a purchase. - Permanently delete, archive, or export your workspace. - Publish your private research, or share it outside Buying. - Reach another person's workspace, or any other Assist product.