{"id":301290,"recorded_at":"2026-10-26T22:33:19.677188Z","observed_at":"2026-10-26T22:33:19.677122Z","subject_kind":"endpoint","subject":"e92ae240-fd46-4931-a830-765716807de9","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":31,"tools":[{"description":"WRITE: put one or more existing tags on a contact. POST /contacts/{contactId}/tags.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"tag_ids":{"items":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"maxItems":100,"minItems":1,"type":"array"}},"required":["contact_id","tag_ids"],"type":"object"},"name":"sendlane_add_contact_tags"},{"description":"WRITE: add one or more contacts (up to 100) to a list; a contact that does not exist is created. Each needs an email or a phone. Sendlane accepts the request for processing (HTTP 202). Only add people who agreed to receive marketing. POST /lists/{listId}/contacts.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contacts":{"items":{"properties":{"custom_fields":{"items":{"properties":{"id":{"description":"Custom field id (sendlane_list_custom_fields).","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"value":{"maxLength":2000,"type":"string"}},"required":["id","value"],"type":"object"},"maxItems":100,"type":"array"},"email":{"description":"Email address. Email or phone is required.","format":"email","maxLength":320,"pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string"},"email_consent":{"description":"True only if the person gave email marketing consent.","type":"boolean"},"first_name":{"maxLength":255,"type":"string"},"last_name":{"maxLength":255,"type":"string"},"phone":{"description":"Phone number in international format, e.g. +14155550123. Email or phone is required.","maxLength":32,"minLength":3,"type":"string"},"tag_ids":{"description":"Ids of existing tags to put on the contact (sendlane_list_tags).","items":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"maxItems":100,"type":"array"}},"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"list_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["list_id","contacts"],"type":"object"},"name":"sendlane_add_contacts_to_list"},{"description":"WRITE: create an audience list. Not idempotent: calling it twice makes two lists. POST /lists.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"description":{"maxLength":1000,"type":"string"},"name":{"maxLength":255,"minLength":1,"type":"string"}},"required":["name"],"type":"object"},"name":"sendlane_create_list"},{"description":"WRITE: create a contact tag. POST /tags.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"name":{"maxLength":255,"minLength":1,"type":"string"}},"required":["name"],"type":"object"},"name":"sendlane_create_tag"},{"description":"One email campaign by id. GET /campaigns/{campaignId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["campaign_id"],"type":"object"},"name":"sendlane_get_campaign"},{"description":"Statistics of one email campaign: sent, opens, clicks (unique too), bounced, suppressed, unsubscribed, spam, revenue. from/to limit the period. GET /campaigns/{campaignId}/report.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"required":["campaign_id"],"type":"object"},"name":"sendlane_get_campaign_report"},{"description":"One contact by id, with lists, tags, custom fields, consent, lifetime value and subscribed/suppressed state. GET /contacts/{contactId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["contact_id"],"type":"object"},"name":"sendlane_get_contact"},{"description":"The custom field values of one contact. GET /contacts/{contactId}/custom-fields.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"required":["contact_id"],"type":"object"},"name":"sendlane_get_contact_custom_fields"},{"description":"The list subscriptions of one contact: list, subscribed/suppressed state, who added it and when. GET /contacts/{contactId}/subscriptions.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["contact_id"],"type":"object"},"name":"sendlane_get_contact_subscriptions"},{"description":"The tags on one contact. GET /contacts/{contactId}/tags.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"required":["contact_id"],"type":"object"},"name":"sendlane_get_contact_tags"},{"description":"One audience list by id. GET /lists/{listId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"list_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["list_id"],"type":"object"},"name":"sendlane_get_list"},{"description":"Statistics of one SMS message: sent, delivered, clicks, failed, replies, unsubscribed, credits, revenue. from/to limit the period. GET /sms-messages/{messageId}/report.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"message_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"required":["message_id"],"type":"object"},"name":"sendlane_get_sms_report"},{"description":"One tag by id. GET /tags/{tagId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"tag_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["tag_id"],"type":"object"},"name":"sendlane_get_tag"},{"description":"Email campaigns: id, name, status, scheduled and sent time, automation. GET /campaigns.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_campaigns"},{"description":"All contacts of the account: email, name, phone, lists, tags, custom fields, subscribed/suppressed state. Filter by creation time with from/to. GET /contacts.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"type":"object"},"name":"sendlane_list_contacts"},{"description":"The custom contact fields of the account: id, name, type. Use the ids when setting field values. GET /custom-fields.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_custom_fields"},{"description":"Contacts on one list: email, name, phone, subscribed/suppressed state, tags, custom fields, lifetime value. GET /lists/{listId}/contacts.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"list_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"required":["list_id"],"type":"object"},"name":"sendlane_list_list_contacts"},{"description":"Contacts that unsubscribed from one list. GET /lists/{listId}/unsubscribed.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"list_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"required":["list_id"],"type":"object"},"name":"sendlane_list_list_unsubscribed"},{"description":"List the audience lists of the account: id, name, description, status, created date. GET /lists.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_lists"},{"description":"Contacts in one segment: id, email, name, phone. GET /segments/{segmentId}/contacts.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"segment_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["segment_id"],"type":"object"},"name":"sendlane_list_segment_contacts"},{"description":"The segments of the account: id, name, list, match rule, last count. GET /segments.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_segments"},{"description":"The sender profiles (from name, from/reply email, postal address, default flag). GET /senders.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_sender_profiles"},{"description":"SMS messages (campaign and automation): id, name, campaign status, automation. GET /sms-messages.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_sms_messages"},{"description":"Contacts that carry one tag. GET /tags/{tagId}/contacts.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"tag_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"required":["tag_id"],"type":"object"},"name":"sendlane_list_tag_contacts"},{"description":"The contact tags of the account: id, name, audience count. GET /tags.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"name":"sendlane_list_tags"},{"description":"Contacts that unsubscribed from the account. GET /contacts/unsubscribed.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"from":{"description":"Only records from this time on. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"},"limit":{"description":"Results per page, 1-100 (default 25).","exclusiveMinimum":0,"maximum":100,"type":"integer"},"page":{"description":"Page number, from 1 (default 1). Pass the previous reply's next_page.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"to":{"description":"Only records up to this time. Needs `from`. ISO 8601 date-time with a timezone, e.g. 2026-10-01T00:00:00Z.","type":"string"}},"type":"object"},"name":"sendlane_list_unsubscribed_contacts"},{"description":"WRITE: remove one contact from one list (the contact stays in the account). DELETE /lists/{listId}/contacts/{contactId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"list_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["list_id","contact_id"],"type":"object"},"name":"sendlane_remove_contact_from_list"},{"description":"WRITE: remove one tag from a contact (the tag itself is kept). DELETE /contacts/{contactId}/tags/{tagId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"tag_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["contact_id","tag_id"],"type":"object"},"name":"sendlane_remove_contact_tag"},{"description":"WRITE: add custom field values to a contact. Field ids come from sendlane_list_custom_fields. POST /contacts/{contactId}/custom-fields.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"custom_fields":{"items":{"properties":{"id":{"description":"Custom field id.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"value":{"maxLength":2000,"type":"string"}},"required":["id","value"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}},"required":["contact_id","custom_fields"],"type":"object"},"name":"sendlane_set_contact_custom_fields"},{"description":"WRITE: unsubscribe one contact from email marketing. The contact stops receiving campaigns. POST /contacts/{contactId}/unsubscribe.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"contact_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["contact_id"],"type":"object"},"name":"sendlane_unsubscribe_contact"},{"description":"WRITE: rename a list and/or change its description (a full update: name is required, an omitted description may be cleared). PUT /lists/{listId}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"description":{"maxLength":1000,"type":"string"},"list_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"name":{"maxLength":255,"minLength":1,"type":"string"}},"required":["list_id","name"],"type":"object"},"name":"sendlane_update_list"}]},"body_sha256":"9b9303679973dab89e7e5a224ea062350d3fe331cd5fb283d3647e6608756489","prev_id":null,"leaf":"0x5efa561e40ebcf934ba1aac9a6b9329198be77844836af7feb4555d565bae335","leaf_text":"{\"body\":\"9b9303679973dab89e7e5a224ea062350d3fe331cd5fb283d3647e6608756489\",\"id\":301290,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793053999677122,\"prev\":null,\"subject\":\"e92ae240-fd46-4931-a830-765716807de9\",\"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":["0x5ef9f12c9b5e5b4112bf2d76926822ce46665ebf6cba0be04b75d8fcc6fe9b37","0x6aba4cc14b9fe52521e480017e1921d35c564b16449b9824af74eb17a4958916","0xa14f25221d294820c7cd0b3d3850021e9c903ce4b3289ba31a66ad20d3242f50","0x261deed196ca44e23267dc207bfbf7aed2c6910b34ffd6c19d5371d582f42edb","0xca2b264ac6c846709597ac351793cae08945297749f07d4dd7cd0c1ee9ffb9f2","0xb0e65cc9fee6251e4c76ff648e0d5302b164afd07f07f39f72abe0a166634842","0x0ddaa3eadd4da0f831dcbffff90e3589ce7ebe42e6917b654e0fc176a29f2dcc","0x6495fcc5498e1846e1e2364adcd6e694cc353b253dce3c86bf3c2edc62fdadd9","0xbb72305a188b7107c832b364935b9598621d09edffc6216041044bfcad87910a","0x8a5cdded34bdb5e67f8d0ea283d9fd99467d39dd780b50b89398e9d04700430a","0x8088b42b1c11cbc36b44c4b08d0759628b035caa2738251cd28ed0e7242e65bc","0x5ab25c2fdf4695beeefb0726a5fc73e189b68f8d9fb2a3f6321ff7223b166fdd","0x66883b42f4167ade51c4909f050c5478524e23786fb0b5c48bd1a53580960a68","0x216cebb9ae5414599109a02297c4817d7d1c6b1394afeb97efe38e32f0053974","0x7726154b91b2ad65b13849ef6cb6443b1f0ff113a3089c9bd5f2bcfc16be099d","0x47b89901b0f07938a6b9a66ddf35683903f79d756a7c7763665fd632758b08d0","0x9a83be955a206deb65b995adfd92c58fa31c95fbbf926bd199d300e70b08b26d","0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}