User guide

Assistants

On this page: What connecting means · The sign-in page · What an assistant can do · Approvals · The ready-made requests · Good asks · Rules for assistants · Manage and troubleshoot

LazyJack opens your boat's record to an AI assistant through MCP (Model Context Protocol). You give the assistant one address, sign in to LazyJack once on LazyJack's own page, and approve what it may do. From then on the assistant can read the record and change it, in a chat, by voice, or from a tool on your computer, and everything it does appears in the app like your own changes.

This chapter explains what connecting means, what an assistant can and cannot do, and how to work with one well. The step-by-step for a particular assistant (ChatGPT, Claude, Claude Code, Cursor, VS Code) is the assistant guide.

What connecting means

The addresshttps://app.lazyjack.app/api/v1/mcp
Who can connectThe boat's owner, signed in with the LazyJack email and password on LazyJack's page. The assistant never sees them.
What is needed firstA boat set up in LazyJack. An account with no boat cannot be connected.
How long it lastsA connection stays valid for 90 days of use, or until you revoke it.
Where it is listedAccount, Assistants: each connection, its permissions, when it was connected and last used, and Revoke.

The address is the same for every assistant and is shown on the Account page with a Copy button. Any assistant that supports MCP with OAuth sign-in can use it; no key or secret is typed anywhere.

An assistant that cannot sign in by itself can be given a token made by hand (Account, Assistants, "Advanced: create a token by hand"). That token never expires, so revoke it when you stop using it. It is also the only way to make a read-only connection: untick "Allow create and update".

The sign-in page

Nothing is connected until you approve on LazyJack's own page. It shows:

What an assistant can do

With the usual permissions (see and change), an assistant can read and change every kind of record in the app, with the same checks you get: a reading may not be lower than the one before, a change to a record someone else changed since is refused, an amount must be in the boat's currency.

Can, with see and changeRead and update the boat's details, equipment, engine hours, jobs, plans and problems, trips and the log, documents and files, items, stock and the shopping list, checklists, people, places, projects and expenses; read Today's summary, the work queue and the budget forecast; start, tick and complete a checklist; log a trip in one call with its readings and problems; mark a job done with its cost and items used.
Only with the extra permission, and your approval each timeArchive, restore or delete anything; detach a document; undo a stock entry; remove engine hours from an engine.
NeverDownload or restore a backup, clear the boat's data, delete your account, see or change other connections, approve its own requests, change what it may do.

Each change an assistant makes is in the activity list on Today and on the Account page, and it syncs to your devices within a minute like any other change. A stock entry made by an assistant says "by <its name>" in the item's stock history.

Approvals

An assistant's request to archive, restore or delete waits for you.

  1. The assistant asks; LazyJack answers that the change needs approval and keeps the request.
  2. The request appears on the Account page under Assistants, Pending requests, saying what it would do. It also appears there without a refresh.
  3. You Approve it. A request you do not approve within 15 minutes expires; there is no Reject button.
  4. After approving, ask the assistant to try again. The retried call goes through; a different call (another record, other values) needs its own approval.

A connection without the archive permission simply has those requests refused. ChatGPT and Claude do not ask for it when they connect.

The ready-made requests

An assistant that supports MCP prompts shows these in its menu. Each is a complete request in LazyJack's words, naming what to read, what to ask you first, and what never to do. They grant nothing: the tools still check the permissions above.

RequestWhat it does
Before my next tripReads the next planned trip, Do first, the papers and equipment dates falling before it, the departure checklist and the kit, and offers to start the checklist.
Log a tripAsks everything in one message (from, to, when, who, engine hours per engine, anything wrong), shows a summary, and on your yes records it as one trip.
Go through what's outstandingWalks Do first and Soon one item at a time, offering done, not now or leave for a job, and schedule a fix, keep watching or mark fixed for a problem. One record per answer.
Something's wrongRecords a problem against the equipment it concerns, asks whether it is urgent, then whether to schedule a fix.
I did a jobFinds the open job, asks the engine hours, the cost, who was paid and the items used, and marks it done, saying when the next one is due.

Good asks

An assistant is at its best when you give it what you know and let it find the rest.

Asks that go badly: "tidy up my records" (it will want to archive things, which needs your approval each time, and tidiness is a judgement you should make); "is the boat ready to sail" (it is told never to answer that; it will tell you what the record reports).

Rules for assistants

If you are an assistant connected to LazyJack, these are the rules the owner expects you to follow. The ready-made requests state them; they apply to every call.

  1. Use the app's words with the owner: trip, equipment, reading, job, plan, problem, item, kit, document, place, person, checklist, project, expense. The tool names use older words (voyage, defect, waypoint, crew, inventory_item, maintenance_task); do not say them to the owner.
  2. Never archive, delete or purge anything, and never cancel a trip or a checklist, unless the owner asks for exactly that. Those calls need approval anyway; do not ask for it unprompted.
  3. Never say the boat is safe, ready or seaworthy. Report what the records show: readiness_get and work_list give Do first and Soon. "Nothing is reported" is the most you may say.
  4. Read before you write. Fetch the record (*_get) to have its current version, and send expectedVersion. A refusal with code version-conflict carries currentVersion: read again, show the owner what changed, then retry if they still want the change.
  5. Confirm before changing, one record per answer. Show a short summary and wait for yes. Do not change several records on one answer unless the owner asked for a batch (an order confirmation with many lines is such a case).
  6. Make a change once. Every create tool takes a requestKey; send one your retry would send again ("<shop>-<order number>-<line>"), so a repeated call answers repeated: true with the stored record instead of making a second one. Several changes in one request: batch_call, each entry with its own requestKey.
  7. Amounts are in the boat's one currency (vessel_get gives it). A price in another currency is refused; convert it with the owner or leave the amount out and keep the quote in notes.
  8. Engine hours are readings, never notes. Record them with reading_record (or inside voyage_complete and maintenance_task_complete), never in a log entry's text. A reading may not be lower than the latest accepted one.
  9. Something wrong is a problem, defect_create against the equipment, never a change to the equipment's status or condition.
  10. Match before you create. inventory_item_match, equipment_list and search find what exists. A create that looks like a duplicate answers with warnings; read them to the owner before going on.
  11. A refused call carries a code (invalid-argument, forbidden, not-found, conflict, version-conflict, too-large, rate-limited) and a sentence in plain words. Tell the owner the sentence; do not retry forbidden or invalid-argument unchanged.
  12. Large lists take limit, offset and fields. Ask for what you need.
  13. Documents attach to records (document_attach, or attachedTo on create). Detaching needs approval; attaching does not.

Manage and troubleshoot

What you seeWhat it meansWhat to do
The assistant asks you to sign in againIts sign-in ran out (90 days) or was revokedSign in again on LazyJack's page
A change "needs approval"It would archive, restore or delete, and the connection has that permissionApprove it under Account, Assistants, Pending requests within 15 minutes, then ask the assistant to try again
"Not verified" beside a connectionThe assistant registered itself; LazyJack cannot vouch for the name it choseExpected for ChatGPT and Claude. Revoke anything you did not connect yourself
"This account has no vessel yet."The account has no boatSet up the boat in the app first
"Too many requests. Try again in N seconds."One connection made more than 600 requests in ten minutesWait; the assistant should slow down
Connected, but the assistant sees no toolsThe permissions it asked for cover none of LazyJack's toolsRevoke and connect again
A change the assistant made is wrongIt was recorded like any changeCorrect it in the app: a reading is voided and re-recorded, a stock entry undone, a record edited or archived

Not in this chapter

Connecting a specific assistant, menu by menu: the assistant guide. What the app's own words mean and how its records behave: How LazyJack thinks. The exact permission names a connection holds: Account, Assistants, "Show exact permissions" on the connection.

This chapter as Markdown · llms.txt