MCP servers
Connect an AI agent to Cypress over the Model Context Protocol, to work in your organization or to read what Cypress knows.
TL;DRAI summary
This chapter explains how your custom agent can connect to Cypress using three servers. Each server offers different tools for managing vehicle listings, accessing insights, or reading the product manual. You will need an API key or Connect Cypress token to sign in.
Cypress runs three servers for agents that speak the Model Context Protocol: give your agent the address and a credential, and it can work in Cypress and read what Cypress knows, under the same rules as the app; the manual needs no credential at all. Since 1.5.0.
| Server | Address | Tools |
|---|---|---|
| Cypress Operate | https://app.getcypress.ai/api/mcp/operate | Vehicles and their listings, offers, tasks, contacts, companies, deals, notes and interactions, emailing a contact, Mission Control, closings, notifications, campaigns, automations, Sell and Buy plans |
| Cypress Intelligence | https://app.getcypress.ai/api/mcp/intelligence | Insights on a vehicle or a buy target, valuation and comparables, dealer demand, the market board, buy matches, Sequoia's suggestions. Read-only |
| Cypress Manual | https://app.getcypress.ai/api/mcp/manual | Search and read this manual and its guides. Read-only, public, no credential |
Signing in
Every request carries a credential, exactly as the REST API takes it:
- An API key as a bearer (
Authorization: Bearer cyp_live_…, orcyp_test_…for a sandbox). Most MCP clients let you set a header. Never test with a live key: see Live and test keys. - A Connect Cypress token, for an app or an agent your organization
connected. A request without a credential answers
401withWWW-Authenticate: Bearer resource_metadata="…/.well-known/oauth-protected-resource/api/mcp/<server>", which names Connect Cypress as the authorization server. An MCP client needs no registration with Cypress: it signs in with a client ID metadata document, or registers itself at the server settings'registration_endpoint(RFC 7591), and its token acts for the admin who approved it.
A credential that was sent and is not valid (unknown, revoked or expired)
answers 401 with WWW-Authenticate: Bearer error="invalid_token" and its own
message; one that was never sent gets the bare challenge above.
Cypress staff connect with a CM token (cyp_cm_…, made by a Cypress
Manager in Settings › Developers). It acts as that person, under the same
rules as in the app: for the organization named in the Cypress-Organization
header, in ?organization= on the server's address, or in organizationId on
each organization's tool; the staff tools (archiving a vehicle for Cypress,
for example) need none. A connection is told who acts and for whom, and
_meta carries "ai.getcypress/actor": "STAFF".
Where a connection acts. On initialize and server/discover, Operate and
Intelligence say whether the credential's organization is LIVE or a
SANDBOX: _meta carries "ai.getcypress/environment", a sandbox's server
title ends in "(sandbox)", and the instructions open with it. In a sandbox
nothing reaches a real person (emails, campaign sends, reminders and signing
links are recorded and answered simulated), so an agent may try every write
tool there.
The tools a client sees are those the credential's scopes allow: a key with
tasks:read and tasks:write sees the task tools and nothing else. Cypress
Intelligence needs insights:read (and buy-planning:read for buy matches).
See Organization & scopes.
Try it
The MCP quickstart walks an agent through its first ten minutes in a sandbox, with the configuration for Claude Code, Cursor, Claude Desktop and other clients. In short: the Manual needs nothing. In Claude Code, for example:
claude mcp add --transport http cypress-manual "$BASE/api/mcp/manual"Operate and Intelligence take an API key from Organization → Integrations, with the scopes you want the agent to have:
claude mcp add --transport http cypress-operate "$BASE/api/mcp/operate" \
--header "Authorization: Bearer cyp_test_…"Operate shows an agent the core tools by
default: thirteen tools for the everyday work, and every other operation
through discover.
Try it on a sandbox first: its test key acts where nothing reaches a real person.
Add an area to the address to show its tools beside the core ones,
?toolsets=core,crm (see Tools by area). Any MCP client takes the same two things, an
address and a header. The MCP Inspector (npx @modelcontextprotocol/inspector,
transport Streamable HTTP) lists the tools and calls them one at a time. Plain
HTTP works too:
curl -X POST "$BASE/api/mcp/manual" \
-H "content-type: application/json" -H "MCP-Protocol-Version: 2025-06-18" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_manual","arguments":{"query":"connect an app"}}}'The protocol
All three servers speak Streamable HTTP, statelessly: one JSON-RPC message per
POST, answered with JSON. They serve the current revision, 2026-07-28
(the version, client and capabilities in each request's _meta, mirrored in
the MCP-Protocol-Version, Mcp-Method and Mcp-Name headers; server/discover
answers the supported versions, capabilities and server; the version may also
come as plain _meta.protocolVersion, or in the header alone), and clients of the
handshake revisions 2025-11-25, 2025-06-18 and 2025-03-26, which open
with initialize (no session is created; send the version you agreed on in
MCP-Protocol-Version). Errors are the protocol's own: -32022 for a version
the server does not speak (with the supported ones), -32020 when a header does
not match the body, 404 with -32601 for an unknown method, 405 for GET
and DELETE.
Tasks. Cypress Operate supports the Tasks extension (SEP-2663;
server/discover lists io.modelcontextprotocol/tasks). An import, of vehicles
(import_vehicles) or of CRM records (import_crm_records), runs in the
background, so to a client that says it takes tasks (the extension in that
request's _meta capabilities) an import that queued work answers a task
handle instead of a result: resultType: "task", a taskId and
pollIntervalMs. A vehicle import that queues both new vehicles and updates
is one task that follows both. The client polls tasks/get until the task is
completed, with the import's own answer as its result (an import that
failed completes too, with an error result). Cypress staff without an
organization on the connection name it on tasks/get with organizationId,
as on a tool call.
tasks/cancel and tasks/update are acknowledged; an import cannot be stopped
once queued. A task id works only for the organization that started it, and
every poll reads the import again as the caller. A client that does not take
tasks gets the plain answer, with the batch to follow with get_import or
get_crm_import.
What a tool answers. Every tool declares an outputSchema, and its answer
is structuredContent that fits it, with the same JSON, compact, in the text
block for clients that read text only. The schemas describe the answer loosely
(no field is required, any may be null) so a real answer is never refused; on
Operate they come from this API's own response schemas, two levels deep.
Cypress Operate
Its tools are generated from this API's own reference: each one takes the
endpoint's path and query parameters as arguments and its request body as
body, and is answered by the same code a REST call reaches. Every write,
Planning's included, takes dryRun (the route's own: every rule checked, what
would change said, nothing written) and idempotencyKey (a retry answers the
same, once). A write that
takes something away or cannot be taken back is annotated destructiveHint so
a client asks the person first: accepting, declining or withdrawing an offer,
sending a campaign now, taking a vehicle off the market, ending the sell
strategy, and every tool that deletes, removes, archives, revokes or dismisses
(a goal, a note, a photo, a location).
What follows is every operation Operate offers. An agent sees the core tools
by default and reaches the rest through discover and run_*; a connection
that asks for an area, or for all, is shown those operations as tools of
their own.
Lists answer a page an agent can read: 10 records unless the call names a
limit, each summarized (its own fields and links, without its lists, such
as a closing's steps) unless it asks for view: "full". Read one record in full
with its get_ tool. nextHref names the next page.
| Area | Tools |
|---|---|
| Core (the default) | find, get_context, brief, launch, reprice, answer_offer, advance_closing, log, discover, describe_operation, run_read, run_write, run_destructive: the everyday work, and every other operation through discovery. See Core tools |
| Tasks | list_tasks, get_task, create_task, update_task, complete_task, reassign_task, delete_task |
| Your organization | get_organization, list_members, list_connections (what this credential may do, who works there, the apps and agents connected); on a sandbox only, reset_sandbox (the sandbox as it was made, under the same key) |
| CRM | list_contacts, get_contact, create_contact, update_contact, add_contact_note, log_contact_interaction, email_contact, list_contact_notes, edit_contact_note, remove_contact_note, list_contact_interactions, edit_contact_interaction, remove_contact_interaction, list_contact_tags, tag_contacts, list_businesses, get_business, create_business, update_business, list_business_notes, add_business_note, edit_business_note, remove_business_note, list_business_interactions, log_business_interaction, edit_business_interaction, remove_business_interaction, list_business_tags, tag_businesses, list_deals, get_deal, create_deal, update_deal, move_deal_stage, list_deal_stages, list_deal_notes, add_deal_note, edit_deal_note, remove_deal_note, list_deal_interactions, log_deal_interaction, edit_deal_interaction, remove_deal_interaction |
| Offers | list_offers, get_offer, accept_offer, decline_offer, counter_offer, withdraw_offer |
| Vehicles and listings | list_vehicles (by status, lifeStage, VIN or its last characters, make and model), get_vehicle (it names its open listing), launch_vehicle (a listing; listingMode: "IMMEDIATE" puts the car live; a dry run names what the car lacks: locationState, mileage, condition, a price), update_listing, list_listings, get_listing, list_vehicle_costs, add_vehicle_cost, list_odometer_readings, record_odometer_reading, get_vehicle_ownership, set_vehicle_ownership; with an API key or a CM token only (their routes take no app or agent token): create_vehicle, push_vehicles (up to 500; with removeMissing the push is the whole inventory and the vehicles it leaves out are staged for archive, see Pushing inventory), update_vehicle, delete_vehicle, report_vehicle_sold_elsewhere, record_vehicle_departure |
| The app's vehicle actions | The buttons of a vehicle's page and the fleet grid, run by the app's own code as you (see The app's actions): list_vehicle_labels, add_vehicle_labels, remove_vehicle_labels, edit_labels_on_vehicles, change_vehicle_status, submit_vehicles_for_review, launch_approved_vehicle, launch_approved_vehicles, pause_vehicle, resume_vehicle, delist_vehicle, undo_vehicle_archive, set_vehicle_offer_rules, apply_pricing_rule, apply_pricing_rules, revalue_vehicle, revalue_vehicles, list_vehicle_valuations, list_vehicle_activity, check_vehicle_listing_readiness, get_vehicle_listing_metrics, get_vehicle_market_history, get_vehicle_comps, find_comparable_sales, get_vehicle_archive_record, list_vehicle_photos, add_vehicle_photo, remove_vehicle_photo, set_vehicle_cover_photo, reorder_vehicle_photos, add_vehicle_video, remove_vehicle_video, get_vehicle_history_report, attach_vehicle_history_report, list_vehicle_damages, add_vehicle_damage, remove_vehicle_damage, list_vehicle_share_links, create_vehicle_share_link, create_share_links, revoke_share_links, list_share_link_visitors, set_vehicles_visibility, set_vehicles_on_storefront, list_fleets, get_fleet_stats, get_fleet_metrics, add_vehicle, edit_vehicle (an agent never sets the floor or the target price), assign_vehicles_to_fleet, change_vehicles_status, set_floor_prices, set_listing_prices, request_vehicle_archive, delete_vehicles, list_vehicle_notices, get_vehicle_channel_flow; for Cypress staff dispose_vehicle, get_vehicle_engagement, get_vehicle_engagement_breakdowns, list_vehicle_engagement_actors, get_vehicle_engagement_actor — see De-listing |
| Mission Control | read_mission_control, delegate_item |
| Closings | list_closings, get_closing, remind_closing_step, request_closing_document, resend_signing_link, mark_closing_step — see Closings |
| Notifications | list_notifications, get_notification, get_notification_preferences, set_notification_preferences — see Notifications |
| Marketing | list_campaigns, get_campaign, create_campaign, update_campaign, activate_campaign, pause_campaign, send_campaign_now, delete_campaign, get_campaign_interest, list_campaign_sends, list_message_templates — see Marketing |
| Automations | list_automations, get_automation, validate_automation, create_automation, update_automation, save_automation_draft, dry_run_automation, submit_automation, activate_automation, deactivate_automation, list_automation_runs, get_automation_run, list_automation_run_steps — listed only while your organization has Automations; nothing runs until Cypress publishes it; see Automations |
| Planning | Sell: get_sell_plan, get_sell_strategy, set_sell_strategy, end_sell_strategy, list_sell_goals, add_sell_goal, change_sell_goal, remove_sell_goal, get_sell_quarter, approve_sell_quarter, propose_sell_schedule, apply_sell_schedule, list_plan_vehicles, get_plan_vehicle, list_plan_blockers, add_plan_blocker, change_plan_blocker, demote_vehicle, move_plan_vehicles, park_plan_vehicles, track_plan_vehicles, unpark_plan_vehicles, preview_window_cohort, confirm_window_cohort. Buy: get_buy_quarter, set_buy_quarter, approve_buy_quarter, draft_buy_quarter, keep_buy_draft, list_buy_targets, get_buy_target, create_buy_target, change_buy_target, remove_buy_target, dismiss_buy_match, list_buy_purchases, record_buy_purchase, change_buy_purchase, remove_buy_purchase — the Sell tools while your organization has Planning, the Buy ones while it has Buy planning; approving a quarter is a person's; see Sell planning and Buy planning |
| Remarketing: more of the app's screens | get_vehicle_planned_demand, list_offers_received, get_storefront, update_storefront, set_storefront_banner, set_storefront_logo, put_fleet_on_storefront, revoke_vehicle_share_link, reactivate_vehicle_share_link, delete_vehicle_share_link, list_vehicles_on_market, refresh_vehicle_sakura_read, list_labels, create_label, list_pricing_rules, create_pricing_rule, update_pricing_rule, read_import_file, import_vehicles, list_imports, get_import, decide_import_row, apply_import, appraise_vin, estimate_value, get_trading_book, get_company_report, get_company_insight, get_account_profile, get_my_engagement, get_my_profile_insight, suggest_vehicle_buyers |
| Planning: the app's screens | get_sell_forecast, get_plan_demand, get_market_board, get_plan_execution, list_window_reviews, list_plan_tasks, list_sell_decisions, list_plan_groups, get_plan_cost_assumptions, get_vehicle_plan_costs, schedule_plan_vehicles, allocate_plan_lot, create_plan_group, update_plan_group, remove_plan_group, apply_plan_group, set_plan_group_members, add_plan_track, change_plan_track, remove_plan_track, remove_plan_blocker, set_plan_cost_assumptions, set_vehicle_plan_costs, update_plan_vehicle_details, answer_sell_decision, add_window_review_feedback, request_planning, get_sell_desk, get_buy_plan, get_buy_forecast, get_buy_fit, get_buy_match_analysis, search_buy_catalog, list_buy_decisions, set_buy_plan_settings, answer_buy_decision, request_buy_bundle, request_buy_planning, get_buy_board |
| Buying | make_offer, buy_vehicle_now, accept_counter_offer, counter_back_offer, list_offers_made, list_offer_activity, read_offer_with_sakura, search_marketplace, get_marketplace_vehicle, open_share_link, list_marketplace_picks, dismiss_marketplace_pick, restore_marketplace_pick, get_purchase_profile, list_saved_vehicles, save_vehicle, unsave_vehicle, list_marketplace_alerts, create_marketplace_alert, update_marketplace_alert, delete_marketplace_alert, list_marketplace_alert_matches |
| Closings: the app's screens | list_closing_activity, list_closing_incidents, report_closing_incident, message_closing_incident, read_closing_with_sapele, get_closing_deal_setup, update_closing_deal_setup, enable_closing_deal_setup, confirm_closing_deal_setup, get_deal_setup_impact, get_deal_setup_core_facts, refresh_deal_setup_core_facts, get_closing_checklist_gaps, sync_closing_checklist, get_closing_step_blockers, upload_closing_document, get_closing_document, delete_closing_document, get_closing_document_options, generate_closing_document, get_closing_signatures, send_closing_document_for_signature, correct_signer_email, get_commission_invoice, start_commission_payment (Cypress's own apps only), cancel_closing, correct_closing_commission, record_off_platform_closing, regenerate_closing_fee, waive_closing_requirement, rollback_closing, run_closing_staff_action, set_closing_incident_status, analyze_closing_document, review_closing_document, get_closing_checklist, add_closing_checklist_item, customize_closing_checklist, change_closing_checklist_item, archive_closing_checklist_item, list_document_templates, create_document_template, get_document_template, save_document_template_draft, archive_document_template, set_document_template_background, remove_document_template_background, get_document_template_step, assign_document_template_step, publish_document_template, list_document_template_versions, restore_document_template_version, list_document_images, upload_document_image |
| CRM: the app's screens | get_contact_deliverability, suggest_contact_business, get_contact_engagement, get_contact_timeline, get_contact_insight, get_business_engagement, get_business_timeline, get_business_insight, get_deal_timeline, get_deal_insight, list_deal_contacts, get_crm_analytics, get_crm_insight, delete_contact, delete_business, delete_deal, add_business_from_organization, add_deal_contact, remove_deal_contact, add_deal_vehicles, remove_deal_vehicles, import_crm_records, get_crm_import, link_business_organization, list_contact_account_candidates, link_contact_account, open_deal_from_interest |
| Marketing and promotions: the app's screens | set_campaign_content, preview_campaign_email, list_campaign_recipients, estimate_campaign_audience, preview_campaign_contacts, send_campaign_test, get_campaign_test_send, list_campaign_audience_candidates, search_campaign_organizations, edit_platform_campaign, send_platform_campaign_now, get_message_template, create_message_template, save_message_template_draft, archive_message_template, clone_message_template, publish_message_template, list_message_template_versions, restore_message_template_version, get_engagement_overview, get_engagement_summary, get_engagement_breakdowns, get_engagement_by_vehicle, get_engagement_flow, list_engaged_visitors, list_warm_customers, get_engaged_visitor, list_promotions, get_promotion, create_promotion, update_promotion, publish_promotion, pause_promotion, archive_promotion, delete_promotion, get_promotion_insight, upload_promotion_hero, generate_promotion_hero, suggest_promotion_audience |
| Your organization | get_dealer_request, request_dealer_account, get_organization_profile, update_organization_profile, set_cypress_delegation, get_onboarding_status, invite_member, change_member_role, remove_member, list_locations, create_location, update_location, archive_location, list_lenders, create_lender, update_lender, archive_lender, list_bank_accounts, create_bank_account, update_bank_account, archive_bank_account, list_transporters, create_transporter, update_transporter, archive_transporter, list_title_addresses, create_title_address, update_title_address, archive_title_address, list_custom_fields, create_custom_field, update_custom_field, archive_custom_field, list_org_documents, upload_org_document, remove_org_document, get_seller_terms, set_seller_terms, list_invoices, get_billing_summary, get_invoice_settings, list_credit_movements, list_credit_notes, list_unapplied_bank_transfers, get_invoice_credit_offer, update_my_profile, list_my_activity |
| Work: the app's screens | list_interest |
| Huddle | list_huddle_rooms, get_huddle_room, list_huddle_messages, post_huddle_message, edit_huddle_message, delete_huddle_message, react_to_huddle_message, pin_huddle_message, list_huddle_pins, join_huddle_room, create_huddle_channel, add_huddle_members, open_huddle_direct, list_huddle_inbox — as the person or agent the credential acts for, never an API key; see Huddle |
| Cypress staff (a CM token only) | list_customer_organizations, get_customer_organization, create_customer_organization, update_customer_organization, change_organization_status, set_organization_profiles, get_organization_product, switch_organization_product, list_organization_activity, approve_organization_application, reject_organization_application, get_onboarding_checklist, mark_onboarding_checklist_item, add_onboarding_checklist_item, list_organization_documents, get_organization_document, upload_organization_document, analyze_organization_document, review_organization_document, remove_organization_document_slot, invite_organization_member, change_organization_member_role, update_organization_member_profile, revoke_organization_member, restore_organization_member, send_member_password_reset, update_organization_billing_details, get_organization_invoice_settings, update_organization_invoice_settings, list_organization_ach_batches, list_private_customers, get_private_customer, resend_customer_confirmation, list_cypress_staff, get_cypress_staff_member, list_cypress_staff_activity, get_default_account_manager, set_default_account_manager, get_account_rules, set_account_rules, get_organization_account_rules, set_organization_account_rules, get_organization_dealer_request, decide_dealer_request, list_update_requests, get_review_queue_counts, get_update_request, get_update_request_impact, reject_update_request, approve_price_update, approve_location_update, approve_archive_request, list_archived_vehicles, record_archive_decision, roll_back_archive, list_pending_label_applications, decide_label_application, list_platform_labels, create_platform_label, update_platform_label, delete_platform_label, list_label_rules, create_label_rule, list_platform_pricing_rules, create_platform_pricing_rule, update_platform_pricing_rule, delete_platform_pricing_rule, list_sales_channels, grant_sales_channel, update_sales_channel, list_commission_schemes, create_commission_scheme, update_commission_scheme, list_hub_automations, get_hub_automation, create_hub_automation, update_hub_automation, delete_hub_automation, save_hub_automation_draft, publish_automation, send_back_automation, run_hub_automation, duplicate_hub_automation, restore_automation_version, list_hub_automation_runs, get_hub_automation_run, get_platform_activity_overview, get_platform_activity_funnel, get_platform_activity_side, list_platform_activity_orgs, get_platform_activity_org, get_platform_activity_team, get_platform_activity_manager, get_platform_activity_coming_back, list_agent_benchmark_runs, get_agent_benchmark_run, list_agent_audit_items, decide_agent_audit_item |
| Agent quality (an app Cypress made only) | record_agent_benchmark_run, record_agent_audit_items, list_agent_verdicts: a first-party app's own token with agent-quality:write (Grove), never a partner app, a key, an agent or a CM token — see Agent quality |
A write Cypress keeps for a person is not made. When the rules say a person
decides (an email in your organization's name, an offer below the floor, a
policy, the other side's closing step), the tool answers with status: NEEDS_PERSON, the reason, and a
decisionLink, always: the record in Cypress where a person makes the call, or the screen for a decision that names no record. Give the
link to a person; do not retry. A refusal that says what to fix is not a person's decision: an automation
that uses a node your organization's automations may not contain comes back as an error
with its findings, one per node, so the agent can change the graph and try
again.
Cypress Intelligence
| Tool | Reads |
|---|---|
vehicle_insights | Cedar's sell or hold, pricing and campaign brief, and Sequoia's items, on your vehicle; on another organization's car for sale, only the Marketplace's listing insight. See Insights |
buy_target_insights | Your buy target's price guide and Sequoia's items on it |
vehicle_valuation | Your vehicle's latest valuation, and what the same year, make and model sold for on Cypress |
vehicle_demand, lot_demand | How many dealers plan to buy vehicles like yours, and how many they need |
market_board | What dealers want and what sellers plan to bring, across Cypress (with Planning) |
buy_target_matches | The live listings that fit your target |
sequoia_items | Sequoia's live suggestions on your Sell or Buy plan, with their reasons and guardrails |
The privacy rules are the app's: a figure from a seller's floor goes only to that seller; market counts appear only from two dealers, and a sold range only from five sales by two sellers or more; the market board never shows your own organization or a name.
Cypress Manual
The platform manual and guides, the pages under /docs, for an agent
that needs to know how Cypress works before it acts, or for anyone building on
it. It holds no customer data, so it takes no credential: point the agent at
the address and it is ready. It is limited to 120 requests a minute per caller,
and answers 429 with Retry-After: 60 past that. Search ranks a page by the
words of the question that are rare across the manual (common words such as
"how" count for nothing), in its title, its path and its text, and meets
"delist", "de-listing" and "delisting" as one word; a passage shown with a
result starts at a sentence or a word and ends at a word.
| Tool | Does |
|---|---|
search_manual | Finds the pages that answer a question in plain words (up to 10), each with its title, link, section and the passage that matched |
read_manual_page | Reads one page in full, as prose, by its path (/docs/developers/external-ids) or its link. Long pages are cut at 20,000 characters and say so |
list_manual_sections | Without arguments, the manual's sections (remarketing, planning, developers and the rest) with how many pages each has; with section, that section's pages, each with its title and path |
Skills
The Manual also serves Cypress's workflows for agents as
Agent Skills, over the MCP
Skills extension:
a client that supports skills lists them with skills/list and loads the one
a job needs. Each is a SKILL.md that walks an agent through the work with
the core tools, the rules included.
| Skill | What it walks an agent through |
|---|---|
skill://cypress/price-and-publish/SKILL.md | Finding what each car lacks to go live, filling it, launching with a dry run first, handing a floor to a person |
skill://cypress/triage-offers/SKILL.md | Reading each waiting offer with its car and prices, answering what a rule settles, handing the rest to a person |
skill://cypress/chase-a-closing/SKILL.md | Finding the late or waiting steps, reminding, asking for documents, re-sending signing links |
Every file comes with its SHA-256 digest and size, so a client can check what
it loads. A client without skills can read the same files with
resources/read.
Tools by area
An agent picks the right tool more reliably when it sees fewer of them. Each server groups its tools by business area, and a connection can ask for the areas its role needs on the server's URL:
https://app.getcypress.ai/api/mcp/operate?toolsets=closings,work
https://app.getcypress.ai/api/mcp/intelligence?toolsets=planningThe connection then sees those areas' tools only, among the ones its scopes
allow. Areas never widen what a credential may do: asking for marketing
without marketing:read shows nothing. Without toolsets, Operate shows the
core tools (core), with the staff tools
beside them for a CM token, and Intelligence and the Manual every tool they
have. A tool outside the areas a connection asked for answers which executor
or area reaches it. all shows every per-operation tool instead, for
a gateway that brings its own tool search; core,crm shows the core tools and
the CRM's own. A name the server does not have is an error
(-32602, naming the areas it offers), never an empty list. The
x-mcp-toolsets header works the same way, for clients that cannot change the
URL.
| Server | Area | Tools |
|---|---|---|
| Operate | core | The default: the everyday work in 13 tools, and every other operation through discover, describe_operation and run_* |
| Operate | all | Every per-operation tool the credential may use (about 400), for a gateway with its own tool search |
| Operate | work | Tasks, Mission Control, and what your members were told |
| Operate | remarketing | Your vehicles, their listings and offers: selling your cars and buying on Cypress |
| Operate | closings | Closings as seller or buyer |
| Operate | crm | Contacts, companies, deals, notes, interactions and emails |
| Operate | marketing | Campaigns |
| Operate | automations | Your own automations |
| Operate | planning | Sell and Buy plans: the mandate, goals, the quarter, Sequoia's schedule and buy draft |
| Operate | buying | The marketplace as a buyer: search, saved vehicles and searches, offers made, buy now |
| Operate | account | Your organization: settings, members, locations, banking, billing reads, imports, analytics |
| Operate | huddle | Conversations: the rooms you are in, their messages and threads, posting, reactions, pins, channels and your Inbox |
| Operate | staff | Cypress Managers only (a CM token): organizations, reviews, approvals, labels, rules, channels, automations |
| Operate | quality | First-party apps only (Grove): send the agent's benchmark runs and flagged answers, read Cypress's verdicts back |
| Intelligence | remarketing | Vehicle insights, valuations, dealer demand, the market board |
| Intelligence | planning | Buy target insights, live matches, Sequoia's suggestions |
| Manual | manual | Search and read the manual |
Suggested areas by role:
| Role | Operate | Intelligence |
|---|---|---|
| Any agent (the default, nothing to ask for) | core | none |
| Sales or remarketing agent | core,remarketing | remarketing |
| Closing coordinator | core,closings | none |
| CRM and outreach agent | core,crm,marketing | none |
| Buyer or planning agent | core,planning,buying | planning |
| Automation builder | core,automations | none |
| Back office (settings, team, billing reads) | core,account | none |
| Cypress Manager (CM token) | core,staff | none |
| A gateway with its own tool search | all | none |
Give each agent the scopes its role needs as well: the areas choose what it
is shown, the scopes what it may do. Operate's instructions carry the same
table, so an agent connected without toolsets reads which areas its job needs.
Switching a server off
Operate and Intelligence are on for every organization. An admin, or Cypress staff acting
for the organization, switches either off in Settings › Connected apps ›
MCP servers; every request from the organization's credentials then answers
403, saying where to turn it back on.
Keys and tokens
The credentials an app or an agent uses to work in Cypress, who each one acts as, where it is made, and how to show an agent only the tools its job needs.
Core tools
Thirteen tools for an agent's everyday work in Cypress, and every other operation through discovery. What Cypress Operate shows an agent by default.