Feature Request
The contacts subcommand currently supports list and search, but there's no way to create, update, or delete contacts.
Proposed Commands
# Create a new contact
fastmail-cli contacts create --name "Jane Doe" --email "jane@example.com" --organization "Acme Corp"
# Update an existing contact
fastmail-cli contacts update CONTACT_ID --organization "Acme Corp"
# Delete a contact
fastmail-cli contacts delete CONTACT_ID
GraphQL Mutations (MCP Server)
It would also be great to expose these as GraphQL mutations for the MCP server:
mutation {
createContact(name: "Jane Doe", email: "jane@example.com", organization: "Acme Corp") { id name }
updateContact(id: "abc123", organization: "Acme Corp") { id name organization }
deleteContact(id: "abc123") { success }
}
Use Case
When triaging emails from new contacts, it's useful to be able to create or update contact records without leaving the terminal or AI assistant. For example, adding an organization field to multiple contacts or creating a contact from a sender's email address.
Since CardDAV is already integrated for read operations, the plumbing for write operations should be straightforward.
Feature Request
The
contactssubcommand currently supportslistandsearch, but there's no way to create, update, or delete contacts.Proposed Commands
GraphQL Mutations (MCP Server)
It would also be great to expose these as GraphQL mutations for the MCP server:
Use Case
When triaging emails from new contacts, it's useful to be able to create or update contact records without leaving the terminal or AI assistant. For example, adding an organization field to multiple contacts or creating a contact from a sender's email address.
Since CardDAV is already integrated for read operations, the plumbing for write operations should be straightforward.