{
 "$schema": "https://agentdrives.com/schemas/tool.schema.json",
 "id": "prd_01m57vgtkr2m71cd3zbvx53yhb",
 "ids": {
  "org": "org_01m57vgtkrxm09e2e2qn8krt9c",
  "surfaces": {
   "web": "srf_01m5xzmsdnwg1y3mnv471214y0",
   "api": "srf_01m5xzmsdnpdxr837y30jermq7",
   "mcp": "srf_01m5xzmsdn6n53kn9rp32t9db5"
  },
  "slugs": [
   "insightly"
  ],
  "domain": "insightly.com",
  "wikidata": "Q24897996"
 },
 "slug": "insightly",
 "name": "Insightly",
 "url": "https://www.insightly.com",
 "domain": "insightly.com",
 "category": "crm",
 "category_name": "CRM",
 "tested_at": "2026-10-26",
 "run": "20261026T230018Z",
 "draft": false,
 "reviewed": true,
 "owner_verified": null,
 "origin": "editorial",
 "history": [
  {
   "run": "20261026T230018Z",
   "date": "2026-10-26",
   "level": 1,
   "engine": {
    "model": "claude-opus-5-5",
    "driver": 5,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "skip",
    "version": "2026.10.26",
    "commit": "c9dc53639e39858139bcbb43e0136d42b5ec4301",
    "prompts": {
     "version": "2026.10.26",
     "commit": "9bef5e75f8e732d063fdfff8e766feca445cb123"
    },
    "rules": {
     "version": "2026.10.26",
     "commit": "cf67ac91a72987684eab8ae070c6dfd1b32f6dae"
    }
   },
   "stop": "signup",
   "drives": 2,
   "paid": false,
   "agent_paid": null
  }
 ],
 "level": 1,
 "level_name": "Needs a person",
 "level_selfhost": null,
 "entry": "closed",
 "door": {
  "passed": 0,
  "tries": 2,
  "self_start": false
 },
 "badges": [],
 "not_counted": null,
 "stages": [
  {
   "key": "in",
   "label": "Access",
   "state": "no",
   "text": "Can't get in on its own",
   "at": "signup"
  },
  {
   "key": "work",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "portal"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account"
  }
 ],
 "outcomes": [
  {
   "key": "find",
   "label": "Learn",
   "state": "no",
   "text": "No docs it can act on",
   "have": [
    "openapi",
    "mcp"
   ],
   "docs": "unreachable"
  },
  {
   "key": "access",
   "label": "Access",
   "state": "no",
   "text": "Can't get in on its own",
   "at": "signup",
   "stage": "in"
  },
  {
   "key": "use",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured",
   "stage": "work"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "portal",
   "stage": "pay"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account",
   "stage": "leave"
  }
 ],
 "access": [
  {
   "key": "person",
   "label": "A person sets it up",
   "routes": [],
   "minutes": null,
   "core": null
  }
 ],
 "minutes": null,
 "next": {
  "to": 2,
  "text": "Next: let an agent sign up on its own"
 },
 "stop": "signup",
 "core": null,
 "scores": {
  "coverage": null,
  "reliability": null,
  "resilience": null,
  "setup": 70,
  "surface_coverage": null,
  "docs_accuracy": null,
  "docs_completeness": null
 },
 "parts": {
  "holds_up": null,
  "docs_match": null,
  "setup": 70,
  "security": null,
  "standards": [
   {
    "standard": "MCP client registration",
    "state": "behind",
    "behind": null,
    "value": "dcr"
   },
   {
    "standard": "OpenAPI",
    "state": "behind",
    "behind": 3,
    "value": "2.0"
   }
  ]
 },
 "reliability_method": null,
 "resilience": null,
 "stress": [
  {
   "capability": "credentials",
   "probe": "bad credential: a made-up API key",
   "outcome": "401 application/json {\"Message\":\"Authorization has been denied for this request.\"}",
   "grade": "vague",
   "idempotent": null,
   "rate_limit": null
  }
 ],
 "surface_audit": {
  "totals": {
   "items": 531,
   "documented": 531,
   "safe": 531,
   "exercised": 2,
   "passed": 1,
   "skipped": 0,
   "blocked": 529,
   "not_run": 0,
   "match": 2,
   "drift": 0,
   "broken_doc": 0,
   "docs_complete": 0,
   "docs_partial": 530,
   "docs_missing": 1,
   "errors_clear": 0,
   "errors_vague": 1,
   "errors_silent": 0
  }
 },
 "coverage_core": null,
 "coverage_own": null,
 "after_wall": null,
 "coverage_source": "computed",
 "driver": {
  "version": 5,
  "model": "claude-opus-5-5",
  "profile": "full",
  "assisted": false,
  "handoff": false
 },
 "methodology": 42,
 "rules_date": "2026-10-30",
 "engine": {
  "model": "claude-opus-5-5",
  "driver": 5,
  "signed": true,
  "inbox": [
   "agentdrives.com"
  ],
  "robots": "skip",
  "version": "2026.10.26",
  "commit": "c9dc53639e39858139bcbb43e0136d42b5ec4301",
  "prompts": {
   "version": "2026.10.26",
   "commit": "9bef5e75f8e732d063fdfff8e766feca445cb123"
  },
  "rules": {
   "version": "2026.10.26",
   "commit": "cf67ac91a72987684eab8ae070c6dfd1b32f6dae"
  }
 },
 "same_level_drives": 1,
 "drives": 2,
 "same_stop_drives": 2,
 "works_assisted": null,
 "freshness": "fresh",
 "newer_drives": null,
 "nothing_to_pay": false,
 "core_gated": false,
 "profiles": {},
 "agent_check": null,
 "agent_pass": null,
 "who_gets_in": {
  "server": {
   "state": "closed"
  },
  "signed": {
   "state": "page",
   "kind": "home",
   "at": "2026-10-26"
  },
  "browser": {
   "state": "unknown",
   "measured": false
  },
  "our_key": "verified",
  "robots": null,
  "tip": false
 },
 "ladder": {
  "docs": {
   "status": "headless",
   "note": "API v3.1 help page and Swagger 2.0 spec (527 operations) fetched without a browser; MCP setup article in the help centre; no llms.txt."
  },
  "signup": {
   "status": "human",
   "cause": "phone",
   "note": "The trial sign-up takes an email and sends a verification link, then onboarding step 1 requires a phone number (\"Your phone number must be filled out.\"); our agent has none, so no account was created."
  },
  "verify": {
   "status": "",
   "after_person": true
  },
  "credentials": {
   "status": "",
   "note": "The API key is only shown in User Settings of an account; no account could be made without a phone number.",
   "via": "",
   "reached": false
  },
  "first_call": {
   "status": "",
   "note": "No key: GET /v3.1/Contacts answers 401 {\"Message\":\"Authorization has been denied for this request.\"}.",
   "route": "account",
   "reached": false
  },
  "first_action": {
   "status": "",
   "note": "Not reached: no account.",
   "reached": false
  },
  "pay": {
   "status": "",
   "grade": "P1",
   "rails": [
    "card (in-app Billing & Account)"
   ],
   "rail_ids": [
    "card"
   ],
   "first_party": true,
   "rail_scope": "none",
   "trial_path": "no-card trial",
   "route": "portal",
   "checkout": {
    "reached": "no",
    "processor": "none",
    "captcha": "none",
    "three_ds": "not_seen",
    "card_form": false,
    "phone_field": "none",
    "wallets": [],
    "rail_offer": "none",
    "price": "29.00",
    "currency": "USD",
    "period": "month",
    "plan": "Plus",
    "last_button": ""
   },
   "person": "none",
   "ours": "no account",
   "note": "No 402, agent rail or billing API; buying is in the app (Billing & Account > Adjust Plan, card) per the billing docs, behind a sign-up that needs a phone number. Pricing: Plus $29 per user/month billed annually, 14-day trial without a card. We paid nothing (no 402 on the product's endpoints).",
   "reached": false
  },
  "cancel": {
   "status": "",
   "note": "Nothing to cancel: no trial or plan was started. The docs say self-serve Cancel Account in Billing and Account settings deletes the account and its data (web UI); stopping billing without losing data goes through Insightly billing.",
   "docs_grade": "",
   "reached": false
  },
  "delete": {
   "status": "",
   "note": "No account was created. An unfinished sign-up for address (link valid 7 days) and a public OAuth client from dynamic registration remain; the registration response gives no way to delete the client.",
   "account": false,
   "reached": false
  }
 },
 "routes": [
  {
   "route": "email_password",
   "offered": "seen",
   "tried": false,
   "not_tried": "same_as",
   "result": null,
   "wall": null,
   "person": "none",
   "brings": "nothing",
   "fresh": true,
   "minutes": null,
   "browser": null
  },
  {
   "route": "magic_link",
   "offered": "seen",
   "tried": true,
   "not_tried": null,
   "result": "walled",
   "wall": {
    "type": "phone",
    "owner": "product"
   },
   "person": "none",
   "brings": "inbox",
   "fresh": true,
   "minutes": 3,
   "browser": true
  },
  {
   "route": "oauth_consent",
   "offered": "documented",
   "tried": true,
   "not_tried": null,
   "result": "walled",
   "wall": {
    "type": "consent_needs_account",
    "owner": "product"
   },
   "person": "none",
   "brings": "nothing",
   "fresh": true,
   "minutes": 2,
   "browser": null
  }
 ],
 "checkout": {
  "reached": "no",
  "rail_offer": "none",
  "period": "month",
  "price": "29.00",
  "currency": "USD",
  "plan": "Plus"
 },
 "docs": {
  "at": "2026-10-26",
  "read": 0,
  "listed": 0,
  "sampled": false,
  "overall": "unreachable",
  "getting_started": "missing",
  "auth": "missing",
  "errors": "missing",
  "examples": "none",
  "freshness": "unknown",
  "newest": null,
  "core_pages": "0 of 8",
  "capabilities": "none",
  "label": "Couldn't be read"
 },
 "claims": null,
 "pay_options": {
  "checked": "2026-10-26",
  "source": "probe",
  "options": [],
  "agentic": [],
  "paid": null,
  "exercised": null,
  "detected_grade": null,
  "trial": {
   "no_card": true,
   "card_required": null,
   "free_plan": null
  },
  "owner_fixes": [
   {
    "title": "Accept x402 or MPP on your API",
    "how": "Answer an unpaid call with 402 and a payment challenge, so an agent pays per call or buys credits without an account or a card."
   },
   {
    "title": "List your plans on Stripe Projects",
    "how": "Agents buy a plan with `stripe projects add`, paid with a token under a spend cap the owner sets (projects.dev)."
   }
  ]
 },
 "surfaces": {
  "api": true,
  "openapi": true,
  "cli": false,
  "sdk": false,
  "mcp": "official",
  "llms_txt": false
 },
 "urls": {
  "docs": null,
  "llms_txt": null,
  "mcp": "https://mcp.insightly.com/mcp"
 },
 "surface_notes": {
  "api": "REST v3.1, HTTP Basic with an API key, 527 operations",
  "openapi": "Swagger 2.0, no securityDefinitions",
  "mcp": "official, OAuth with DCR; tools not listed without an account"
 },
 "surface_sizes": [
  {
   "kind": "api",
   "listed": 527,
   "tested": 0
  },
  {
   "kind": "mcp",
   "listed": 1,
   "tested": 0
  }
 ],
 "can_do": [
  "Read the API reference and Swagger 2.0 spec without an account",
  "Register an OAuth client for the MCP server without a browser (dynamic client registration)"
 ],
 "cannot_do": [
  {
   "what": "Create a trial account",
   "why": "Onboarding requires a phone number"
  },
  {
   "what": "Get an API key or MCP token",
   "why": "Both need an account"
  },
  {
   "what": "Create leads, deals, projects or tickets",
   "why": "No account, no credentials"
  }
 ],
 "blockers": [
  "Phone number required in sign-up onboarding step 1"
 ],
 "tips_for_agents": [
  "Read the API at https://api.{pod}.insightly.com/v3.1/Help and the Swagger at /v3.1/swagger/docs/v3.1; send the key … as the Basic username with an empty password.",
  "For the MCP server, register a client at https://login.insightly.com/register and run the code flow with PKCE S256 and resource=https://mcp.insightly.com/mcp.",
  "The trial sign-up needs a phone number at onboarding: have one before you start."
 ],
 "selfhost": null,
 "edge_case": "none",
 "summary": "Insightly documents a broad REST API (527 operations in a Swagger 2.0 spec) and an official OAuth MCP server, but our agent couldn't get in: the trial sign-up verifies the email and then requires a phone number before any account exists. No API key, MCP token or first action was reachable, and buying is an in-app card checkout behind the same sign-up.",
 "wall": "Phone number required at sign-up",
 "plan_scope": "",
 "robots_stop": null,
 "robots": null,
 "terms": null,
 "terms_read": "2026-10-26",
 "email_gate": null,
 "plain": {
  "summary": "Insightly is a CRM with a large documented API and an official MCP server for AI assistants. Our agent started the free trial and verified its email through the link on its own, but sign-up then requires a phone number, so no account was created and nothing past sign-up could be tried.",
  "can_do": [
   "Read the API reference and its technical spec without an account",
   "Register an OAuth client for the MCP server without a person",
   "Start the trial sign-up and open the verification email link in a browser"
  ],
  "cannot_do": [
   {
    "what": "Create a trial account",
    "why": "Onboarding requires a phone number the agent does not have"
   },
   {
    "what": "Get an API key or MCP token",
    "why": "Both need an account first"
   },
   {
    "what": "Create leads, deals, tickets or campaigns",
    "why": "No account and no credentials"
   },
   {
    "what": "Buy a plan",
    "why": "Checkout is inside an account that could not be created"
   }
  ]
 },
 "plan_gated": [],
 "reply": null,
 "capabilities": [
  {
   "id": "cap-01",
   "capability": "Create a lead",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Leads",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Leads"
   },
   "check": "GET /Leads/{LEAD_ID} returns the new lead record",
   "capability_id": "cap_0504r89v",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/sales-pipeline-lead-management/; https://www.insightly.com/crm/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-02",
   "capability": "Create a deal",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Opportunities",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Opportunities"
   },
   "check": "GET /Opportunities/{OPPORTUNITY_ID} returns the new opportunity",
   "capability_id": "cap_ety0meew",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/lead-oppty-management/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-03",
   "capability": "Update a deal or move its stage",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": "PUT /Opportunities",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Opportunities > pipeline board"
   },
   "check": "GET /Opportunities/{OPPORTUNITY_ID} shows the updated PIPELINE_ID/STAGE_ID",
   "capability_id": "cap_m8f5a2vy",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/lead-oppty-management/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-04",
   "capability": "Draft an email campaign",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Campaigns"
   },
   "check": "Campaign list shows the new campaign in draft status",
   "capability_id": "cap_dy157y6d",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/email-marketing/; https://www.insightly.com/marketing/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-05",
   "capability": "Build an email automation",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Journeys"
   },
   "check": "Journey builder shows the saved journey with configured steps",
   "capability_id": "cap_zhyba8bd",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/journey-builder/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-06",
   "capability": "Create a support ticket",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Tickets"
   },
   "check": "Ticket queue shows the new ticket with a generated ticket ID",
   "capability_id": "cap_swp2mqxy",
   "unmapped": null,
   "source": "https://www.insightly.com/service/; https://insightly.zendesk.com/hc/en-us/articles/51914814765588-Creating-and-Managing-Tickets",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-07",
   "capability": "Build a CRM workflow automation",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "AppConnect app > Recipes"
   },
   "check": "Recipe list shows the new recipe and its run log records executed tasks",
   "capability_id": "cap_74zkjgr2",
   "unmapped": null,
   "source": "https://www.insightly.com/appconnect/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-08",
   "capability": "Create a project or board",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Projects",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Projects"
   },
   "check": "GET /Projects/{PROJECT_ID} returns the new project",
   "capability_id": "cap_pe5me100",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/project-and-task-management/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-09",
   "capability": "Create a contact",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Contacts",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Contacts"
   },
   "check": "GET /Contacts/{CONTACT_ID} returns the new contact",
   "capability_id": "cap_w95e954c",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/sales-pipeline-lead-management/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-10",
   "capability": "Create a company",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Organisations",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Organisations"
   },
   "check": "GET /Organisations/{ORGANISATION_ID} returns the new organisation",
   "capability_id": "cap_shxrg99w",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/; https://documentation.insightly.com/hc/en-us/articles/51917461499156-Insightly-Web-API",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-11",
   "capability": "Create and send a quote",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Quotes",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Opportunity > Quotes"
   },
   "check": "GET /Quotes/{QUOTE_ID} shows the quote and its status",
   "capability_id": "cap_bgs1hwdj",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/products-price-books-and-quotes/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-12",
   "capability": "Set up pipeline stages",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Settings > Pipelines"
   },
   "check": "Opportunity pipeline shows the configured custom stages",
   "capability_id": "cap_pw8afps2",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/lead-oppty-management/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-13",
   "capability": "Sync a mailbox or calendar to the CRM",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Settings > Email"
   },
   "check": "Contact timeline shows synced email interactions",
   "capability_id": "cap_tqb3ws49",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/email-management/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-14",
   "capability": "Add a custom field to a record type",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Settings > Customization"
   },
   "check": "Record edit page shows the new custom field; API response includes the CUSTOMFIELDS entry",
   "capability_id": "cap_pd8aa77r",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/customization/; https://www.insightly.com/crm/validation-rules-advanced-permissions/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-15",
   "capability": "Read CRM reports and forecasts",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Dashboards"
   },
   "check": "Dashboard page renders the configured report widgets with current data",
   "capability_id": "cap_t84377te",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/dashboards-and-reporting/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-16",
   "capability": "Create a signup form",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Landing Pages & Forms"
   },
   "check": "Published landing page renders the embedded form",
   "capability_id": "cap_s7gkpaab",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/landing-pages-forms/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-17",
   "capability": "Create a segment",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Lists"
   },
   "check": "Dynamic list shows contacts matching its filter criteria",
   "capability_id": "cap_ynachpeg",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/dynamic-list-segmentation/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-18",
   "capability": "Score contacts",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Prospect Scoring"
   },
   "check": "Prospect record shows an updated score after a scored interaction",
   "capability_id": "cap_4efkw0a8",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/lead-scoring-grading/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-19",
   "capability": "A/B test a campaign",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Campaign > A/B test"
   },
   "check": "Campaign report shows variant performance and the declared winner",
   "capability_id": "cap_hc8wcqjq",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/ab-multivariate-testing/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-20",
   "capability": "Read campaign performance",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Marketing app > Dashboards"
   },
   "check": "Campaign dashboard shows open/click/UTM attribution metrics for the sent campaign",
   "capability_id": "cap_17gywz87",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/dashboards-and-reporting/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-21",
   "capability": "Reply to a customer on a ticket",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Ticket detail"
   },
   "check": "Ticket thread shows the agent reply and the customer-visible status change",
   "capability_id": "cap_vha05620",
   "unmapped": null,
   "source": "https://www.insightly.com/service/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-22",
   "capability": "Publish a help centre article",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Knowledge Base"
   },
   "check": "Public portal shows the published knowledge article",
   "capability_id": "cap_2v6b5a04",
   "unmapped": null,
   "source": "https://www.insightly.com/service/; https://insightly.zendesk.com/hc/en-us/articles/51914811237396-Create-and-Publish-Knowledge-Articles",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-23",
   "capability": "Set up a customer support portal",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Portal settings"
   },
   "check": "Branded public portal URL is reachable and shows configured branding/language",
   "capability_id": "cap_jzby7wvm",
   "unmapped": null,
   "source": "https://www.insightly.com/service/; https://insightly.zendesk.com/hc/en-us/articles/51914822100628-Brands-Portal-Guide",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-24",
   "capability": "Set an SLA policy or business hours",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Settings > SLA"
   },
   "check": "Ticket detail shows an SLA countdown reflecting the configured policy",
   "capability_id": "cap_nrpy0pbf",
   "unmapped": null,
   "source": "https://www.insightly.com/service/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-25",
   "capability": "Create or use a saved reply or macro",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Ticket detail > Macros"
   },
   "check": "Ticket reply shows the macro's pre-written content applied",
   "capability_id": "cap_nxe6n5s3",
   "unmapped": null,
   "source": "https://www.insightly.com/service/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-26",
   "capability": "Read support reports",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Dashboard"
   },
   "check": "Service dashboard shows ticket counts by hour/weekday/month matching current data",
   "capability_id": "cap_s4z0sem6",
   "unmapped": null,
   "source": "https://insightly.zendesk.com/hc/en-us/articles/51914832048020-Insightly-Service-Dashboard-Cards",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-27",
   "capability": "Connect a third-party integration",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "AppConnect app > Connectors"
   },
   "check": "Connector list shows the authorized third-party app as connected",
   "capability_id": "cap_x4n6bnwy",
   "unmapped": null,
   "source": "https://www.insightly.com/appconnect/integrations/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-28",
   "capability": "Ask the built-in AI assistant a question",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Copilot chat"
   },
   "check": "Copilot chat pane shows the generated reply/summary or record update",
   "capability_id": "cap_9qpyn3bj",
   "unmapped": null,
   "source": "https://www.insightly.com/crm/ai-crm/; https://www.insightly.com/crm/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-29",
   "capability": "Update a contact",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "PUT /Contacts",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > Contacts; MCP chat (Claude/ChatGPT)"
   },
   "check": "GET /Contacts/{CONTACT_ID} shows the changed field value",
   "capability_id": "cap_5w1hq959",
   "unmapped": null,
   "source": "https://www.insightly.com/mcp-server/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-30",
   "capability": "Create a follow-up task on a record",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /Tasks",
    "mcp": null,
    "cli": null,
    "ui": "CRM app > record > Tasks; MCP chat (Claude/ChatGPT)"
   },
   "check": "GET /Tasks/{TASK_ID} returns the new task linked to the record",
   "capability_id": "cap_76387ph3",
   "unmapped": null,
   "source": "https://www.insightly.com/mcp-server/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-31",
   "capability": "Set the brand logo and colours on the support portal",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Service app > Portal settings > Branding"
   },
   "check": "Public portal page renders the configured logo and colours",
   "capability_id": "cap_28j5w4mh",
   "unmapped": null,
   "source": "https://www.insightly.com/service/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-32",
   "capability": "Configure SAML SSO",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Account Settings > Security"
   },
   "check": "Login page offers the configured SSO identity provider",
   "capability_id": "cap_pz4pecfg",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-33",
   "capability": "Enable two-factor authentication",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Account Settings > Security"
   },
   "check": "User profile shows 2FA enabled and prompts for a second factor on next login",
   "capability_id": "cap_9qz744jy",
   "unmapped": null,
   "source": "https://www.insightly.com/marketing/",
   "result": "blocked",
   "via": null
  }
 ],
 "stale": false,
 "unreachable_since": null,
 "not_driven_since": null,
 "icon": "/logos/insightly.png",
 "agent_kinds": {
  "browser": {
   "who": "An assistant in a browser",
   "passed": [],
   "stop": "signup",
   "why": "it asks for a phone number",
   "tone": "wall",
   "text": "Signing up needs a person: it asks for a phone number."
  },
  "direct": {
   "who": "An agent talking to it directly",
   "passed": [],
   "stop": "signup",
   "why": "it asks for a phone number",
   "tone": "wall",
   "text": "Signing up needs a person: it asks for a phone number."
  }
 },
 "sdk": null,
 "surface_reach": null,
 "connect": {
  "mcp": {
   "url": "https://mcp.insightly.com/mcp",
   "transport": "streamable-http",
   "state": "documented",
   "sign_in": "2026-10-31"
  }
 },
 "surface_sources": {
  "mcp": "https://mcp.insightly.com/mcp",
  "api": "https://api.na1.insightly.com/v3.1/Help",
  "docs": "https://www.insightly.com/api-for-developers/",
  "openapi": "https://api.na1.insightly.com/v3.1/swagger/docs/v3.1"
 },
 "copilot_connector": null,
 "stripe_directory": null,
 "in_stripe_directory": null,
 "stripe_projects": null,
 "pay_rails": [],
 "stop_evidence": {
  "at": "signup",
  "date": "2026-10-26",
  "line": "The trial sign-up takes an email and sends a verification link, then onboarding step 1 requires a phone number (\"Your phone number must be filled out.\"); our agent has none, so no account was created."
 },
 "wall_vendor": null,
 "mcp_sign_in": {
  "sign_in": true,
  "prm": true,
  "registration": "dcr",
  "device": false
 },
 "safety_issues": 2,
 "fix_counts": {
  "small": 3,
  "medium": 3,
  "large": 1,
  "total": 7
 },
 "evidence_sha256": "b46e1f1acc8a446129797386b908c5df8ba187e2a53ae50f5814db651cd7b1ab",
 "first_seen": "2026-10-26",
 "license": {
  "name": "CC BY 4.0",
  "url": "https://creativecommons.org/licenses/by/4.0/"
 },
 "correction": {
  "status": "none",
  "open": 0,
  "since": null,
  "reply_by": null
 },
 "attribution": null,
 "confirmation": {
  "state": "awaiting",
  "drives": 2,
  "agree": 2,
  "review": null,
  "text": "2 drives on one day, awaiting confirmation"
 },
 "stop_shot": null,
 "stop_shot_hash": null,
 "attempts_count": 65,
 "detail": {
  "public": false,
  "in": [
   "report",
   "api"
  ],
  "since": "2026-10-17"
 },
 "what_it_does": "Insightly is a CRM with a large documented API and an official MCP server for AI assistants.",
 "kind": "product",
 "rules_version": "rules-2026-10-30-42",
 "rules_url": "https://agentdrives.com/method/changelog#rules-2026-10-30-42",
 "category_median": null,
 "peers": {
  "API-03": {
   "basis": "category",
   "n": 5,
   "below": 0,
   "above": 1
  },
  "API-04": {
   "basis": "category",
   "n": 5,
   "below": 1,
   "above": 0
  },
  "API-07": {
   "basis": "category",
   "n": 5,
   "below": 0,
   "above": 3
  },
  "ERR-01": {
   "basis": "category",
   "n": 7,
   "below": 0,
   "above": 0
  },
  "ERR-02": {
   "basis": "category",
   "n": 7,
   "below": 0,
   "above": 4
  },
  "ERR-03": {
   "basis": "category",
   "n": 7,
   "below": 0,
   "above": 5
  },
  "ERR-07": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 2
  },
  "FIND-06": {
   "basis": "category",
   "n": 8,
   "below": 3,
   "above": 0
  },
  "IN-03": {
   "basis": "category",
   "n": 6,
   "below": 1,
   "above": 0
  },
  "IN-08": {
   "basis": "category",
   "n": 11,
   "below": 0,
   "above": 4,
   "quartile": 2
  },
  "IN-11": {
   "basis": "category",
   "n": 11,
   "below": 0,
   "above": 4,
   "quartile": 2
  },
  "IN-12": {
   "basis": "category",
   "n": 11,
   "below": 0,
   "above": 4,
   "quartile": 2
  },
  "PAY-05": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 0
  },
  "PROTO-02": {
   "basis": "category",
   "n": 8,
   "below": 0,
   "above": 1
  }
 },
 "probe": {
  "checked": "2026-11-01",
  "status": "ok",
  "sign_up_page": "stopped",
  "wall": "stopped",
  "llms_txt": false,
  "mcp": "none",
  "openapi": false,
  "payment_402": null,
  "payment_rails": [],
  "files": {
   "openapi": {
    "url": null,
    "found": false
   },
   "llms_txt": {
    "url": null,
    "found": false
   },
   "llms_full": {
    "url": null,
    "found": false
   }
  }
 },
 "probe_history": [
  {
   "checked": "2026-11-01",
   "status": "ok",
   "sign_up_page": "stopped",
   "wall": "stopped",
   "llms_txt": false,
   "mcp": "none",
   "openapi": false,
   "payment_402": null,
   "payment_rails": []
  },
  {
   "checked": "2026-10-31",
   "status": "ok",
   "sign_up_page": "stopped",
   "wall": "stopped",
   "llms_txt": false,
   "mcp": "none",
   "openapi": false,
   "payment_402": null,
   "payment_rails": []
  },
  {
   "checked": "2026-10-30",
   "status": "ok",
   "sign_up_page": "stopped",
   "wall": "stopped",
   "llms_txt": false,
   "mcp": "none",
   "openapi": false,
   "payment_402": null,
   "payment_rails": []
  },
  {
   "checked": "2026-10-29",
   "status": "ok",
   "sign_up_page": "stopped",
   "wall": "stopped",
   "llms_txt": false,
   "mcp": "none",
   "openapi": false,
   "payment_402": null,
   "payment_rails": []
  },
  {
   "checked": "2026-10-28",
   "status": "ok",
   "sign_up_page": "stopped",
   "wall": "stopped",
   "llms_txt": false,
   "mcp": "none",
   "openapi": false,
   "payment_402": null,
   "payment_rails": []
  }
 ],
 "surface_changes": [],
 "agent_reports": null,
 "verdict": "L1 · Needs a person: an agent does not get in on its own at Insightly. Our agent read the API docs and the Swagger spec, then stopped at sign-up. The trial form sends a verification link, and onboarding then requires a phone number (\"Your phone number must be filled out.\"). No account was created, so no API key, MCP token or work was reached. Insightly documents a broad REST API and an official OAuth MCP server. Buying is a card checkout inside the app, behind the same sign-up, and the docs place Cancel Account in the web settings.",
 "changes": {
  "source": "store",
  "drives": [
   {
    "run": "20261026T120928Z",
    "date": "2026-10-26",
    "level": 1,
    "stop": "signup",
    "entry": "closed",
    "driver": 5,
    "listed": true,
    "paid": false,
    "agent_paid": null
   },
   {
    "run": "20261026T230018Z",
    "date": "2026-10-26",
    "level": 1,
    "stop": "signup",
    "entry": "closed",
    "driver": 5,
    "listed": true,
    "paid": false,
    "agent_paid": null
   }
  ],
  "events": [],
  "feed": "https://agentdrives.com/api/tools/insightly/changes.json"
 },
 "agreement": {
  "drives": 2,
  "agree": 2
 },
 "method_release": "2026-Q4.27",
 "found": {
  "agent_blockers": 1,
  "surface_issues": 1
 },
 "agent_surfaces": {
  "api": {
   "state": "documented",
   "reachable": null,
   "documented": 527,
   "tested": 0,
   "source": "https://api.na1.insightly.com/v3.1/Help"
  },
  "mcp": {
   "state": "documented",
   "reachable": null,
   "documented": 1,
   "tested": 0,
   "source": "https://mcp.insightly.com/mcp"
  },
  "cli": {
   "state": "none_found",
   "reachable": null,
   "documented": null,
   "tested": null,
   "source": null
  },
  "sdk": {
   "state": "none_found",
   "documented": null,
   "tested": null,
   "source": null
  },
  "docs": {
   "state": "documented",
   "documented": 0,
   "tested": 0,
   "source": "https://www.insightly.com/api-for-developers/"
  },
  "payment": {
   "state": "none_found",
   "documented": null,
   "tested": null,
   "source": null
  }
 },
 "issues_found": 2,
 "rank": null,
 "rank_of": 4,
 "rank_change": null,
 "rank_since": null,
 "links": {
  "category": [
   {
    "label": "Sales and customers",
    "href": "https://agentdrives.com/categories/sales"
   },
   {
    "label": "CRM",
    "href": "https://agentdrives.com/categories/crm"
   }
  ],
  "tasks": [],
  "walls": [
   {
    "label": "Phone number at sign-up",
    "href": "https://agentdrives.com/access/get-in/sign-up",
    "note": "kept our agent out"
   },
   {
    "label": "Let AI agents sign up without a phone number",
    "href": "https://agentdrives.com/guides/sign-up-without-a-phone-number",
    "note": "fix guide"
   }
  ],
  "vendors": [],
  "standards": [
   {
    "label": "MCP",
    "href": "https://agentdrives.com/standards/mcp",
    "note": "tools an agent can call"
   },
   {
    "label": "OpenAPI",
    "href": "https://agentdrives.com/standards/openapi",
    "note": "its API, described"
   }
  ],
  "steps": [
   {
    "label": "Find",
    "href": "https://agentdrives.com/access/find"
   },
   {
    "label": "Get in",
    "href": "https://agentdrives.com/access/get-in",
    "note": "stopped here"
   },
   {
    "label": "Use",
    "href": "https://agentdrives.com/access/use"
   },
   {
    "label": "Pay",
    "href": "https://agentdrives.com/access/pay"
   },
   {
    "label": "Leave",
    "href": "https://agentdrives.com/access/leave"
   }
  ],
  "rivals": [
   {
    "label": "Close",
    "href": "https://agentdrives.com/tools/close",
    "slug": "close",
    "level": 1
   },
   {
    "label": "Copper",
    "href": "https://agentdrives.com/tools/copper",
    "slug": "copper",
    "level": 1
   },
   {
    "label": "folk",
    "href": "https://agentdrives.com/tools/folk",
    "slug": "folk",
    "level": 1
   }
  ],
  "compare": [],
  "rail": [
   {
    "label": "Watch this product",
    "href": "https://agentdrives.com/watch"
   },
   {
    "label": "Get the data",
    "href": "https://agentdrives.com/data#plans"
   }
  ]
 },
 "capability_matrix": [
  {
   "id": "cap-01",
   "name": "Create a lead",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-02",
   "name": "Create a deal",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-03",
   "name": "Update a deal or move its stage",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-04",
   "name": "Draft an email campaign",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-05",
   "name": "Build an email automation",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-06",
   "name": "Create a support ticket",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-07",
   "name": "Build a CRM workflow automation",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-08",
   "name": "Create a project or board",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-09",
   "name": "Create a contact",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-10",
   "name": "Create a company",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-11",
   "name": "Create and send a quote",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-12",
   "name": "Set up pipeline stages",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-13",
   "name": "Sync a mailbox or calendar to the CRM",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-14",
   "name": "Add a custom field to a record type",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-15",
   "name": "Read CRM reports and forecasts",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-16",
   "name": "Create a signup form",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-17",
   "name": "Create a segment",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-18",
   "name": "Score contacts",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-19",
   "name": "A/B test a campaign",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-20",
   "name": "Read campaign performance",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-21",
   "name": "Reply to a customer on a ticket",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-22",
   "name": "Publish a help centre article",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-23",
   "name": "Set up a customer support portal",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-24",
   "name": "Set an SLA policy or business hours",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-25",
   "name": "Create or use a saved reply or macro",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-26",
   "name": "Read support reports",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-27",
   "name": "Connect a third-party integration",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-28",
   "name": "Ask the built-in AI assistant a question",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-29",
   "name": "Update a contact",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-30",
   "name": "Create a follow-up task on a record",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-31",
   "name": "Set the brand logo and colours on the support portal",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-32",
   "name": "Configure SAML SSO",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-33",
   "name": "Enable two-factor authentication",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  }
 ],
 "category_place": {
  "category": "crm",
  "products": 13,
  "higher": 4,
  "same_level": 8,
  "as_of": "2026-10-31",
  "stop": "signup",
  "rivals_by": "stop",
  "rivals": [
   "close",
   "copper",
   "hubspot",
   "nutshell",
   "salesforce",
   "streak",
   "zoho"
  ]
 },
 "page": "https://agentdrives.com/tools/insightly?via=api"
}