MCP App Store
by KeenEthics
Business & Operations
Hanna CRM icon

Hanna CRM

by Ateities IT, UAB

Overview

Work with your Hanna CRM records directly from ChatGPT. Hanna CRM is a customer relationship management system for sales, service and finance teams; this plugin connects ChatGPT to your own Hanna CRM workspace so you can find, read, create and update CRM records in conversation. Search and inspect customers, contacts, leads, opportunities, tasks, projects, tickets (with replies, notes and history), contracts, documents, objects, products, supplier orders, call history and financial records - invoices, pre-invoices, credit notes, payments and expenses - and look up the reference values your workspace uses (statuses, sources, stages, taxes, picklists, staff, roles). Create and update tasks, tickets, customers, contacts, leads, opportunities, projects, contracts, documents, objects, items, invoices, pre-invoices, credit notes, payments and expenses. Everything runs under your own Hanna CRM login: you see and change only what your role allows, in the workspace you choose when connecting. Creating or changing a record can send the notifications, webhooks or accounting exports your administrator has configured. Requests are logged for security auditing.

Tools

authenticated-staff-profile-tool

ChatGPT
Returns authenticated staff profile from tenant staff table context. uuid matches the created_by / updated_by values other tools return. tenant gives the CRM slug and web URL.

call_get

ChatGPT
Returns one call by UUID with its transcription, AI summary and metrics when available; response key record. Audio is not returned.

client_create

ChatGPT
Creates a client. Required: company. Optional: contact levels (customer_levels). For a natural person (legal_type: person) also creates its primary contact person. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

client_get

ChatGPT
Returns a single client by UUID with full detail projection (addresses, types, categories, balances, primary contact, assigned users, and plan-conditional fields); response key record.

client_responsibles

ChatGPT
Returns the staff members responsible for one client, by the client's numeric id. Prefer client_get: its assigned_users lists the same people by uuid and name and takes the client uuid that clients_search returns. Use this only when a numeric client id is already known.

client_update

ChatGPT
Updates a client by UUID. Only provided fields are changed. Supports customer_levels (contact level picklist UUIDs; pass [] to clear). Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

contact_create

ChatGPT
Creates a contact person. Required: firstname. Optional: clients (client UUIDs) and main_client (one of them). Returns record with the detail projection. May export the record to configured accounting or field-service integrations.

contact_get

ChatGPT
Returns a single contact person by UUID with detail projection (name, email, phone, position, primary flag, linked clients, custom fields); response key record.

contact_update

ChatGPT
Updates a contact person by UUID. Only provided fields are changed. When clients is sent, it replaces the full linked-client list; main_client (with clients) picks the main client. Returns record with the detail projection. May export the record to configured accounting or field-service integrations.

contract_create

ChatGPT
Creates a contract. Required: subject and either contact or lead. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

contract_get

ChatGPT
Returns a single contract by UUID with detail projection (core fields, contact or lead, status, type, dates, values, relations, custom fields, and organization when applicable); response key record.

contract_update

ChatGPT
Updates a contract by UUID. Only provided fields are changed. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

credit_note_create

ChatGPT
Creates a credit note. Required: contact, date, items. Optional: currency (tenant default when omitted). Returns record with the detail projection. May export the record to a configured accounting integration.

credit_note_get

ChatGPT
Returns a single credit note by UUID with detail projection (amounts, client, dates, status, items, addresses, invoice/project, and organization when applicable); response key record.

credit_note_update

ChatGPT
Updates a credit note by UUID. Only provided fields are changed. Returns record with the detail projection. May export the record to a configured accounting integration.

document_create

ChatGPT
Creates a document. Required: name, client. Returns record with the detail projection. May send staff email notifications according to notification settings.

document_get

ChatGPT
Returns a single document by UUID with detail projection (core fields, status, category, type, relations, dates, custom fields, and organization when applicable); response key record.

document_update

ChatGPT
Updates a document by UUID. Only provided fields are changed. Returns record with the detail projection. May send staff email notifications according to notification settings.

expense_create

ChatGPT
Creates an expense. Required: name, amount. Category defaults to tenant default when omitted. Returns record with the detail projection. May send staff email notifications according to notification settings.

expense_get

ChatGPT
Returns a single expense by UUID with detail projection (amounts, category, status, relations, items, custom fields, and organization when applicable); response key record.

expense_update

ChatGPT
Updates an expense by UUID. Only provided fields are changed. Returns record with the detail projection. May send staff email notifications according to notification settings.

file_get_content

ChatGPT
Returns the content of one attached file, up to 5 MB: images as an image, text as text, anything else (PDF, office files) as content_base64. Pass module, related_uuid and the file uuid from files_search. Larger files: download them with API v4.

file_upload

ChatGPT
Attaches a file to a record (its Files tab), e.g. a task, client or project: module, related_uuid, filename (with extension) and the bytes as content_base64, up to 5 MB. Optional description. Needs edit rights on the record; the tenant's allowed file types apply. The file is not shown to the customer. Returns record (the file, as in files_search).

invoice_create

ChatGPT
Creates an invoice. Required: contact, date, currency, items. Optional: document_prefix + document_number for manual numbering without auto increment. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

invoice_get

ChatGPT
Returns a single invoice by UUID with detail projection (amounts, client, dates, status, items, addresses, and organization when applicable); response key record.

invoice_update

ChatGPT
Updates an invoice by UUID. Only provided fields are changed. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

item_create

ChatGPT
Creates an item. Required: description, code. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

item_get

ChatGPT
Returns a single item by UUID with detail projection (pricing, tax, unit, category, manufacturer, flags, warehouse balances, and organization when applicable); response key record.

item_update

ChatGPT
Updates an item by UUID. Only provided fields are changed. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

lead_create

ChatGPT
Creates a lead. Required: company or name (at least one). Optional responsible_role_id round-robin assigns the next active staff of that role. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

lead_get

ChatGPT
Returns a single lead by UUID with core detail projection (address, types, categories, activities, status, source, assigned users, metrics, and organization when applicable); response key record.

lead_update

ChatGPT
Updates a lead by UUID. Only provided fields are changed. Setting the client status converts the lead into a client once (returned under client). Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

object_create

ChatGPT
Creates an object. Required: name and either contact or lead (when enabled). Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

object_get

ChatGPT
Returns a single object by UUID with detail projection (core fields, status, types, contact, relations, dates, custom fields, and organization when applicable); response key record.

object_update

ChatGPT
Updates an object by UUID. Only provided fields are changed. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

opportunity_convert_to_pre_invoice

ChatGPT
Converts the opportunity to a pre-invoice as the CRM's "Convert to pre-invoice" button does: the client or lead, contact person, organization, lines with prices, notes and project are taken from the opportunity; the number is assigned from the organization's numbering series; the pre-invoice is linked to the opportunity (an opportunity that already has one gets it as an additional pre-invoice) and the opportunity stage changes as configured for conversion. May send the pre-invoice to the customer (send_to_client) and export to the accounting system according to tenant configuration. Returns the new pre-invoice (record, as pre_invoice_get).

opportunity_create

ChatGPT
Creates an opportunity. Required: subject, total (unless items are sent), and contact or lead. organization, stage, and process use tenant defaults when omitted. Returns record with the detail projection. With items the totals are calculated from the lines (a sent total is ignored). May send record data to configured external webhook URLs when webhooks are enabled.

opportunity_get

ChatGPT
Returns a single opportunity by UUID with detail projection (amounts, client/lead, stage, process, assignees, addresses, items, and organization when applicable); response key record.

opportunity_update

ChatGPT
Updates an opportunity by UUID. Only provided fields are changed. items is the whole line list after the change (uuid = update, no uuid = add, left out = remove) and recalculates the totals. A pre-invoice is linked by opportunity_convert_to_pre_invoice, not here. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

organization_get

ChatGPT
Returns a single organization by UUID with company details, address, contact fields, and nested country (uuid, iso2); response key record.

payment_create

ChatGPT
Creates a payment for an invoice, pre-invoice, or expense. Required: rel_type, document, total_amount, payment_mode. Returns record with the detail projection. May send staff email notifications and export the payment to a configured accounting integration.

payment_get

ChatGPT
Returns a single payment by UUID with detail projection (amounts, payment mode, related document, client, dates, notes); response key record.

payment_update

ChatGPT
Updates a payment by UUID. Only provided fields are changed. Returns record with the detail projection. May export the payment to a configured accounting integration.

picklist_get

ChatGPT
Returns a single picklist by UUID with values array (uuid, name, codename, color, position); response key record.

pre_invoice_create

ChatGPT
Creates a pre-invoice. Required: contact or lead, date, items. Currency uses tenant default when omitted; the number comes from prefix (the organization's numbering series, default series when omitted). For a pre-invoice from an opportunity use opportunity_convert_to_pre_invoice, which also links them. Returns record with the detail projection. May send customer emails according to tenant configuration.

pre_invoice_get

ChatGPT
Returns a single pre-invoice by UUID with detail projection (amounts, client/lead, dates, status, items, addresses, and organization when applicable); response key record.

pre_invoice_update

ChatGPT
Updates a pre-invoice by UUID. Only provided fields are changed. Returns record with the detail projection. May send customer emails according to tenant configuration.

project_create

ChatGPT
Creates a project. Required: name, client, start_date. Status and billing type use tenant defaults when omitted. Returns record with the detail projection. May send customer emails according to tenant configuration.

project_get

ChatGPT
Returns a single project by UUID with detail projection (core fields, status, type, client, members, relations, dates, custom fields, and organization when applicable); response key record.

project_update

ChatGPT
Updates a project by UUID. Only provided fields are changed. Returns record with the detail projection. May send customer emails according to tenant configuration.

supplier_order_create

ChatGPT
Creates a purchase order to a supplier (CRM Stock → Orders). Required: supplier, warehouse, status (picklist value UUID), order_date, responsible (staff UUIDs) and items. The status may create tasks from its templates and start the accounting export, as in the CRM. Returns record.

supplier_order_get

ChatGPT
Returns one purchase order to a supplier by UUID with its lines, notes, linked pre-invoices and opportunities, and custom fields; response key record.

supplier_order_update

ChatGPT
Updates a purchase order to a supplier by UUID; only the provided fields change. items with uuid update those lines, without uuid add lines. A status change may create tasks and start the accounting export, as in the CRM. Returns record.

task_create

ChatGPT
Creates a task. Required: name. Ask the user when the task should start (and end) and pass start_date / end_date; when omitted, the start defaults to now and the end to the task type duration (60 minutes without one). Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled.

task_get

ChatGPT
Returns a single task by UUID with core detail projection (dates, status, type, priority, goal, assignees, followers, relation, flags, and organization when applicable); response key record.

task_timer_start

ChatGPT
Starts your timer on a task (as the CRM timer button does). You must be an assignee; the task must not be billed or already have your timer running. Depending on CRM settings it may stop your other running timers and move the task to "In progress". Returns the running entry (record, as timesheet_get). Stop it with task_timer_stop.

task_update

ChatGPT
Updates a task by UUID. Only provided fields are changed. Returns record with the detail projection. May send record data to configured external webhook URLs when webhooks are enabled. A status change runs the CRM status rules (approval, checklist, notifications).

ticket_create

ChatGPT
Creates a ticket. Required: subject. Returns record with the detail projection. May send staff email notifications according to notification settings.

ticket_get

ChatGPT
Returns a single ticket by UUID with detail projection (core fields, initial message and plain-text message_text, status, relations, CC fields, tags, custom fields, and organization when applicable); response key record. For the conversation, internal notes and change history call ticket_replies_search, ticket_notes_search and ticket_history_search with ticket set to this UUID. The HTML message can be large (a mail with embedded images runs to several MB): message_text is the readable text, and fields without message leaves the HTML out.

ticket_note_get

ChatGPT
Returns one internal ticket note by UUID; response key record.

ticket_reply_get

ChatGPT
Returns one ticket reply by UUID with its full HTML message body in addition to the list fields; response key record. The HTML body can be large (a mail with embedded images runs to several MB): message_text is the readable text, and fields without message leaves the HTML out.

ticket_update

ChatGPT
Updates a ticket by UUID. Only provided fields are changed. Returns record with the detail projection. May send staff email notifications according to notification settings.

timesheet_create

ChatGPT
Logs finished time on a task for you. Required: task (task UUID), start_time and end_time (ISO 8601). Optional note. You must be an assignee of the task. To time work as it happens use task_timer_start / task_timer_stop.

timesheet_get

ChatGPT
Returns one task time entry by UUID; response key record.

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

App Stats

115

Tools

3

Prompts

ChatGPT

Platforms

Category

CRM Records

Works with

ChatGPT

Data refreshed daily