Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Obriym CRM

REMOTE · OBRIYM-CRM.COM · SCANNED SEP 20

Operate Obriym CRM from your AI assistant: leads, deals, orders, catalog, stock, marketplaces.

Available components

0 this week 94 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security94
Transport & Reachability100
Schema Quality & AI Usability82
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 8479 tokens (~163/item across 52 items; 52 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage94
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 82% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 53 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the Obriym CRM MCP server?

Obriym CRM is a hosted endpoint at https://obriym-crm.com/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · obriym-crm.com

# add to Claude Code
claude mcp add --transport http com-obriym-crm-mcp 'https://obriym-crm.com/api/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "com-obriym-crm-mcp": {
      "url": "https://obriym-crm.com/api/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-obriym-crm-mcp": {
      "type": "http",
      "url": "https://obriym-crm.com/api/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.com-obriym-crm-mcp]
url = "https://obriym-crm.com/api/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-obriym-crm-mcp": {
      "type": "remote",
      "url": "https://obriym-crm.com/api/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-obriym-crm-mcp --url 'https://obriym-crm.com/api/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-obriym-crm-mcp:
    url: "https://obriym-crm.com/api/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-obriym-crm-mcp": {
      "Transport": "http",
      "Url": "https://obriym-crm.com/api/mcp"
    }
  }
}
# add to Vellum
assistant mcp add com-obriym-crm-mcp -t streamable-http -u 'https://obriym-crm.com/api/mcp'
// mcp.json
{
  "mcpServers": {
    "com-obriym-crm-mcp": {
      "type": "http",
      "url": "https://obriym-crm.com/api/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 17 Sept 26 0
    • Tool “search_products” rewrote its description, which is the text the model reads security
    • Server version: 1.8.1 → 1.8.2 functional
    • “search_products” added an optional parameter “productGroupId” cosmetic
  • 16 Sept 26 0
    • Tool “search_products” rewrote its description, which is the text the model reads security
    • “create_product” added an optional parameter “videos” cosmetic
    • “search_products” added an optional parameter “collection” cosmetic
    • “search_products” added an optional parameter “color” cosmetic
    • “search_products” added an optional parameter “size” cosmetic
    • “search_products” reworded the description of “sort” cosmetic
  • 15 Sept 26 0
    • Tool “adjust_stock” rewrote its description, which is the text the model reads security
    • Server version: 1.8.0 → 1.8.1 functional
    • Server version: 1.7.0 → 1.8.0 functional
    • “create_order” added an optional parameter “discountAmount” cosmetic
    • “create_order” added an optional parameter “promoCode” cosmetic
  • 14 Sept 26 0
    • Tool “check_channel_readiness” rewrote its description, which is the text the model reads security
    • Server version: 1.6.1 → 1.7.0 functional
  • 12 Sept 26 +2
    • Authorization: fail → pass security
  • 11 Sept 26 −2
    • Authorization: pass → fail security
    • Server version: 1.6.0 → 1.6.1 functional
  • 31 Aug 26 0
    • Server version: 1.5.0 → 1.6.0 functional
    • “create_product” added an optional parameter “ageGroup” cosmetic
    • “create_product” added an optional parameter “color” cosmetic
    • “create_product” added an optional parameter “condition” cosmetic
    • “create_product” added an optional parameter “gender” cosmetic
    • “create_product” added an optional parameter “material” cosmetic
    • “create_product” added an optional parameter “pattern” cosmetic
    • “create_product” added an optional parameter “productGroupId” cosmetic
    • “create_product” added an optional parameter “size” cosmetic
    • “create_product” added an optional parameter “sizeSystem” cosmetic
    • “create_product” added an optional parameter “sizeType” cosmetic
  • 29 Aug 26 0
    • Server version: 1.4.2 → 1.5.0 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Probed https://obriym-crm.com/api/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=*.obriym-crm.com CN=YR2,O=Let's Encrypt,C=US 5 Sept 2026 4 Dec 2026 RSA 2048 SHA256-RSA 6df74199d1e390b214f2d893603d635f185
SANs: *.obriym-crm.com, obriym-crm.com
CN=YR2,O=Let's Encrypt,C=US (CA) CN=Root YR,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 RSA 2048 SHA256-RSA 4ebd24947e24d394802d84a52fd5b319
CN=Root YR,O=ISRG,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 RSA 4096 SHA256-RSA f24b6d17f9d9ad7cb1c9fea78782699f

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of obriym-crm.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
obriym-crm.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On tool calls
HTTP status 200

WWW-Authenticate challenge Bearer error="invalid_token", error_description="Authentication required for this tool", resource_metadata="https://obriym-crm.com/.well-known/oauth-protected-resource"

Bearer error="invalid_token", error_description="Authentication required for this tool", resource_metadata="https://obriym-crm.com/.well-known/oauth-protected-resource"
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
x-content-type-options nosniff
x-frame-options SAMEORIGIN
referrer-policy strict-origin-when-cross-origin
permissions-policy camera=(), microphone=(), geolocation=(), browsing-topics=()

Protected resource metadata

Document https://obriym-crm.com/.well-known/oauth-protected-resource
Retrieved Yes
Resource https://obriym-crm.com/api/mcp
Authorisation server https://obriym-crm.com/api/auth

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://obriym-crm.com/api/mcp Verified 200
http (plaintext) http://obriym-crm.com/api/mcp HTTPS enforced 308 https://obriym-crm.com/api/mcp
MCP tools · 52 exposed · ~8,245 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
add_order_item ~192

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.

NameTypeReqDescription
discountnumberPercentage discount on this line (0-100). Default 0.
externalIdstringyesThe order externalId returned by list_orders or create_order.
productNamestringyesLine item name, snapshotted onto the order. Use search_products to quote a real catalog product's name. Required.
quantityintegeryesQuantity ordered (integer, at least 1).
skustringProduct SKU snapshot (from search_products). Optional.
unitPriceyesPrice per unit in the order currency, as a decimal (e.g. 199.99). Snapshotted onto the line.

No output schema declared.

No examples provided.

adjust_stock ~228

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.

NameTypeReqDescription
deltaintegeryes
externalIdstring
metadataobject
notestring
productIdstringyes
reasonstringyes

No output schema declared.

No examples provided.

assign_lead ~93

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.

NameTypeReqDescription
assignedToyesUser id of the workspace member to assign the lead to. Pass null to unassign.
idstringyesThe lead id returned by search_leads.

No output schema declared.

No examples provided.

check_channel_readiness ~180

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.

NameTypeReqDescription
platformstringyesThe marketplace slug returned by list_marketplaces (prom, rozetka, olx, amazon, ebay, shopify, woocommerce).

No output schema declared.

No examples provided.

complete_activity ~58

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.

NameTypeReqDescription
idstringyesThe activity id returned by list_activities.

No output schema declared.

No examples provided.

configure_pipeline ~96

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.

NameTypeReqDescription
idstringyesThe pipeline stage id returned by list_pipeline_stages.
patchobjectyesPipeline stage fields to update: name, default probability, WIP limit or position.

No output schema declared.

No examples provided.

convert_lead ~92

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.

NameTypeReqDescription
idstringyesThe lead id returned by search_leads.
inputobjectyesConversion options that decide whether to create/link contact, company and deal records.

No output schema declared.

No examples provided.

create_activity ~310

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.

NameTypeReqDescription
assignedToUser id of the workspace member to assign the activity to; null/omit for unassigned.
companyIdCompany id to link the activity to (from search_companies). Link at least one entity.
contactIdContact id to link the activity to (from search_contacts). Link at least one entity.
dealIdDeal id to link the activity to (from search_deals). Link at least one entity.
descriptionDetailed description or notes. Optional.
dueDateDue date/time, ISO 8601. Optional.
leadIdLead id to link the activity to (from search_leads). Link at least one entity.
prioritystringPriority. Optional. One of: low, medium, high.
recurrenceEndsAtWhen recurrence stops, ISO 8601. Optional; only meaningful with recurrenceRule.
recurrenceRuleRecurrence rule: daily, weekly, or monthly. Optional (one-off if omitted).
titlestringyesShort title of the activity. Required.
typestringyesActivity type. One of: task, call, meeting, email, note.

No output schema declared.

No examples provided.

create_company ~153

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.

NameTypeReqDescription
industryThe company's industry. Optional.
namestringyesThe company name. Required and unique within the workspace.
ownerIdUser id of the workspace member who owns this company. Optional.
sizestringCompany size band. Optional. One of: solo, small, medium, large, enterprise.
statusstringRelationship status. Optional. One of: prospect, active, inactive.
websiteThe company website URL. Optional.

No output schema declared.

No examples provided.

create_contact ~163

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.

NameTypeReqDescription
companyIdCompany id to link this contact to (from search_companies). Optional.
emailThe contact's email address. Optional.
firstNamestringyesThe contact's first name. Required.
jobTitleThe contact's job title. Optional.
lastNameThe contact's last name. Optional.
ownerIdUser id of the workspace member who owns this contact. Optional.
phoneThe contact's phone number. Optional.
tagsarrayTags for segmentation. Optional.

No output schema declared.

No examples provided.

create_deal ~300

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.

NameTypeReqDescription
amountstringDeal value as a decimal string, e.g. 1500.00. Optional.
companyIdCompany id to link the deal to (from search_companies); null/omit for none.
contactIdContact id to link the deal to (from search_contacts); null/omit for none.
expectedCloseDateExpected close date, ISO 8601. Optional.
lostReasonReason the deal was lost. Optional (required only for Closed-lost stages).
nextActionDatestringyesNext-action date, ISO 8601. Required.
nextActionNotestringyesWhat the next action on this deal is. Required.
notesFree-text notes on the deal. Optional.
ownerIdUser id of the workspace member to own the deal; null/omit for none.
probabilityintegerWin probability percent, 0-100. Optional (defaults from the stage).
stageIdstringyesPipeline stage id for the deal (from list_pipeline_stages). Required.
titlestringyesDeal title. Required.

No output schema declared.

No examples provided.

create_lead ~224

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.

NameTypeReqDescription
companyNamestringThe lead's company name, if known. Optional.
emailstringThe lead's email. Provide email or phone (at least one).
externalIdstringyesA stable unique id for this lead in your system — the idempotency key. Re-sending the same externalId returns the existing lead instead of creating a duplicate (e.g. 'mcp-<uuid>').
namestringyesThe lead's full name or label. Required.
notesstringFree-text notes about the lead. Optional.
phonestringThe lead's phone number. Provide email or phone (at least one).
sourcestringLead source; fixed to "website" for MCP-created leads.

No output schema declared.

No examples provided.

create_order ~414

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.

NameTypeReqDescription
currencystringISO 4217 currency code for the order (uppercase, e.g. UAH). Default UAH.
customerobjectOptional buyer snapshot (name/email/phone, or a storefront customer externalId). Omit for an anonymous order.
deliveryobjectHow the buyer asked to receive the order: carrier, branch/courier/pickup, branch text, recipient, cash-on-delivery and a delivery note. This is the buyer's choice at checkout — it does not dispatch a…
discountAmountnumberMoney taken off by the promo code, in the order currency. A sum, not a percent: a percent at order level is ambiguous (before or after line discounts, with shipping or without). Does NOT change total…
externalIdstringyesA stable unique id for this order in your system — the idempotency key. Re-sending the same externalId returns the existing order instead of creating a duplicate (e.g. 'mcp-<uuid>').
itemsarrayyesOrder line items (1-100). Each snapshots productName/sku/unitPrice.
notesstringInternal note stored on the order. For a delivery instruction from the buyer use delivery.comment instead.
promoCodestringThe promo code the storefront applied to this order, recorded as-is. The CRM never validates or computes it — the cart owns that — but storing it is what makes 'did that campaign pay for itself?' ans…

No output schema declared.

No examples provided.

create_product ~394

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. Enforces the workspace plan limit; the result echoes the operating workspace.

NameTypeReqDescription
ageGroup
brandId
bundleItemsarray
categoryId
color
compareAtPrice
condition
costPrice
depth
description
dimensionUnit
eanGTIN/EAN-8/12/13/14 barcode. Presence-and-shape validation only, no checksum.
gender
height
imagesarray
material
namestringyes
pattern
price
productGroupId
size
sizeSystem
sizeType
sku
statusstring
stock
supplierId
tagsarray
trackInventoryboolean
typestring
unit
videosarrayVideo links for the product page (YouTube, Vimeo or a direct file), https only, at most 5. Links, not uploads. On update, sending the field replaces the whole list.
warehouseId
weight
weightUnit
width

No output schema declared.

No examples provided.

get_activity ~66

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.

NameTypeReqDescription
idstringyesThe activity id returned by list_activities.

No output schema declared.

No examples provided.

get_company ~60

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.

NameTypeReqDescription
idstringyesThe company id returned by search_companies.

No output schema declared.

No examples provided.

get_contact ~61

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.

NameTypeReqDescription
idstringyesThe contact id returned by search_contacts.

No output schema declared.

No examples provided.

get_customer ~62

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.

NameTypeReqDescription
companyIdstringyesThe company/customer id returned by list_customers.

No output schema declared.

No examples provided.

get_dashboard_overview ~54

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_deal ~65

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.

NameTypeReqDescription
idstringyesThe deal id returned by search_deals.

No output schema declared.

No examples provided.

get_lead ~74

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.

NameTypeReqDescription
idstringyesThe lead id returned by search_leads.

No output schema declared.

No examples provided.

get_marketplace ~118

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.

NameTypeReqDescription
platformstringyesThe marketplace slug returned by list_marketplaces (prom, rozetka, olx, amazon, ebay, shopify, woocommerce).

No output schema declared.

No examples provided.

get_order ~59

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.

NameTypeReqDescription
externalIdstringyesThe order externalId returned by list_orders.

No output schema declared.

No examples provided.

get_product ~96

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).

NameTypeReqDescription
idstringThe product id returned by search_products.
skustringThe product SKU returned by search_products.

No output schema declared.

No examples provided.

get_report ~226

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.

NameTypeReqDescription
daysLook-back window for conversion/team reports (default 90/30).
monthsintegerNumber of months for the revenue-trend report (default 6).
reportstringyesWhich analytics report to return. lead_source_conversion: leads and conversion rate per source (uses days). pipeline_velocity: average time deals spend in each stage. team_performance: revenue and ac…

No output schema declared.

No examples provided.

get_workspace_info ~74

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_activities ~340

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.

NameTypeReqDescription
assignedTostringFilter to activities assigned to this workspace member's user id.
companyIdstringFilter to activities linked to this company id (from search_companies).
completedstringFilter by completion: "true" only completed, "false" only open. Omit for both.
contactIdstringFilter to activities linked to this contact id (from search_contacts).
dealIdstringFilter to activities linked to this deal id (from search_deals).
leadIdstringFilter to activities linked to this lead id (from search_leads).
overduestringSet "true" to return only overdue activities (past due date, not completed).
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of activities per page (1-100). Default 20.
qstringFree-text search over the activity title. Omit for no text filter.
typestringFilter by activity type. Omit for any. Allowed: task, call, meeting, email, note.

No output schema declared.

No examples provided.

list_brands ~46

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_categories ~67

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_channel_products ~191

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.

NameTypeReqDescription
platformstringyesThe marketplace slug returned by list_marketplaces (prom, rozetka, olx, amazon, ebay, shopify, woocommerce).

No output schema declared.

No examples provided.

list_customers ~263

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.

NameTypeReqDescription
healthstringFilter by customer health. Omit for any. Allowed: healthy, at_risk, churned.
ltvstringFilter by lifetime-value bucket. Omit for any. Allowed: lt10k, 10k50k, gt50k.
ownerIdstringFilter to customers owned by this workspace member's user id.
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of customers per page (1-100). Default 25.
qstringFree-text search over the customer company name. Omit for no text filter.
sortDirstringSort direction by lifetime value. Default desc (highest first).
wonDealsMinintegerOnly customers with at least this many won deals.

No output schema declared.

No examples provided.

list_lead_sources ~85

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.

NameTypeReqDescription
includeInactivebooleanSet true to include archived/inactive lead sources.

No output schema declared.

No examples provided.

list_marketplaces ~101

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_orders ~264

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.

NameTypeReqDescription
customerExternalIdstringFilter to one storefront customer by their externalId (the id from the source system). Omit to list all customers' orders.
fromstringOnly orders created at or after this ISO 8601 timestamp (e.g. 2026-01-31T00:00:00Z).
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of results per page (1-100). Default 20.
statusstringFilter by order status. Omit to return every status. Allowed: pending, confirmed, processing, shipped, delivered, cancelled, refunded.
tostringOnly orders created at or before this ISO 8601 timestamp (e.g. 2026-02-28T23:59:59Z).

No output schema declared.

No examples provided.

list_pipeline_stages ~64

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_warehouses ~64

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_workspaces ~45

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

remove_order_item ~82

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.

NameTypeReqDescription
externalIdstringyesThe order externalId returned by list_orders or create_order.
itemIdstringyesThe order item id returned by get_order.

No output schema declared.

No examples provided.

search_companies ~209

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.

NameTypeReqDescription
industrystringFilter to companies in this industry. Omit for any industry.
ownerIdstringFilter to companies owned by this workspace member's user id.
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of companies per page (1-100). Default 25.
qstringFree-text search over the company name. Omit for no text filter.
sortDirstringSort direction by name. Default asc.
statusstringFilter by relationship status. Omit for any. Allowed: prospect, active, inactive.

No output schema declared.

No examples provided.

search_contacts ~235

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.

NameTypeReqDescription
companyIdstringFilter to contacts at this company id (from search_companies).
ownerIdstringFilter to contacts owned by this workspace member's user id.
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of contacts per page (1-100). Default 25.
qstringFree-text search over name, email and company. Omit for no text filter.
sortBystringField to sort by. Default name. Allowed: name, email, createdAt.
sortDirstringSort direction. Default asc.
tagstringFilter to contacts carrying this tag. Omit for any tag.

No output schema declared.

No examples provided.

search_deals ~248

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.

NameTypeReqDescription
companyIdstringFilter to deals linked to this company id (from search_companies).
contactIdstringFilter to deals linked to this contact id (from search_contacts).
ownerIdstringFilter to deals owned by this workspace member's user id.
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of deals per page (1-100). Default 25.
qstringFree-text search over the deal title. Omit for no text filter.
stageIdstringFilter to deals in this pipeline stage id (from list_pipeline_stages).
stalestringSet "true" to return only stale deals (past their next-action date or long untouched).

No output schema declared.

No examples provided.

search_leads ~336

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.

NameTypeReqDescription
fromstringOnly leads created at or after this ISO 8601 timestamp (e.g. 2026-01-31T00:00:00Z).
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of results per page (1-100). Default 20.
qstringFree-text search over lead name, email, phone, or company. Omit for no text filter.
sourcestringFilter by lead source key (e.g. website, referral, telegram). Use list_lead_sources to see the workspace's keys. Omit for all sources.
staleSet true to return only stale leads: not unqualified/converted and either past their next-action date or untouched for more than 7 days.
statusstringFilter by lead status. Omit to return every status. Allowed: new, contacted, qualified, unqualified, converted.
tostringOnly leads created at or before this ISO 8601 timestamp (e.g. 2026-02-28T23:59:59Z).

No output schema declared.

No examples provided.

search_products ~753

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.

NameTypeReqDescription
brandIdstringFilter to one brand by its id. Empty string means any brand.
categoryIdstringFilter to one category by its id. Empty string means any category.
collectionstringFilter to the products of one collection, by its slug from GET /collections. Only a collection that is visible and in season matches — an unknown, hidden or out-of-season slug is reported as not foun…
colorstringFilter to products whose color equals this value, ignoring letter case (the product's own color field, not a free-form attribute). Empty means any color.
inStockstringSet "true" to return only products with stock available. Empty means include out-of-stock.
maxPricenumberOnly products priced at or below this amount (workspace currency).
minPricenumberOnly products priced at or above this amount (workspace currency).
pageinteger1-based page number of results to return. Default 1.
perPageintegerNumber of products per page (1-100). Default 20.
productGroupIdstringFilter to the variants of one model: products whose productGroupId equals this value exactly. It is the merchant's (or supplier's) own model code, so letter case is part of it. Use it to render the o…
qstringFree-text search over product name and SKU. Empty for no text filter.
sizestringFilter to products whose size equals this value, ignoring letter case (the product's own size field). Empty means any size.
sortstringSort order. Empty sorts by name. Allowed: name_asc, name_desc, price_asc, price_desc, newest, popular — popular ranks by units sold in confirmed, processing, shipped or delivered orders over the last…
statusstringFilter by catalog status. Empty keeps the storefront default of active only. Use "draft" to find products waiting to be reviewed (marketplace imports and unknown SKUs from orders land there), or "any…
stockStatestringFilter by stock state, for products that track inventory. "low" returns products at or under their reorder threshold; "out" returns products with nothing left. Empty applies no stock-state filter.
tagstringFilter to products carrying this tag. Empty means any tag.
typestringFilter by product type. Empty for any; "simple" or "bundle".
warehouseIdstringFilter to products in one warehouse by its id, from the warehouse list. Use "none" for products assigned to no warehouse — they match no id, so nothing else surfaces them. Empty means any warehouse.…

No output schema declared.

No examples provided.

select_workspace ~76

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.

NameTypeReqDescription
organizationIdstringyesThe workspace organizationId chosen by the user from list_workspaces or WORKSPACE_SELECTION_REQUIRED.

No output schema declared.

No examples provided.

set_lead_sources ~150

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.

NameTypeReqDescription
isActivebooleanyesWhether the source is selectable for new leads. Set false to archive it (the fallback 'other' source cannot be archived).
keystringyesStable source key, lowercase_with_underscores (built-in or custom).
labelstringyesHuman-readable label shown for this source in the UI.

No output schema declared.

No examples provided.

transition_deal ~120

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.

NameTypeReqDescription
idstringyesThe deal id returned by search_deals.
lostReasonReason the deal was lost. Required when the target stage is a Closed-lost stage; otherwise omit.
stageIdstringyesThe target pipeline stage id to move the deal to (from list_pipeline_stages).

No output schema declared.

No examples provided.

update_company ~77

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.

NameTypeReqDescription
idstringyesThe company id returned by search_companies.
patchobjectyesThe company fields to update; include at least one changed field.

No output schema declared.

No examples provided.

update_contact ~75

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.

NameTypeReqDescription
idstringyesThe contact id returned by search_contacts.
patchobjectyesThe contact fields to update; include at least one changed field.

No output schema declared.

No examples provided.

update_lead ~79

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.

NameTypeReqDescription
idstringyesThe lead id returned by search_leads.
patchobjectyesThe lead fields to update; include at least one changed field.

No output schema declared.

No examples provided.

update_order_item ~114

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.

NameTypeReqDescription
externalIdstringyesThe order externalId returned by list_orders or create_order.
itemIdstringyesThe order item id returned by get_order.
patchobjectyesThe order item fields to update; include at least one changed field.

No output schema declared.

No examples provided.

Common questions

What is the Obriym CRM MCP server?

Obriym CRM is an MCP server listed in the public MCP registry as com.obriym-crm/mcp. Operate Obriym CRM from your AI assistant: leads, deals, orders, catalog, stock, marketplaces. This page covers its hosted endpoint (https://obriym-crm.com/api/mcp).

Is the Obriym CRM MCP server safe to use?

Obriym CRM scores 94 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Obriym CRM MCP server expose?

Obriym CRM exposes 52 tools: search_leads, get_lead, search_deals, get_deal, list_orders, and 47 more. Their descriptions and schemas cost roughly 8,245 tokens of context every time the server is loaded.

Does the Obriym CRM MCP server require authentication?

Yes. Obriym CRM asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the Obriym CRM MCP server still maintained?

Obriym CRM is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.