{"id":301790,"recorded_at":"2026-10-26T22:38:04.846007Z","observed_at":"2026-10-26T22:38:04.845956Z","subject_kind":"endpoint","subject":"cd6c7666-703d-4d85-a999-79efff1d015b","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":20,"tools":[{"description":"Create a new company. `name` is required. Twenty REST: POST /rest/companies.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"addressCity":{"description":"City (sent as address:{addressCity}).","type":"string"},"domainName":{"description":"Primary domain / website URL (sent as domainName:{primaryLinkUrl}).","type":"string"},"employees":{"description":"Employee count.","type":"number"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"idealCustomerProfile":{"description":"Whether this company matches the ideal customer profile.","type":"boolean"},"linkedinUrl":{"description":"LinkedIn URL (sent as linkedinLink:{primaryLinkUrl}).","type":"string"},"name":{"description":"The company name (required).","type":"string"},"xUrl":{"description":"X/Twitter URL (sent as xLink:{primaryLinkUrl}).","type":"string"}},"required":["name"],"type":"object"},"name":"twenty_create_company"},{"description":"Create a note. `title` is required; `body` holds the note content. (Attaching to records via noteTargets is out of scope.) Twenty REST: POST /rest/notes.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"body":{"description":"The note content/body.","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"title":{"description":"The note title (required).","type":"string"}},"required":["title"],"type":"object"},"name":"twenty_create_note"},{"description":"Create a new opportunity (deal). `name` is required; amountMicros combines with currencyCode into amount:{amountMicros,currencyCode}. Twenty REST: POST /rest/opportunities.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"amountMicros":{"description":"Opportunity amount in micros (× 1,000,000). Sent as amount:{amountMicros,currencyCode}.","type":"number"},"closeDate":{"description":"Expected close date (ISO 8601).","type":"string"},"companyId":{"description":"Id of the associated company.","type":"string"},"currencyCode":{"default":"USD","description":"Currency code for the amount (default USD; only sent when amountMicros is provided).","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"name":{"description":"The opportunity name (required).","type":"string"},"pointOfContactId":{"description":"Id of the point-of-contact person.","type":"string"},"stage":{"description":"Pipeline stage — e.g. SCREENING, MEETING, PROPOSAL, NEGOTIATION, CUSTOMER (custom pipelines vary).","type":"string"}},"required":["name"],"type":"object"},"name":"twenty_create_opportunity"},{"description":"Create a new person (contact). All fields optional; firstName/lastName combine into name:{firstName,lastName}. Twenty REST: POST /rest/people.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"city":{"description":"City.","type":"string"},"companyId":{"description":"Id of the company to link this person to.","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"firstName":{"description":"First name (combined into name:{firstName,lastName}).","type":"string"},"jobTitle":{"description":"Job title.","type":"string"},"lastName":{"description":"Last name (combined into name:{firstName,lastName}).","type":"string"},"linkedinUrl":{"description":"LinkedIn URL (sent as linkedinLink:{primaryLinkUrl}).","type":"string"},"primaryEmail":{"description":"Primary email address (sent as emails:{primaryEmail}).","type":"string"},"primaryPhone":{"description":"Primary phone number (sent as phones:{primaryPhoneNumber}).","type":"string"},"xUrl":{"description":"X/Twitter URL (sent as xLink:{primaryLinkUrl}).","type":"string"}},"type":"object"},"name":"twenty_create_person"},{"description":"Create a task. `title` is required. Twenty REST: POST /rest/tasks.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"assigneeId":{"description":"Id of the workspace member assigned to the task.","type":"string"},"body":{"description":"Task body / description.","type":"string"},"dueAt":{"description":"Due date/time (ISO 8601).","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"status":{"description":"Task status — e.g. TODO, IN_PROGRESS, DONE.","type":"string"},"title":{"description":"The task title (required).","type":"string"}},"required":["title"],"type":"object"},"name":"twenty_create_task"},{"description":"Get a single company by id. Twenty REST: GET /rest/companies/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"id":{"description":"The company id.","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_get_company"},{"description":"Get a single note by id. Twenty REST: GET /rest/notes/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"id":{"description":"The note id.","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_get_note"},{"description":"Get a single opportunity by id. Twenty REST: GET /rest/opportunities/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"id":{"description":"The opportunity id.","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_get_opportunity"},{"description":"Get a single person (contact) by id. Twenty REST: GET /rest/people/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"id":{"description":"The person id.","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_get_person"},{"description":"Get a single task by id. Twenty REST: GET /rest/tasks/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"id":{"description":"The task id.","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_get_task"},{"description":"List/filter companies. Supports cursor pagination, raw filter/order_by, and relation depth. Twenty REST: GET /rest/companies.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"ending_before":{"description":"Pagination cursor — return records before this cursor (from a previous page's pageInfo).","type":"string"},"filter":{"description":"Raw Twenty filter string, passed verbatim as ?filter=. Syntax: field[comparator]:value, e.g. `employees[gte]:100` or `stage[eq]:\"MEETING\"`. Comparators: eq, neq, gt, gte, lt, lte, in, is, like, ilike, startsWith.","type":"string"},"limit":{"description":"Results per page (1-60, default 20 — Twenty caps at 60).","maximum":60,"minimum":1,"type":"integer"},"order_by":{"description":"Raw Twenty ordering string, passed verbatim as ?order_by=, e.g. `createdAt[DescNullsLast]`.","type":"string"},"starting_after":{"description":"Pagination cursor — return records after this cursor (from a previous page's pageInfo).","type":"string"}},"type":"object"},"name":"twenty_list_companies"},{"description":"List all objects (standard + custom) and their fields from the Twenty schema — use this to discover custom objects/fields and valid field names. Twenty REST: GET /rest/metadata/objects.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"type":"object"},"name":"twenty_list_metadata_objects"},{"description":"List/filter notes. Supports cursor pagination, raw filter/order_by, and relation depth. Twenty REST: GET /rest/notes.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"ending_before":{"description":"Pagination cursor — return records before this cursor (from a previous page's pageInfo).","type":"string"},"filter":{"description":"Raw Twenty filter string, passed verbatim as ?filter=. Syntax: field[comparator]:value, e.g. `employees[gte]:100` or `stage[eq]:\"MEETING\"`. Comparators: eq, neq, gt, gte, lt, lte, in, is, like, ilike, startsWith.","type":"string"},"limit":{"description":"Results per page (1-60, default 20 — Twenty caps at 60).","maximum":60,"minimum":1,"type":"integer"},"order_by":{"description":"Raw Twenty ordering string, passed verbatim as ?order_by=, e.g. `createdAt[DescNullsLast]`.","type":"string"},"starting_after":{"description":"Pagination cursor — return records after this cursor (from a previous page's pageInfo).","type":"string"}},"type":"object"},"name":"twenty_list_notes"},{"description":"List/filter opportunities (deals). Supports cursor pagination, raw filter/order_by, and relation depth. Twenty REST: GET /rest/opportunities.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"ending_before":{"description":"Pagination cursor — return records before this cursor (from a previous page's pageInfo).","type":"string"},"filter":{"description":"Raw Twenty filter string, passed verbatim as ?filter=. Syntax: field[comparator]:value, e.g. `employees[gte]:100` or `stage[eq]:\"MEETING\"`. Comparators: eq, neq, gt, gte, lt, lte, in, is, like, ilike, startsWith.","type":"string"},"limit":{"description":"Results per page (1-60, default 20 — Twenty caps at 60).","maximum":60,"minimum":1,"type":"integer"},"order_by":{"description":"Raw Twenty ordering string, passed verbatim as ?order_by=, e.g. `createdAt[DescNullsLast]`.","type":"string"},"starting_after":{"description":"Pagination cursor — return records after this cursor (from a previous page's pageInfo).","type":"string"}},"type":"object"},"name":"twenty_list_opportunities"},{"description":"List/filter people (contacts). Supports cursor pagination, raw filter/order_by, and relation depth. Twenty REST: GET /rest/people.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"ending_before":{"description":"Pagination cursor — return records before this cursor (from a previous page's pageInfo).","type":"string"},"filter":{"description":"Raw Twenty filter string, passed verbatim as ?filter=. Syntax: field[comparator]:value, e.g. `employees[gte]:100` or `stage[eq]:\"MEETING\"`. Comparators: eq, neq, gt, gte, lt, lte, in, is, like, ilike, startsWith.","type":"string"},"limit":{"description":"Results per page (1-60, default 20 — Twenty caps at 60).","maximum":60,"minimum":1,"type":"integer"},"order_by":{"description":"Raw Twenty ordering string, passed verbatim as ?order_by=, e.g. `createdAt[DescNullsLast]`.","type":"string"},"starting_after":{"description":"Pagination cursor — return records after this cursor (from a previous page's pageInfo).","type":"string"}},"type":"object"},"name":"twenty_list_people"},{"description":"List/filter tasks. Supports cursor pagination, raw filter/order_by, and relation depth. Twenty REST: GET /rest/tasks.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"depth":{"description":"How deep to hydrate related records: 0, 1, or 2.","maximum":2,"minimum":0,"type":"integer"},"ending_before":{"description":"Pagination cursor — return records before this cursor (from a previous page's pageInfo).","type":"string"},"filter":{"description":"Raw Twenty filter string, passed verbatim as ?filter=. Syntax: field[comparator]:value, e.g. `employees[gte]:100` or `stage[eq]:\"MEETING\"`. Comparators: eq, neq, gt, gte, lt, lte, in, is, like, ilike, startsWith.","type":"string"},"limit":{"description":"Results per page (1-60, default 20 — Twenty caps at 60).","maximum":60,"minimum":1,"type":"integer"},"order_by":{"description":"Raw Twenty ordering string, passed verbatim as ?order_by=, e.g. `createdAt[DescNullsLast]`.","type":"string"},"starting_after":{"description":"Pagination cursor — return records after this cursor (from a previous page's pageInfo).","type":"string"}},"type":"object"},"name":"twenty_list_tasks"},{"description":"Update fields on an existing company. Only provided fields change. Twenty REST: PATCH /rest/companies/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"addressCity":{"description":"City (sent as address:{addressCity}).","type":"string"},"domainName":{"description":"Primary domain / website URL (sent as domainName:{primaryLinkUrl}).","type":"string"},"employees":{"description":"Employee count.","type":"number"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"id":{"description":"The company id to update.","type":"string"},"idealCustomerProfile":{"description":"Whether this company matches the ideal customer profile.","type":"boolean"},"linkedinUrl":{"description":"LinkedIn URL (sent as linkedinLink:{primaryLinkUrl}).","type":"string"},"name":{"description":"The company name.","type":"string"},"xUrl":{"description":"X/Twitter URL (sent as xLink:{primaryLinkUrl}).","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_update_company"},{"description":"Update fields on an existing opportunity. Only provided fields change. Twenty REST: PATCH /rest/opportunities/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"amountMicros":{"description":"Opportunity amount in micros (× 1,000,000). Sent as amount:{amountMicros,currencyCode}.","type":"number"},"closeDate":{"description":"Expected close date (ISO 8601).","type":"string"},"companyId":{"description":"Id of the associated company.","type":"string"},"currencyCode":{"default":"USD","description":"Currency code for the amount (default USD; only sent when amountMicros is provided).","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"id":{"description":"The opportunity id to update.","type":"string"},"name":{"description":"The opportunity name.","type":"string"},"pointOfContactId":{"description":"Id of the point-of-contact person.","type":"string"},"stage":{"description":"Pipeline stage — e.g. SCREENING, MEETING, PROPOSAL, NEGOTIATION, CUSTOMER (custom pipelines vary).","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_update_opportunity"},{"description":"Update fields on an existing person. Only provided fields change. Twenty REST: PATCH /rest/people/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"city":{"description":"City.","type":"string"},"companyId":{"description":"Id of the company to link this person to.","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"firstName":{"description":"First name (combined into name:{firstName,lastName}).","type":"string"},"id":{"description":"The person id to update.","type":"string"},"jobTitle":{"description":"Job title.","type":"string"},"lastName":{"description":"Last name (combined into name:{firstName,lastName}).","type":"string"},"linkedinUrl":{"description":"LinkedIn URL (sent as linkedinLink:{primaryLinkUrl}).","type":"string"},"primaryEmail":{"description":"Primary email address (sent as emails:{primaryEmail}).","type":"string"},"primaryPhone":{"description":"Primary phone number (sent as phones:{primaryPhoneNumber}).","type":"string"},"xUrl":{"description":"X/Twitter URL (sent as xLink:{primaryLinkUrl}).","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_update_person"},{"description":"Update fields on an existing task. Only provided fields change. Twenty REST: PATCH /rest/tasks/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"assigneeId":{"description":"Id of the workspace member assigned to the task.","type":"string"},"body":{"description":"Task body / description.","type":"string"},"dueAt":{"description":"Due date/time (ISO 8601).","type":"string"},"extra":{"additionalProperties":{},"description":"Passthrough object of additional/custom fields merged into the request body verbatim.","propertyNames":{"type":"string"},"type":"object"},"id":{"description":"The task id to update.","type":"string"},"status":{"description":"Task status — e.g. TODO, IN_PROGRESS, DONE.","type":"string"},"title":{"description":"The task title.","type":"string"}},"required":["id"],"type":"object"},"name":"twenty_update_task"}]},"body_sha256":"e22a082ae97936618604196909118ed57155868d33fa5d65b9f9a33b2f095fd4","prev_id":null,"leaf":"0x1873520bebbfa4c3a6ff9740489388e747bac765096cd2f2aa02fb9dde76d586","leaf_text":"{\"body\":\"e22a082ae97936618604196909118ed57155868d33fa5d65b9f9a33b2f095fd4\",\"id\":301790,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793054284845956,\"prev\":null,\"subject\":\"cd6c7666-703d-4d85-a999-79efff1d015b\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0x187374966498df49788685481551e774be4efa8aa550674ad14b4cb63aaf2944","0x22efc5e2fc7cb43f51c500f7a8385bdae1768fef3eeec6ff0d6adce96d087fe3","0x2f73dfead9eeb0a4ffec8f217e658e5e0e0e69da238c8166c1e9a42986c0910b","0xd7ea7f60cdbeb3f4fa246303381237fbb77f0079ed8b97227fd7a662fbd9c4ef","0x0fb1edb12889c4d58a0382b06d32af6fd04a1476ed3dc22ce43f78823369bfec","0xdd236a287632286ce817d169230c69c3c69a8635ee640cd4255d22168776ec38","0x7da96798ce39f8e2620390837ccad0b13cb3e78e7b8a0b993d6ee5585e7e904e","0x0119283e2cec12aaa4069ce28d337194c55b4bdc1faa814e97f8c75e4ea126c5","0x30ed476c712afaf21f7cd3d819a24a690f5af97c643d7c65915b456206f5148e","0x4b181a898f514ff9cb15440f5fc1c2a2f938b6e95da8f6b6ddad9ea761c0d44a","0x04d98d8716f171bd2264c6c49606521f410107287c5094c713f72cdf2fe1e1ed","0x15eab8feed5b3f08165d63b9f1aed508c0624966a05349e051f86f0c188707b5","0x32f46c5f73ecbfd4f770f7f760a79bee2afed4b3e7572fa882b3e7dce8df4356","0x770e4376196188c7fc9ec40f8e218dc0d1cb92bba5fe0425a0edce27ca9a997f","0x60582ab4b41e72eb70eb0bce07fbf0fb4d2b62a8bad5be50f5d16d511adc746c","0xc6a4d7899a0f442958e26505011190b7cff2483611c1b94eba9043e0ba9ac36e","0x8c756542e482157df0c36464d75c937b845e4423dbbcfad08f0cf8d5a16b9a13","0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}