Official MCP RegistryListed
Obriym CRM
Operate Obriym CRM from your AI assistant: leads, deals, orders, catalog, stock, marketplaces.
First seen 2 Oct 2026. Evidence as of 2 Oct 2026.
62
Tools
From an anonymous probe
1
Source listings
Each with its own history
0
Recorded changes
Since first seen
Tools
| Tool | Description | Behaviour |
|---|---|---|
| add_order_item | Add a line item to an existing order by its externalId. Recomputes the order total. Use list_orders or create_order for the order externalId, and search_products to quote a real product. The result echoes the operating workspace. | Changes data |
| adjust_stock | Move a product stock by a relative delta (negative to write off, positive to add) with a reason, and record it in the stock history. This is the correct tool for a correction, a write-off or damage — it never sets an absolute number, so an order committing at the same moment is not overwritten. The reason decides the direction: write_off, damage and return_to_supplier must carry a negative delta, opening_balance a positive one, while correction and other accept either; a delta that contradicts its reason is rejected. Any other word is your own vocabulary and is accepted in either direction. The product must already track inventory; a product that does not returns a conflict rather than having tracking switched on for it. Pass a stable externalId to make a retry idempotent. The new stock is pushed to every connected sales channel. The result echoes the operating workspace. | Destructive |
| archive_products | Archive up to 100 products — this is how an AI client removes a product. It leaves sale and every sales channel's feed, and nothing is erased: update_product with status active or draft restores it. Hard deletion is not available over MCP. Archiving also asks Prom to take the product's listings down; notAttempted counts takedowns not reached in time. To end a live eBay listing use withdraw_ebay_listings. Returns { affected, skipped, notAttempted } — skipped products were already archived. Idempotent. The result echoes the workspace. | Destructive |
| assign_lead | Assign a lead to a workspace member by user id, or pass assignedTo=null to unassign. Use search_leads to find the lead id and get_workspace_info to confirm the operating workspace. The result echoes the operating workspace. | Destructive |
| check_channel_readiness | Check locally which products a marketplace will refuse and why — missing price, unusable price, blank name, unmapped category — grouped by what fixes them, without calling the marketplace. The response separates `blocked` (these products do NOT go out) from `warnings` (these DO go out, but probably will not be published as the merchant expects: a price in a currency the platform does not name, no words of their own in a language the channel reads, a placeholder description, characteristics the marketplace does not recognise). Available for prom and rozetka; other platforms report their connection state through get_marketplace instead. This never publishes anything: it reports what would happen. | Read-only |
| complete_activity | Mark an activity (task, call, or meeting) as completed by its id. Use list_activities first to find the activity id. The result echoes the operating workspace. | Destructive |
| configure_pipeline | Update an existing pipeline stage's name, default probability, or WIP limit. Provide the stage id (from list_pipeline_stages) and the fields to change. Stage order and terminal behavior are fixed. The result echoes the operating workspace. | Destructive |
| convert_lead | Convert a lead into a contact, company, and/or deal (select at least one via the input flags). Sets the lead status to converted. Use search_leads first to find the lead id. The result echoes the operating workspace. | Destructive |
| create_activity | Create an activity (task, call, meeting, email, or note). Must link to at least one lead, contact, company, or deal — use search_leads/search_contacts/search_companies/search_deals to get the entity id. The result echoes the operating workspace. | Changes data |
| create_company | Create a company (B2B account). The company name must be unique in the workspace. Enforces the workspace plan limit; the result echoes the operating workspace. Use search_companies first to avoid creating a duplicate. | Changes data |
| create_contact | Create a contact (person). Use search_companies for the companyId to link an employer. Enforces the workspace plan limit and validates the company/owner links; the result echoes the operating workspace. | Changes data |
| create_deal | Create a pipeline deal. Requires a stageId, title, and next-action note. Use list_pipeline_stages for the stageId, and search_companies/search_contacts to link a company or contact. Enforces the workspace plan limit; the result echoes the operating workspace. | Changes data |
| create_ebay_drafts | Create eBay DRAFT offers for up to 25 products — real writes to the seller's eBay account, but nothing is buyer-visible until publish_ebay_drafts. Run inspect_ebay_listings first and pass only products whose nextAction is create_draft and ready is true. Each product is attempted on its own: returns created, failed (each with a reason to look up in remediation.ebayPlaybook) and notAttempted (not reached in the time budget — call again with those ids). Refused until the owner switches on AI publishing, and while draft creation is not armed on the eBay connection. Not idempotent: a product that already has a draft fails with alreadyListed. The result echoes the workspace. | Destructive |
| create_lead | Create a lead. Idempotent by externalId (re-sending the same externalId returns the existing lead). Requires an email or phone. Enforces the workspace plan limit; the result echoes the workspace it landed in. Use update_lead to change it afterward. | Changes data |
| create_order | Create an order with line items. Idempotent by externalId — use a stable unique id such as 'mcp-<uuid>' (re-sending returns the existing order). Enforces the workspace plan limit; the result echoes the operating workspace. Items snapshot productName/sku/unitPrice; use search_products first to quote real products. | Changes data |
| create_product | Create a catalog product. Defaults to draft status — publish it by sending status 'active' once it is complete. Use list_categories, list_brands and list_warehouses for the ids; SKU is generated when omitted and must be unique in the workspace. Set trackInventory with an opening stock to start counting units, which is recorded as the first movement in the product stock history. If the target warehouse is set to list new products on the marketplaces, this product joins those channels. When productGroupId names an existing product model, the product joins that model as a new article and takes the model's shared content (name, description, category, brand, characteristics, translations) instead of the values sent. Enforces the workspace plan limit; the result echoes the operating workspace. | Changes data |
| delete_ebay_drafts | Delete the eBay DRAFT offer of up to 25 products; a live listing is refused — end it with withdraw_ebay_listings first. The CRM product itself is untouched. Works even while draft creation is disarmed on the connection, but still needs the owner's AI publishing switch. Returns done, failed and notAttempted. The result echoes the workspace. | Destructive |
| get_activity | Fetch one CRM activity in the selected workspace by activity id, including type, due date, completion state, assignee and linked entity. Use list_activities first when you only know the related lead/deal/contact. | Read-only |
| get_company | Fetch one CRM company in the selected workspace by company id, including status, industry, owner and contact links when present. Use search_companies first when you only know the company name. | Read-only |
| get_contact | Fetch one CRM contact in the selected workspace by contact id, including company, owner, tags and communication fields when present. Use search_contacts first when you only know a name, email or phone. | Read-only |
| get_customer | Fetch one CRM customer summary in the selected workspace by company id, including health, lifetime value and won-deal metrics. Use list_customers first when you only know the company name. | Read-only |
| get_dashboard_overview | Return the operational 'what needs attention today' snapshot for this workspace: active/qualified/stale lead counts, pipeline value, weighted forecast and overdue activities. Takes no arguments. Use get_report for period trend analytics instead. | Read-only |
| get_deal | Fetch one pipeline deal in the selected workspace by deal id, including stage, value, probability and linked company/contact data when present. Use search_deals first when you only know the title or related customer. | Read-only |
| get_lead | Fetch one CRM lead in the selected workspace by lead id, including status, source, assignee, tags, custom fields, score, notes and next action. Use search_leads first when you only know a name, email, phone or company. | Read-only |
| get_marketplace | Fetch one connected marketplace in detail: every adapter on it with its setup state, last poll, last poll error, last catalog-sync outcome and last product import, plus the channel sales, leads and product counts. Use list_marketplaces first to see which platforms are connected. Use list_channel_products for the products on the channel and check_channel_readiness for what would be refused. | Read-only |
| get_order | Fetch full order detail in the selected workspace by externalId, including line items, payments, shipments and returns. Use list_orders first when you only know the customer or date. | Read-only |
| get_product | Fetch one catalog product in the selected workspace by product id or SKU — returned in any status (draft, active, or archived; check the status field), including price, stock, category and brand fields. Provide exactly one known identifier; use search_products first when unsure (search covers active products only). | Read-only |
| get_report | Return one aggregated analytics report over a period for this workspace, selected by the report parameter: lead_source_conversion, pipeline_velocity, team_performance, or revenue_trend. Each returns aggregated rows (no per-record data); days tunes the look-back for conversion/team reports and months the span for revenue_trend. Use get_dashboard_overview for today's operational snapshot instead. | Read-only |
| get_workspace_info | Show which account and workspace this connection operates: signed-in name/email (OAuth only), workspace name, plan, connection type, and granted scopes. Call this when the user asks 'which account or workspace am I connected to?'. Sign-in connections can use list_workspaces and select_workspace to see or change the bound workspace. | Read-only |
| inspect_ebay_listings | Check up to 25 products against eBay before any write, with the same live preflight the CRM's eBay channel page and the real draft and publish calls run. Per product it returns the eBay state (off, member, draft, live, ended), nextAction (create_draft, publish_draft or none), whether that step is ready and, when not, the blocking reason with details. ebayDraftSetup lists the armed eBay sites and their currencies; remediation.ebayPlaybook maps every reason to the tool that fixes it; publishingEnabled says whether the owner allows AI to publish in this workspace. Reads eBay, never writes. Use search_products first for the ids; after a fix with update_product, upsert_product_prices or upsert_product_attributes, call it again — a reason can change or clear. | Read-only |
| list_activities | List this workspace's activities (tasks, calls, meetings, emails, notes), filtered by type/assignee/overdue/completion/linked-entity and paginated. Returns summary rows (id, type, title, priority, dueDate, completed, assignee, linked lead/contact/company/deal, isOverdue) plus pagination { page, perPage, total }. Use get_activity to fetch one activity's full detail by id. | Read-only |
| list_brands | List this workspace catalog brands with id, name, description and website. Use a brand id here as the brandId for create_product/update_product, or as the search_products brand filter. | Read-only |
| list_categories | List this workspace catalog categories as a flat array, each with id, name, slug and parentId (null for a root category). Categories are workspace-global, not per warehouse. Use a category id here as the categoryId for create_product/update_product, or as the search_products category filter. | Read-only |
| list_channel_products | List the products that are on one marketplace, with each listing external id, what the marketplace last reported about it (`presence`, valid only when `observedAt` is set — null `observedAt` means the marketplace has never been asked about that listing, not that it is absent; Prom is reconciled every 15 minutes, other channels only when a sync or publish runs), whether the workspace paused syncing it, its price and stock. Also returns the honest totals over the whole channel and the ACTIVE products that have no listing there at all (the 'did not match by SKU' list), which is usually the answer when a push updated fewer products than expected. Use check_channel_readiness for why a product would be refused. | Read-only |
| list_customers | List CRM customers (companies with a won deal or delivered order), filtered by health/lifetime-value/won-deal count, sorted and paginated. Returns summary rows (companyId, name, health, lifetimeValue, wonDeals, lastActivity, owner) plus pagination { page, perPage, total }. Use get_customer to fetch one customer's detail by company id. | Read-only |
| list_lead_sources | List this workspace's lead sources (built-in plus custom), with each source's key, label and active state. Pass includeInactive to also return archived sources. Use set_lead_sources to add or archive a source; use a source key here as the source filter for search_leads. | Read-only |
| list_marketplaces | List every marketplace connected to this workspace with its setup state, health, last activity, any current sync error, orders revenue per currency, leads, product counts on the channel and how many imported products are waiting to be reviewed. Answers 'which channels do I sell on and is anything broken'. Takes no arguments. Use get_marketplace for one channel in detail, list_channel_products for what is on it, and check_channel_readiness for what it will refuse. | Read-only |
| list_orders | List this workspace's orders, filtered by status/customer/created-date and paginated. Returns summary rows (externalId, status, currency, totalAmount, itemCount, timestamps) plus pagination { page, perPage, total }, newest first. Use get_order to fetch one order's full detail (line items, payments, shipments, returns) by externalId. | Read-only |
| list_pipeline_stages | List this workspace's pipeline stages in order, with each stage's id, name, kind, default probability, WIP limit and position. Use configure_pipeline to change a stage, and the stage id here as the stageId for create_deal / transition_deal. | Read-only |
| list_warehouses | List this workspace warehouses with id, name, address and phone. A product lives in at most one warehouse, and the warehouse decides the inventory-tracking default and which sales channels new products are listed on. Use a warehouse id here as the warehouseId for create_product. | Read-only |
| list_workspaces | List every workspace the connected user belongs to (id, name, role) and mark which one this connection currently operates. OAuth sign-in connections only. Use select_workspace to switch. | Read-only |
| publish_ebay_drafts | Make the eBay DRAFT offers of up to 25 products LIVE and buyer-visible — a real publication on the seller's account. The item and offer are refreshed from the current product first, so a price, title, photo or characteristic fixed after the draft was made is published too. Pass only products whose nextAction from inspect_ebay_listings is publish_draft. Returns done, failed (with reasons) and notAttempted. Never tell the user a listing is live unless it is counted in done. Refused until the owner switches on AI publishing. The result echoes the workspace. | Destructive |
| recreate_ebay_drafts | Delete each product's eBay draft and create a fresh one from its current data, for up to 25 products. Needed only when a draft must move to another category or eBay site, or the reason is ebayDraftOfferMissing or ebayNoOfferId — ordinary edits are picked up by publish_ebay_drafts. A live listing is refused. If the delete succeeds but the new draft fails, that product is left with no draft and its failure says so. Refused until the owner switches on AI publishing. The result echoes the workspace. | Destructive |
| remove_order_item | Remove a line item from an order. Recomputes the order total. Use get_order to find the order's externalId and the item's itemId. The result echoes the operating workspace. | Destructive |
| search_companies | List and search this workspace's companies, filtered by industry/status/owner, sorted and paginated. Returns summary rows (id, name, industry, size, status, owner, contactCount) plus pagination { page, perPage, total }. Use get_company to fetch one company's full detail by id. | Read-only |
| search_contacts | List and search this workspace's contacts, filtered by company/owner/tag, sorted and paginated. Returns summary rows (id, firstName, lastName, email, phone, jobTitle, company, owner, tags) plus pagination { page, perPage, total }. Use get_contact to fetch one contact's full detail by id. | Read-only |
| search_deals | List and search pipeline deals, filtered by stage/owner/company/contact/stale and paginated. Returns summary rows (id, title, stage, amount, probability, owner, company, contact, next-action, isStale) plus pagination { page, perPage, total }. Use get_deal to fetch one deal's full detail by id. | Read-only |
| search_leads | List and search this workspace's leads, filtered by text/status/source/created-date/stale and paginated. Returns summary rows (id, name, contact, company, status, source, assignee, tags, next-action, isStale, timestamps) plus pagination { page, perPage, total }, newest first. Use get_lead to fetch notes, position and score for one lead by id. | Read-only |
| search_products | List and search active catalog products, filtered by category/brand/collection/model (productGroupId — the other colours and sizes of one model)/size/color/price/stock/tag/type, sorted by name, price, newest or popularity (units sold in the last 90 days), and paginated. Returns summary rows (id, name, sku, type, price, currency, unit, stock, category, brand) plus pagination { page, perPage, total }. Use get_product to fetch one product's full detail by id or SKU. | Read-only |
| select_workspace | Re-bind this OAuth connection to the workspace selected by the user. Takes effect on the next tool call. Use the organizationId returned by list_workspaces or by WORKSPACE_SELECTION_REQUIRED; never invent or guess it. | Destructive |
| set_channel_membership | Mark or unmark up to 100 products for one connected sales channel (prom, rozetka, ebay, olx, …). It changes what the CRM intends to send: on Prom and Rozetka the next feed pull adds or drops the product; on eBay it only makes the product a channel member — a listing exists only after create_ebay_drafts and publish_ebay_drafts. It never arms a sync. Adding picks up active products only. Returns { affected, skipped } — skipped were already in that state. Refused until the workspace owner switches on AI publishing. Idempotent. The result echoes the workspace. | Destructive |
| set_lead_sources | Create or update a workspace lead source: set its label and active state by key (built-in or custom, lowercase_with_underscores). Idempotent — re-sending the same key updates it. Archiving the fallback 'other' source is not allowed. Use list_lead_sources to see current sources. The result echoes the operating workspace. | Destructive |
| transition_deal | Move a deal to a pipeline stage by its id. Closed-lost stages require a lostReason. Use search_deals for the deal id and list_pipeline_stages for the target stageId. The result echoes the operating workspace. | Destructive |
| update_company | Update fields on a company by id. Provide a patch with at least one field. Use search_companies first to find the company id. The result echoes the operating workspace. | Destructive |
| update_contact | Update fields on a contact by id. Provide a patch with at least one field. Use search_contacts first to find the contact id. The result echoes the operating workspace. | Destructive |
| update_lead | Update fields on an existing lead by id. Provide a patch with at least one field. Use search_leads first to find the lead id. The result echoes the operating workspace. | Destructive |
| update_order_item | Update a line item on an order (quantity, unit price, discount, name, or SKU). Recomputes the order total. Use get_order to find the order's externalId and the item's itemId. The result echoes the operating workspace. | Destructive |
| update_order_status | Move an order to a new status by externalId. Only valid transitions from the current status are allowed. Use list_orders to find the externalId and get_order to see the current status. The result echoes the operating workspace. | Destructive |
| update_product | Update fields on an existing catalog product by id — including status, to publish a draft or archive a product. Provide a patch with at least one field; use get_product first to see the current values. A changed stock number is applied as a relative movement and recorded in the product stock history; prefer adjust_stock when the intent is a correction with a reason. A change to price, stock, tracking or status is pushed to every connected sales channel. For a product that belongs to a model, a changed shared field (name, description, category, brand, unit, keywords, videos, material, pattern, gender, age group, size type, condition) is applied to the whole model and every article of it; productGroupId null detaches the product from its model, and the code of another model moves it there. The result echoes the operating workspace. | Destructive |
| upsert_product_attributes | Add or update characteristics (name, value, unit) on ONE product without removing the ones not named. Names match case-insensitively; a new name is appended. For eBay, use the item-specific names exactly as inspect_ebay_listings reported them (details.aspects), in the eBay site's own language — 'Marca' on ebay.it, not 'Brand'. Never invent a value: ask the user. Saves through the same product-card operation as the CRM form, with a version check (on CONFLICT re-read and retry). Idempotent. The result echoes the workspace. | Destructive |
| upsert_product_prices | Add or update the price ONE product sells at in another currency — for example EUR for an eBay site — keeping its other currencies and its own workspace-currency price. Send only an amount the user stated: never a converted or estimated price. The product's own currency is refused; change that with update_product's price. Saves through the same product-card operation as the CRM form, with a version check (on CONFLICT re-read the product and retry), and the new price reaches connected channels like a manual edit. Idempotent. The result echoes the workspace. | Destructive |
| withdraw_ebay_listings | End the LIVE eBay listing of up to 25 products: they stop being buyer-visible and their offers return to drafts — nothing is deleted, and publish_ebay_drafts can put them back. Needs the owner's AI publishing switch. Returns done, failed and notAttempted. The result echoes the workspace. | Destructive |
Change history
No changes since the first observation. The first snapshot is the baseline.
| Source | Listing | First seen | Last seen | Versions |
|---|---|---|---|---|
| Official MCP Registry | com.obriym-crm/mcp | 2 Oct 2026 | 2 Oct 2026 | 1 |