# 1lev1

> Track partnership work, log mission hours, and see what needs your approval on 1lev1.com.

- name: io.github.Avi-ADAM/1lev1
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 94/100
- quality: 80/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.Avi-ADAM%2F1lev1
- tools: https://api.protogrid.dev/v1/servers/io.github.Avi-ADAM%2F1lev1/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "1lev1": {
      "type": "http",
      "url": "https://api.1lev1.com/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 100
- freshness: 85
- provenance: 90
- drivers: +repository +namespace-matches-repo +website +reachable +uptime-100% ~updated-47d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 80/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- warn `tools.description_length`: 4 tools have descriptions over 1,024 characters, which crowds the context
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 60 of 60 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- warn `tools.token_cost`: about 21,233 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 75 (weight 15)

- warn `stability.changes`: 24 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 60, about 21,233 tokens to load them all
- tool set hash: 434eb0f7816d7040853a43da17ff50e1
- tools last changed: 2026-10-20T12:21:55.487Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.Avi-ADAM/1lev1.svg)](https://protogrid.dev/servers/io.github.Avi-ADAM/1lev1)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-20 `quoteShippingTool` added
  - Price delivery of a cart from one rikma to an address — "how much is delivery to Haifa?". Give the products (and variant when the product has variants) with quantities, and the address (city is enough inside Israel; the district is resolved from it). Unit prices are read from the rikma's own catalog, so free-delivery thresholds apply as at checkout. Returns every option (delivery methods, pickup points, digital, "contact the seller") with fee, whether it is free, how much more makes it free, ETA and next dispatch day, plus why delivery is unavailable (outsideZones, noDeliveryProducts, needsAddress, weightUnknown). Members only; read-only — nothing is ordered. Docs: https://1lev1.com/mcp#quoteShippingTool
- 2026-10-20 `getShippingConfigTool` added
  - Describe how a rikma delivers what it sells: whether shipping is set up, the currency, handling days, the lowest free-delivery threshold, each zone (countries, districts, cities, postal prefixes) with its methods (fee, freeOver, minSubtotal, ETA days, dispatch days), the pickup points, and per-product rules (which products are pickup/digital only). Members only. For "how much is delivery of X to <city>?" use quoteShipping — it prices a real cart. Docs: https://1lev1.com/mcp#getShippingConfigTool
- 2026-10-19 `updateRikmaOrderStatusTool` added
  - Advance a paid store order to shipped, fulfilled, or cancel it as its holder. Any member may mark shipped/fulfilled (getting the parcel out is the rikma’s work); cancel is holder-only — the member whose till took the money — because it resets their own self-reported sales not yet in a split; sales already in a split are left and the rikma is told to settle the refund. Idempotent (same status twice succeeds quietly); backwards transitions refuse (§3.4). On cancel, pass restock:true to put the items back on the shelf (default: only when the order was not yet shipped). Members only. Docs: https://1lev1.com/mcp#updateRikmaOrderStatusTool
- 2026-10-19 `setShopStockTool` added
  - Update the shelf stock of a product or of one of its variants. Operational change (§4.6): any rikma member may do it, it applies at once, and prices are never touched. Two modes: `set` counts the shelf ("there are 7"), `add` adds a delivery ("12 came in"), reading the quantity on the server first so a sale that landed meanwhile is not overwritten. Use quant=-1 for unlimited. A product that is sold by variant keeps its stock on the variants (Matanot.quant is not used). Members only. Docs: https://1lev1.com/mcp#setShopStockTool
- 2026-10-19 `archiveRikmaProductTool` added
  - Archive (soft-delete) a personal product (origin=personal) you own. Removing a product that belongs to the rikma is a consent flow (proposeObjectArchive — members approve, silence approves at restime), so for those this tool returns the moach link instead of archiving. An archived product stays reachable at /gift/[id] for old orders and sales but vanishes from /gift and the storefront catalog. Never a hard delete — history matters. Unarchiving is done in the moach. Docs: https://1lev1.com/mcp#archiveRikmaProductTool
- 2026-10-19 `updateRikmaProductTool` added
  - Update shop-facing fields of a product: hideFromDiscovery (show/hide in the public /gift directory), and `kindOf` for operational edits. More broadly this is the merchant-facing "show/hide" for discovery — what the sales/manage products tab does. Pricing of a rikma product is a term and belongs in editObject with rikma consent (§4.6); this tool says so and returns the edit URL when asked to change price on such a product. For discovery, the change applies at once. Docs: https://1lev1.com/mcp#updateRikmaProductTool
- 2026-10-19 `createRikmaProductTool` added
  - Create a fixed-price product (Matanot) for the rikma. Three hosting modes (PLAN_USER_OFFERINGS §3.3): `projectId` alone → the product lives on that rikma (caller must be a member); without it → personal offer hosted on the caller’s home rikma (origin=personal); `newRikmaName` → a fresh named rikma is created first and hosts it. Use it for the storefront: name, description, price, stock (quant, -1 = unlimited), kindOf (total/monthly/yearly/daily/unlimited), location, and an uploaded image id (picId). For a complex recipe (BOM, margin, estimated price) use createComplexMatanot in the UI — the MCP creates the simple, shippable shelf item. Members or personal owner. Returns the new Matanot id and where it lives. Docs: https://1lev1.com/mcp#createRikmaProductTool
- 2026-10-19 `getRikmaOrderTool` added
  - Get one order of the rikma by its ref (`<rikmaId>:<externalId>`, as POST /orders answered). Returns the same enriched order as the list, plus the holder and the note the rikma sees. Members only — buyer contact is members-only. Docs: https://1lev1.com/mcp#getRikmaOrderTool
- 2026-10-19 `listRikmaOrdersTool` added
  - List the paid orders the storefront reported (POST /orders, §3.3) for one rikma: ref, displayNumber, status (paid/shipped/fulfilled/cancelled), oversold, total, currency, buyer (name/email/phone — sensitive), delivery preference and address, payment ref/method, holder, paidAt/shippedAt/fulfilledAt, lines (productId/variantId, nameSnapshot, optionLabelSnapshot, skuSnapshot, quantity, unitPrice, lineTotal) and sales. Members only — buyer contact leaves the server only inside a members-only response (§5.6) and is never copied to a webhook. Docs: https://1lev1.com/mcp#listRikmaOrdersTool
- 2026-10-19 `listRikmaProductVariantsTool` added
  - List the variant rows (product-variant, the SKU) of products of one rikma — price, compareAtPrice, quant (-1 unlimited), active, position, sku, name, optionValues and axisKey, with productId and pics. This is the truth the checkout consults. Members only. Docs: https://1lev1.com/mcp#listRikmaProductVariantsTool

Full history: https://api.protogrid.dev/v1/servers/io.github.Avi-ADAM%2F1lev1/changes

## Remotes

- https://api.1lev1.com/api/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (60)

- `applyAssistantTool`: Save a list: a PROFILE is saved to their profile right away (what they set aside leaves it; resources are only added). A WISH: its own rows are saved - a draft stays a draft (publishing is theirs, on the site: siteUrl), and rows a supplier already answered are never changed here. A RIKMA is never created here - you get the reviewUrl to give them. Docs: https://1lev1.com/mcp#applyAssistantTool
- `archiveRikmaProductTool`: Archive (soft-delete) a personal product (origin=personal) you own. Removing a product that belongs to the rikma is a consent flow (proposeObjectArchive — members approve, silence approves at restime), so for those this tool returns the moach link instead of archiving. An archived product stays reachable at /gift/[id] for old orders and sales but vanishes from /gift and the storefront catalog. Never a hard delete — history matters. Unarchiving is done in the moach. Docs: https://1lev1.com/mcp#archiveRikmaProductTool
- `attachToProcessTool`: Attach an existing object - an open mission, an open resource, a mission in progress, or a mission/resource still being voted on - to a process, so what the rikma is pursuing and what it is actually doing about it stay connected. It does not create the object: create it first (prepareMissionTool, createTaskTool, or the URL the tool returns), then attach it. Docs: https://1lev1.com/mcp#attachToProcessTool
- `createPlanBoardTool`: Create a planning board from rows YOU already structured. Use this when the conversation already holds the breakdown - decisions, scope, a task list: your rows are saved as written, with no second model rewriting or dropping them. Nothing is created - every row is a proposal the user approves in the real creation form at the returned reviewUrl. Every row needs a name AND a descrip; rows without one are not saved and come back in `rejected`. Use planProjectWorkTool instead when the user only has a loose idea in free text. Requires a projectId. On failure, `error.retryable` says whether calling again can help. Docs: https://1lev1.com/mcp#createPlanBoardTool
- `createProjectTool`: Prepare the "create a Partnership" form (a Partnership is also called a rikma, or "רקמה") and return a link that opens it pre-filled. Nothing is created yet: status is "prepared" until the user opens the link and approves the form. Give the user `url` exactly as returned — do not decode, shorten or rebuild it. A public-benefit or nonprofit initiative is a normal Partnership, not a failed business: every Partnership has a public support page (/project/<id>/support) where anyone can donate to it or fund a specific mission, so the public can cover the members' work hours even when nothing is ever sold. Docs: https://1lev1.com/mcp#createProjectTool
- `createRikmaProductTool`: Create a fixed-price product (Matanot) for the rikma. Three hosting modes (PLAN_USER_OFFERINGS §3.3): `projectId` alone → the product lives on that rikma (caller must be a member); without it → personal offer hosted on the caller’s home rikma (origin=personal); `newRikmaName` → a fresh named rikma is created first and hosts it. Use it for the storefront: name, description, price, stock (quant, -1 = unlimited), kindOf (total/monthly/yearly/daily/unlimited), location, and an uploaded image id (picId). For a complex recipe (BOM, margin, estimated price) use createComplexMatanot in the UI — the MCP creates the simple, shippable shelf item. Members or personal owner. Returns the new Matanot id and where it lives. Docs: https://1lev1.com/mcp#createRikmaProductTool
- `createTaskTool`: Create a task (Act, "מטלה") in a project - the way a member gets something new done. Whenever the user wants something new to happen in a project, offer this option. Choose the shape:
- A mission in progress already covers the work: create an act linked to it - assignedUserId = the mission holder, missionId from getMemberMissionsTool.
- Nobody in the project does this kind of work, so an implementer must be found: this is not an act - prepare a mission with prepareMissionTool.
- No specific person yet: create the act with no assignee and pass tafkidims = the roles that fit it (IDs from getProjectMembersTool). The holders of those roles are notified and one of them picks it up.
An act assigned to another person waits for that person to approve it; nobody is bound until they accept. The caller must be a member of the project. Requires a project ID. Docs: https://1lev1.com/mcp#createTaskTool
- `dismissOfferTool`: The person says an open mission suggested to them is not relevant: it stops being suggested to them. A filter for them only - nobody is told no. Docs: https://1lev1.com/mcp#dismissOfferTool
- `findMissionTool`: Find a specific mission for the user by its name. Docs: https://1lev1.com/mcp#findMissionTool
- `findUserProjectsTool`: Find the projects (rikmot) the current user belongs to, newest first, with their creation time. Use this when the user mentions a project by name, wants to navigate to one, or just created one. Results are paginated: when hasMore is true, call again with offset=nextOffset. Docs: https://1lev1.com/mcp#findUserProjectsTool
- `getActiveTimersTool`: Get all currently active timers for the user Docs: https://1lev1.com/mcp#getActiveTimersTool
- `getAssistantTool`: Read the person's current draft list on 1lev1 - a rikma blueprint (kind 'rikma'), or later their profile or a wish - with its rows, their keys and status, the version, and what was changed recently (also from the site). Call it before setAssistantItems when you are not sure you have the latest version. Docs: https://1lev1.com/mcp#getAssistantTool
- `getMemberMissionsTool`: List a project member's in-progress missions. A task is linked to a mission-in-progress the assignee performs, so call this after choosing the assignee (a person) to pick the missionId to pass to createTaskTool. If no mission in progress covers the work, it is not a task: prepare a mission with prepareMissionTool instead. Docs: https://1lev1.com/mcp#getMemberMissionsTool
- `getMissionDetailsTool`: Get detailed information about a specific mission including tasks, timeline, and current status Docs: https://1lev1.com/mcp#getMissionDetailsTool
- `getMissionStatsTool`: Get statistics about user missions including counts by status, time spent, etc. Docs: https://1lev1.com/mcp#getMissionStatsTool
- `getMyUpdatesTool`: What waits for the user and what is new for them - across their rikmas, their wishes (concierge) and their deals. Use it for "what's new today", "what is waiting for me", "what do I need to answer", "what is happening in rikma X". Returns `waiting`: each item is ONE ready sentence in the user's language, with its figures, where it is, its deadline (when `silenceApproves` is true, no answer by the deadline approves it automatically - always say so), and a `link` where the user answers it. Relay the sentences, most urgent first; do not reword figures. Also returns `work` (their missions, missions about to go dormant, open/overdue tasks), `whatsNew` (counts of new missions/resources/products/sales in their rikmas since yesterday) and `suggestions` (open matches for them). `unavailable` names parts that could not be read - say they could not be checked rather than calling them empty. Read-only: approving, countering or discussing happens on the site, by the user. Docs: https://1lev1.com/mcp#getMyUpdatesTool
- `getPlatformInfo`: Get general information about the 1lev1 platform, its goals, and features. Docs: https://1lev1.com/mcp#getPlatformInfo
- `getProjectDetailsTool`: Get the facts about one rikma (project): name, public description, values, links (website, GitHub, Drive, social), members, roles, open missions, missions in progress (and who holds them), open and in-progress resources, and products. Call this before planning or writing anything in a rikma - it is cheap and returns facts, unlike scanProjectDirectionsTool. For a rikma the user is not a member of, only the public face is returned (isMember:false). Docs: https://1lev1.com/mcp#getProjectDetailsTool
- `getProjectMembersTool`: List the people (members) and roles (tafkidim) of a project. Use this to resolve a task assignee - a person or a role - to its ID before calling createTaskTool. For a task with no specific person, pick the roles that fit it here and pass their IDs as tafkidims. Docs: https://1lev1.com/mcp#getProjectMembersTool
- `getProjectStatsTool`: Get the pulse of one rikma as numbers: members, open missions, missions in progress, open resources, open decisions (votes), active timers, missions finished and hours logged in the last N days, and when anything last happened. Use it to judge whether a rikma is active before planning. Members only; no per-member financial data. Docs: https://1lev1.com/mcp#getProjectStatsTool
- `getRikmaOrderTool`: Get one order of the rikma by its ref (`<rikmaId>:<externalId>`, as POST /orders answered). Returns the same enriched order as the list, plus the holder and the note the rikma sees. Members only — buyer contact is members-only. Docs: https://1lev1.com/mcp#getRikmaOrderTool
- `getRikmaProductTool`: Get one product of the rikma in full merchant detail: its base row (price, quant, pricingMode, status_of_voting, lifecycle, archived, hideFromDiscovery, lowStockAt, unit, minOrder, maxOrder, leadTimeHours, externalKey, pricing fields), its gallery and delivery options, its option axes (product-option), every variant (sku, axisKey, optionValues, price, quant, active, position, externalKey), categories, and computed inventory (effectiveStock, isLowStock, lowVariants). Members only. Use it to verify a product before editing stock, pricing or variants. Docs: https://1lev1.com/mcp#getRikmaProductTool
- `getShippingConfigTool`: Describe how a rikma delivers what it sells: whether shipping is set up, the currency, handling days, the lowest free-delivery threshold, each zone (countries, districts, cities, postal prefixes) with its methods (fee, freeOver, minSubtotal, ETA days, dispatch days), the pickup points, and per-product rules (which products are pickup/digital only). Members only. For "how much is delivery of X to <city>?" use quoteShipping — it prices a real cart. Docs: https://1lev1.com/mcp#getShippingConfigTool
- `getShopInventoryTool`: Inventory overview for a rikma: how many products are active, archived, low, out of stock, and per-variant stock. Also loads the waiting orders and any oversold (short) units so the seller knows what the shelf does not cover. Members only. This is what the Stock tab of sales/manage shows, as facts an agent can act on. Docs: https://1lev1.com/mcp#getShopInventoryTool
- `getSitePagesTool`: Get a structured list of available pages on the 1lev1.com site, useful for navigation. Docs: https://1lev1.com/mcp#getSitePagesTool
- `getWishDetailsTool`: Get one wish (concierge request): what it needs broken into missions and resources, its coverage, and the proposals on it. Full detail for the wish owner and for anyone who proposed on it; others see only the public card of an open wish. Accepting or declining a proposal is never done here - open the returned URL and let the person decide. Docs: https://1lev1.com/mcp#getWishDetailsTool
- `listMyConversationsTool`: List the conversations (forums) the caller takes part in - one per mission, act, decision, profit split or wish proposal they are involved in, newest first, with the last message. Use it to find the forumId of the thread a request is about. Docs: https://1lev1.com/mcp#listMyConversationsTool
- `listMyWishesTool`: List the caller's own wishes (concierge requests): status, coverage, and how many missions and resources each one still needs. Use it to answer "what did I ask for" and to pick the wish a follow-up is about. Docs: https://1lev1.com/mcp#listMyWishesTool
- `listMyWishOffersTool`: The supplier side of the concierge: every proposal the caller is the proposer of - what someone asked them to provide and what they offered, with its status. Use it to answer "who wants something from me". Responding to one happens on its page, not here. Docs: https://1lev1.com/mcp#listMyWishOffersTool
- `listProjectResourcesTool`: List what a rikma already has and needs: its links (live website, repo, Drive, social), resources in progress (equipment, money, services someone provides) and open resources it is looking for, plus its products. Use it to check whether a rikma already has a website/repo before suggesting one. Members only. Docs: https://1lev1.com/mcp#listProjectResourcesTool
- `listRikmaOrdersTool`: List the paid orders the storefront reported (POST /orders, §3.3) for one rikma: ref, displayNumber, status (paid/shipped/fulfilled/cancelled), oversold, total, currency, buyer (name/email/phone — sensitive), delivery preference and address, payment ref/method, holder, paidAt/shippedAt/fulfilledAt, lines (productId/variantId, nameSnapshot, optionLabelSnapshot, skuSnapshot, quantity, unitPrice, lineTotal) and sales. Members only — buyer contact leaves the server only inside a members-only response (§5.6) and is never copied to a webhook. Docs: https://1lev1.com/mcp#listRikmaOrdersTool
- `listRikmaProcessesTool`: List a rikma's processes: the open-ended threads it is running - an approach to a partner, a launch, a funding attempt - each with its conversation and the open missions, resources and other objects that have formed out of it. Use it to see what is already in motion before starting something new. Members only. Docs: https://1lev1.com/mcp#listRikmaProcessesTool
- `listRikmaProductOptionsTool`: List the option vocabulary (product-option) of one rikma: axes like size / colour, each with its values (value, label, hex, image). These are the axes a product declares it uses (product.options) and the `axisKey` of a variant is built from them. Members only. Use it to see what size M really is before writing a variant that claims it. Docs: https://1lev1.com/mcp#listRikmaProductOptionsTool
- `listRikmaProductsTool`: List the products (Matanot) of one rikma for the merchant: name, price, pricing mode, status, archived, kind, quantity (-1 = unlimited), lowStockAt, stockTotal, hasVariants, and each variant (sku, price, quant, active, axisKey). This is the seller view used by the sales/manage tabs (moachShopProducts) — not the public catalog. Members only. Call it first to see what you have on the shelf before creating, editing stock or checking orders. Docs: https://1lev1.com/mcp#listRikmaProductsTool
- `listRikmaProductVariantsTool`: List the variant rows (product-variant, the SKU) of products of one rikma — price, compareAtPrice, quant (-1 unlimited), active, position, sku, name, optionValues and axisKey, with productId and pics. This is the truth the checkout consults. Members only. Docs: https://1lev1.com/mcp#listRikmaProductVariantsTool
- `listUserMissionsTool`: List user missions with various filtering options Docs: https://1lev1.com/mcp#listUserMissionsTool
- `navigateToPageTool`: Turn a 1lev1.com page into a link to give the user - it does not open anything by itself. Pass the path (e.g. "/lev", or "/moach/<projectId>" with idPr) and a short name for it; the result carries the path to put after https://1lev1.com. getSitePagesTool lists the valid paths. Docs: https://1lev1.com/mcp#navigateToPageTool
- `openRikmaConversationTool`: Get the rikma's own general conversation - the one thread that belongs to the whole rikma rather than to a single mission, act or decision. It is created the first time someone opens it. Use it for "what are we doing next" talk; anything about a specific mission, decision or profit split belongs in that thing's own thread, where it stays on record. Returns a forumId for readConversation and postConversationMessage. Members only. Docs: https://1lev1.com/mcp#openRikmaConversationTool
- `planProjectWorkTool`: Turn a free-text brief into a planning board for a project: proposed missions, chores (acts) and resources, deduplicated against what the project already has. Nothing is created - the tool returns a reviewUrl where the user approves each row in the real form. Use this when the user describes something they want the project to achieve in loose words. If the conversation already holds a concrete breakdown (tasks, scope, decisions), use createPlanBoardTool instead - it saves your rows as written. Requires a projectId (use findUserProjectsTool first if unknown). On failure, `error.retryable` says whether calling again can help. Docs: https://1lev1.com/mcp#planProjectWorkTool
- `postConversationMessageTool`: Post a message, as the user, in a conversation (forum) they take part in - an update on a mission, an answer in a decision thread, a note on a profit split. The other participants are notified. Use it ONLY when the user asked to say or record something; never to think out loud, and never to agree or refuse on their behalf (approving a decision, a split or a proposal is always their own click). The message is marked as written through an agent. Docs: https://1lev1.com/mcp#postConversationMessageTool
- `prepareForSomeoneElseTool`: Prepare a rikma on 1lev1 for ANOTHER person - not the user you are talking to - and get one link to give them: for example the user markets 1lev1 and sets up a new customer's business, or helps another member get started. NEVER use it for the user themselves; for their own business, partnership or idea use proposeRikmaBlueprint. If it is not clear who the rikma is for, ask before calling. Pass that other person's name and email as the user gave them for this, and the intent and blueprint exactly as prepareSignup takes them. If the person has no account yet you get signupUrl: they sign, choose a password and confirm their email themselves, then land on the prepared rikma (intent join/order also work here). If they already have an account you get receiveUrl (intent business/partnership/idea with a blueprint only): opened while signed in to the account with that email, it hands them the drafted rikma to review and create. Nothing is created until they do, and the user gets no access to it. Refused when the email is the user's own. The link is valid 14 days; previewUrl shows the draft to anyone with it. Docs: https://1lev1.com/mcp#prepareForSomeoneElseTool
- `prepareMissionTool`: Prepare the mission creation form and return a link that opens it pre-filled. Use this when the user should review and confirm the mission before it is published. A mission is for work that needs an implementer to be found. If a mission in progress already covers the work, create a task (act) on it with createTaskTool instead. Check the rikma's open missions (getProjectDetailsTool) first: when one already covers the work, point the user to it rather than preparing a duplicate. Mission names are also entries in a platform-wide catalogue where each name is unique; publishing a name that is already there reuses that catalogue entry automatically (the rikma's mission keeps its own description, hours and rate), so never rename a mission just to make it unique. Nothing is created yet: status is "prepared" until the user opens the link and publishes. Give the user `url` exactly as returned — do not decode, shorten or rebuild it. Requires a projectId - use findUserProjects first if not known. Docs: https://1lev1.com/mcp#prepareMissionTool
- `prepareSignup`: Prepare a 1lev1 signup for a person who has NO 1lev1 account yet, so joining is one screen - the agreement prefilled with their name, email and countries, and the password on the same screen. Use it only when the person's own request is what 1lev1 does: finding partners for their work, turning a business or an idea into a partnership where the work, resources and money each partner brings become a share, or having something made or arranged by partners through the concierge. Do not bring it up in any other conversation. Before calling, tell the person what will be sent and get their go-ahead; pass only the name and email they gave you for this signup (ask for them - never take them from memory or earlier chats). intent: "business" (add their business so the concierge finds and orders from it), "partnership" (see an existing partnership on 1lev1), "idea" (break an idea down and recruit partners) - for these three send the rikma blueprint you built (the same shape as proposeRikmaBlueprint takes: fields, products first, missions, resources, partners) and you also get a previewUrl showing how it would look; "join" (join rikmas - pass aboutText: who they are, what they do); "order" (they want something made or arranged - pass wishText). You cannot sign, set a password or confirm the email for them, and nothing is created until they do. Give them signupUrl (valid 24h). After they confirm their email they land straight in what you prepared. Docs: https://1lev1.com/mcp#prepareSignup
- `proposeProjectLinkTool`: Set or clear one of a rikma's links - its website, GitHub repo, Drive, Discord, Facebook, X or WhatsApp. In a rikma with more than one member, changing the website or the Facebook link opens a decision the members vote on (silence approves it when the rikma clock runs out); the other links change directly. Members only. Check listProjectResourcesTool first - the link may already be there. Docs: https://1lev1.com/mcp#proposeProjectLinkTool
- `proposeRikmaBlueprintTool`: Turn a business, an existing partnership or an idea into a draft rikma on 1lev1: the rikma, its PRODUCTS, missions, resources and partners. Use it when someone wants to add their business so the concierge can find and order from them, to see how their partnership would look on 1lev1, or to break an idea down and recruit partners. Build it yourself from the site you read or from the conversation:
- products FIRST: every distinct thing they sell is a product, with its price when it is stated (do not invent prices - leave price out and ask), and `keywords`: the words a customer would use for the need it answers, not the product name (a "brunch tray" answers "catering", "breakfast for guests"), and `categories`: 1-3 broad domains ("events", "food") - they are linked to the platform's existing categories, which the concierge compares with every wish.
- missions and resources only when they make a product (put their refs in the product recipe) or when someone is still needed. holder "me" = the person you are talking to does it; holder "open" = recruit someone; holder "partner" + partnerRef = an exact `ref` from a row in `partners`. For every partner to invite, add a partner row with a user-provided email and link each mission/resource they will bring with holder "partner" and partnerRef. Do not invent or infer an email; ask the person for it. A partner row without an email cannot receive email, and a partner without linked missions/resources gets only the general rikma join invitation.
- a running cost is priced per period, never as a total: rent or a subscription is a resource with kindOf "monthly" (or "yearly") and its price per month; ongoing work every month is a mission with `recurring: true` and `hours` per month.
- `why` on each row: one sentence of where it came from ("the site lists it at 180").
Pass projectId to add to a rikma the person is already a member of. The draft is the user's own; a rikma prepared for another person is prepareForSomeoneElse. Show the rows to the person in the conversation, ask about anything you guessed (prices especially), and confirm every partner email before using it - never invent an address. To invite a partner to contribute, add them in partners with a ref, then set holder:"partner" and partnerRef to that exact ref on each mission/resource they will bring; listing a partner alone does not create a work invitation. Fix what they say with setAssistantItems, then give them reviewUrl: on that page they tick what to create and create it with one click. On creation the server sends a partner invitation email when delivery is allowed; registered partners also get mission/resource invitation cards. The result reports delivery and includes a join link to share if no email could be sent. Nothing exists and no invitation is sent until the person creates it there. Docs: https://1lev1.com/mcp#proposeRikmaBlueprintTool
- `quoteShippingTool`: Price delivery of a cart from one rikma to an address — "how much is delivery to Haifa?". Give the products (and variant when the product has variants) with quantities, and the address (city is enough inside Israel; the district is resolved from it). Unit prices are read from the rikma's own catalog, so free-delivery thresholds apply as at checkout. Returns every option (delivery methods, pickup points, digital, "contact the seller") with fee, whether it is free, how much more makes it free, ETA and next dispatch day, plus why delivery is unavailable (outsideZones, noDeliveryProducts, needsAddress, weightUnknown). Members only; read-only — nothing is ordered. Docs: https://1lev1.com/mcp#quoteShippingTool
- `readConversationTool`: Read one conversation (forum) the caller takes part in: its messages, newest last, with who wrote each. Use it before answering in a thread, so the reply fits what was already said. Docs: https://1lev1.com/mcp#readConversationTool
- `reviseAssistantTool`: Change a list with the person's own words ("that's right, drop the second, add photography") - the platform turns them into ops. Prefer setAssistantItems when you can name the ops yourself; this one runs a model. Docs: https://1lev1.com/mcp#reviseAssistantTool
- `scanProjectDirectionsTool`: Cheaply scan a project's real current state and propose a few DIRECTIONS for advancing it - strategic angles, not task lists. Use this when the user asks something open-ended like "what should we do next?" or "how do we move this forward?" and has not described a specific goal. These are saved as suggested directions only: nothing is created, and no mission, chore or resource comes out of this call. To break one direction down into concrete missions and resources afterwards, the user opens it on the returned reviewUrl and approves each row there. Requires a projectId. On failure, `error.retryable` says whether calling again can help. Docs: https://1lev1.com/mcp#scanProjectDirectionsTool
- `searchCatalogTool`: Search what the platform already offers publicly: products for sale, open missions (work looking for someone) and open resources (equipment, money, services a rikma needs). Use it before opening a new wish or mission - somebody may already do this. Public data only. Docs: https://1lev1.com/mcp#searchCatalogTool
- `searchContentTool`: Search inside the rikmas the caller belongs to: rikma names and descriptions, open missions, missions in progress, acts, open and in-progress resources, and products. Use it to find something when the rikma is not known - "where was that task about the logo". For public listings of other rikmas use searchCatalogTool instead. Docs: https://1lev1.com/mcp#searchContentTool
- `setAssistantItemsTool`: Change the draft list with small ops - what the person just told you: keep ("that is right"), drop ("not now", reversible with restore), add, rename, setSpec (price, keywords, hours…), link (a product recipe), setField (the rikma name, description…). Refer to rows only by their key. Rows already created on the platform, or a wish row a supplier answered, cannot be changed here - you get reason "created"/"committed"; send the person to the site for those. Pass the version you last saw; conflict:true means it changed meanwhile (maybe on the site) - show the returned list and ask again. Docs: https://1lev1.com/mcp#setAssistantItemsTool
- `setShopStockTool`: Update the shelf stock of a product or of one of its variants. Operational change (§4.6): any rikma member may do it, it applies at once, and prices are never touched. Two modes: `set` counts the shelf ("there are 7"), `add` adds a delivery ("12 came in"), reading the quantity on the server first so a sale that landed meanwhile is not overwritten. Use quant=-1 for unlimited. A product that is sold by variant keeps its stock on the variants (Matanot.quant is not used). Members only. Docs: https://1lev1.com/mcp#setShopStockTool
- `shareRikmaPreviewTool`: Make a read-only link that shows how the drafted rikma would look on 1lev1 - its products, missions, resources, who brings what and an example of how shares form - for the person to send to their partners (no account needed to view; nothing is created). Valid 30 days; calling again replaces the old link, and revoke:true ends it. Docs: https://1lev1.com/mcp#shareRikmaPreviewTool
- `startAssistantTool`: Open the person's living list of (a) their PROFILE - skills, roles, ways of working, values, resources they own - seeded from what is on it now, plus what `text` says about them (pass what they told you); or (b) a WISH - pass ratsonId (from listMyWishesTool), or `text` to start a new draft wish from their words. Returns the rows with keys. Then refine with setAssistantItems (your own ops - preferred) or reviseAssistant (their words), and save with applyAssistant. A rikma is not started here: use proposeRikmaBlueprint. Docs: https://1lev1.com/mcp#startAssistantTool
- `startProcessTool`: Start a process in a rikma: a named thread with its own conversation, for something that is not yet a mission or a resource - approaching an organisation, preparing a launch, chasing funding. The description becomes the first message, so a half-formed idea can be written in plain words and take shape later: as it becomes concrete, the open missions and resources it needs are created in the normal way and attached with attachToProcess. Members only. Use it when the user wants to record something the rikma is pursuing, not to file your own notes. Docs: https://1lev1.com/mcp#startProcessTool
- `timerActionTool`: Perform actions on user timers (start, stop, pause, resume) Docs: https://1lev1.com/mcp#timerActionTool
- `undoAssistantTool`: Undo the last change to the draft list (from here or from the site). Docs: https://1lev1.com/mcp#undoAssistantTool
- `updateRikmaOrderStatusTool`: Advance a paid store order to shipped, fulfilled, or cancel it as its holder. Any member may mark shipped/fulfilled (getting the parcel out is the rikma’s work); cancel is holder-only — the member whose till took the money — because it resets their own self-reported sales not yet in a split; sales already in a split are left and the rikma is told to settle the refund. Idempotent (same status twice succeeds quietly); backwards transitions refuse (§3.4). On cancel, pass restock:true to put the items back on the shelf (default: only when the order was not yet shipped). Members only. Docs: https://1lev1.com/mcp#updateRikmaOrderStatusTool
- `updateRikmaProductTool`: Update shop-facing fields of a product: hideFromDiscovery (show/hide in the public /gift directory), and `kindOf` for operational edits. More broadly this is the merchant-facing "show/hide" for discovery — what the sales/manage products tab does. Pricing of a rikma product is a term and belongs in editObject with rikma consent (§4.6); this tool says so and returns the edit URL when asked to change price on such a product. For discovery, the change applies at once. Docs: https://1lev1.com/mcp#updateRikmaProductTool
