- 1
read - 2
update - 3
create - 4
create
Update HubSpot after a sales meeting
Use a sales meeting to review the next step, deal note and follow-up task in HubSpot. Copy the prompt into ChatGPT or another connected LLM harness to start with a preview.
HubSpot · your accountLive-tested with synthetic HubSpot records · SDK and stdio MCP
Requires an account-owner API client for HubSpot connection setup. Read the setup and approval procedure.
- What you provide
- Your connected HubSpot account, exact deal and meeting IDs, timestamped transcript, active task owner, explicit UTC due time and spending cap.
- What you get
- An old/new preview, action status, provider record IDs and unattempted actions.
How your tool works.
Read one selected deal, preview transcript-backed changes, then apply the separately authorized next step, note and task in order. Python validates the structured review and preserves the other deal fields.
The LLM proposes changes from your transcript. The saved Python tool validates the review and runs fixed API calls. Your account owner authorizes the exact changes separately before they are applied.
The output.
An old/new preview, action status, provider record IDs and unattempted actions.
Synthetic meeting example
The customer requests EU hosting and targets a January 2027 rollout. The seller commits to sending security documents by October 20, 2026. The preview proposes that next step, a note containing the customer’s two statements, and a task for the explicitly selected active seller.
The fixture chooses October 20 at 17:00 UTC for the task; that time is reviewed separately. The deal stays at $25,000 USD with its December 1 close date. The rollout statement does not change the close date, and the other deal for the same company stays untouched.
Download the illustrative review JSON. Replace every identity placeholder and use the actual current deal values. This example grants no authorization.
The APIs in your tool.
Connect your own HubSpot account through Recurse’s account-owner flow. This tool reads one explicit deal. Changes require a separately stored authorization for the exact next step, note and task. Credentials stay in the trusted service.
- HubSpot · your account$0 / call
recurse.hubspot.deal.readPrice evidence and conditions
per_call · 0 USD per 1 call. Checked 2026-10-16. Source: Stage 45 native API contract and settled synthetic TEST receipts. Confidence: verified.
Native HubSpot provider basis is zero. Chargeable preparation and execution compute still apply; inspect the current total quote. Your own HubSpot account is required.
Price source · API documentation - HubSpot · your account$0 / call
recurse.hubspot.deal.next-step.updatePrice evidence and conditions
per_call · 0 USD per 1 call. Checked 2026-10-16. Source: Stage 45 native API contract and settled synthetic TEST receipts. Confidence: verified.
Native HubSpot provider basis is zero. Chargeable preparation and execution compute still apply; inspect the current total quote. Your own HubSpot account is required.
Price source · API documentation - HubSpot · your account$0 / call
recurse.hubspot.note.createPrice evidence and conditions
per_call · 0 USD per 1 call. Checked 2026-10-16. Source: Stage 45 native API contract and settled synthetic TEST receipts. Confidence: verified.
Native HubSpot provider basis is zero. Chargeable preparation and execution compute still apply; inspect the current total quote. Your own HubSpot account is required.
Price source · API documentation - HubSpot · your account$0 / call
recurse.hubspot.task.createPrice evidence and conditions
per_call · 0 USD per 1 call. Checked 2026-10-16. Source: Stage 45 native API contract and settled synthetic TEST receipts. Confidence: verified.
Native HubSpot provider basis is zero. Chargeable preparation and execution compute still apply; inspect the current total quote. Your own HubSpot account is required.
Price source · API documentation
These are dated API unit rates, not a whole-task quote. Your agent checks current availability and costs before execution. Settled provider costs pass through at 1×; preparation and execution compute are charged at 4×.
Use with ChatGPT or another LLM.
Your agent asks for missing inputs and a total spending cap before chargeable work.
Read the full build instructions
Use Recurse to turn my reviewed sales meeting into approved HubSpot deal updates. Reuse the pinned, deterministic meeting-crm Python project at https://recurse.run/examples/meeting-crm.zip. The LLM interprets the transcript outside the tool; the saved tool validates inputs and calls fixed APIs.
Read https://recurse.run/docs/hubspot-crm-tools for the complete connection, review, account-owner authorization and reconciliation procedure.
First check whether this ChatGPT session or other LLM harness has a Recurse connection, private Tools calls, file creation, source bundling and scoped HTTP upload. If authoring/upload is unavailable, provide the downloaded project and exact handoff instructions for a capable harness; do not pretend it ran. An existing prepared private version may be callable through a supported MCP connection. Never ask me to paste HubSpot credentials or an account-session token into chat, source or tool inputs.
Ask me for: the explicit HubSpot connection ID and verified portal ID; the exact deal ID; meeting ID and UTC time; transcript with timestamps and speaker roles; the active seller/task owner ID; an explicit UTC task due time and its reviewed time basis; and a total spending cap. A company name alone cannot select a deal. Connect only the HubSpot account I choose through the account-owner connection flow. Inspect current API availability, schemas and quotes before chargeable preparation and calls.
Use only recurse.hubspot.deal.read, recurse.hubspot.deal.next-step.update, recurse.hubspot.note.create and recurse.hubspot.task.create. Read the exact deal and retain its actual string/null values for expected next step, amount, currency, close date, owner and stage. Do not infer a domain or contacts from this read. Interpret the supplied transcript into the project's strict review schema. Every proposed statement needs an exact supporting quote with its timestamp and speaker; ask me to resolve missing evidence, seller identity and due time. Do not invent dates or commitments.
Prepare the source archive with tools.yaml and uv.lock using the documented private upload flow and my accepted cap. Call preview_meeting with {"review": review} and a stable request key. Preview only reads. Show me the full old/new next step, note, task subject, active owner, UTC due time, evidence and protected fields. Stop on conflicts and obtain a fresh review of the actual current values.
After I review the exact proposal, use the separate account-owner session flow outside the isolated tool: POST /v1/hubspot-meeting-authorizations on the selected Tools origin, with the documented exact review, request UUID and bounded expiry. If this harness cannot complete that owner flow, give me the exact proposal and owner-side instructions and wait for the returned authorization ID. A linked Tools key, a chat approval or a spending cap alone is insufficient CRM authority.
Call apply_meeting with only {"authorization_id": "the returned ID"}, my accepted cap and a stable request key. Apply the approved next step, associated note and associated task in order. Preserve amount, currency, close date, owner and stage. This workflow cannot update contacts, change other deal fields, list a pipeline, send emails or schedule background runs.
Inspect the durable receipt until execution and billing are terminal. Return complete/partial/rejected/conflict/unresolved status, completed provider IDs, failures and unattempted actions. Verify the selected provider record and associations through authorized owner inspection. Completed actions replay without another provider request. For pending/unknown effects stop and use the owner reconciliation route; never blindly retry a possibly transmitted creation. Report billing closure separately from CRM success. Start with preview only.Download the tested Python project
Use the prompt in a harness connected to Recurse. If it cannot create and upload the project or complete the owner authorization flow, the prompt gives you a handoff and pauses before applying changes.
Read the synthetic TEST evidence · Account-owner authorization procedure
Before you start.
Your interface needs file creation, source bundling and scoped HTTP upload as well as a Recurse connection.
Limits and validation
20 sequential API requests, 300 seconds, 64 KiB input and 256 KiB result per private run.
- Use your own verified HubSpot connection. Credentials stay in the trusted service.
- The LLM interprets the transcript outside the deterministic Python tool.
- Writes require an exact, separately stored account-owner authorization. Chat approval and a spending cap alone are insufficient.
- Only the next-step field, an associated note and an associated task can be written. Amount, currency, close date, owner and stage remain unchanged.
- Read-before-write is not an atomic compare-and-swap. Stop on conflicts or uncertain effects and reconcile through the owner flow.
- ChatGPT web-UI execution has not been acceptance-tested; supported harness capabilities vary.
The project passed live synthetic HubSpot TEST UAT through the SDK and ordinary stdio MCP. Production rejection guards were checked without CRM effects. A separate ChatGPT web-UI acceptance test has not been performed.