Class: MailMCP::UpdateMailMessageFlagsTool

Inherits:
Tool
  • Object
show all
Defined in:
lib/mail_mcp/tools/update_mail_message_flags_tool.rb

Class Method Summary collapse

Class Method Details

.call(folder:, uid:, server_context:, add: [], remove: []) ⇒ Object



25
26
27
28
29
30
31
32
# File 'lib/mail_mcp/tools/update_mail_message_flags_tool.rb', line 25

def self.call(folder:, uid:, server_context:, add: [], remove: [])
  add_flags    = add.map(&:to_sym)
  remove_flags = remove.map(&:to_sym)
  ImapClient.connect(server_context.imap_config) do |c|
    c.update_flags(folder: folder, uid: uid, add: add_flags, remove: remove_flags)
  end
  MCP::Tool::Response.new([{ type: "text", text: "Flags updated for message #{uid}" }])
end