Hey — following up on #2, here's a related but separate issue.
Several write tools exist in the MCP but only expose a fraction of the fields that the REST API supports. The read tools (get_accounts, get_people) return full objects with addresses, phone numbers, custom fields — but the matching write tools can't update those same fields. So any workflow that reads data from Outseta can't write it back through the MCP.
update_people — currently only accepts email, firstName, lastName. Missing vs PUT /crm/people/[uid]: MailingAddress, PhoneMobile, PhoneWork, Title, Timezone, custom fields.
update_accounts — currently only accepts name. Missing vs PUT /crm/accounts/[uid]: MailingAddress, BillingAddress, AccountStage, ClientIdentifier, custom fields.
register_account — missing for both Person and Account objects: MailingAddress, PhoneMobile, Title, BillingAddress, ClientIdentifier.
update_email_lists — has create and subscribe but no unsubscribe (DELETE /email/lists/[id]/subscriptions/[uid]), no update, no delete.
update_plans — has create_plan and create_plan_family but no update or delete.
The clearest example: get_accounts returns a full MailingAddress with a Uid on every account and person — but there's no way to write it back through the MCP. Any address sync or data correction requires falling back to direct REST calls.
A reasonable rule: if a field comes back from a GET tool, it should be writable via the matching write tool (unless it's a system field like Created, Updated, or the root Uid).
Related: #2 (entirely missing tools — separate issue).
Hey — following up on #2, here's a related but separate issue.
Several write tools exist in the MCP but only expose a fraction of the fields that the REST API supports. The read tools (
get_accounts,get_people) return full objects with addresses, phone numbers, custom fields — but the matching write tools can't update those same fields. So any workflow that reads data from Outseta can't write it back through the MCP.update_people— currently only acceptsemail,firstName,lastName. Missing vsPUT /crm/people/[uid]:MailingAddress,PhoneMobile,PhoneWork,Title,Timezone, custom fields.update_accounts— currently only acceptsname. Missing vsPUT /crm/accounts/[uid]:MailingAddress,BillingAddress,AccountStage,ClientIdentifier, custom fields.register_account— missing for both Person and Account objects:MailingAddress,PhoneMobile,Title,BillingAddress,ClientIdentifier.update_email_lists— hascreateandsubscribebut nounsubscribe(DELETE /email/lists/[id]/subscriptions/[uid]), noupdate, nodelete.update_plans— hascreate_planandcreate_plan_familybut noupdateordelete.The clearest example:
get_accountsreturns a fullMailingAddresswith a Uid on every account and person — but there's no way to write it back through the MCP. Any address sync or data correction requires falling back to direct REST calls.A reasonable rule: if a field comes back from a GET tool, it should be writable via the matching write tool (unless it's a system field like
Created,Updated, or the rootUid).Related: #2 (entirely missing tools — separate issue).