MyCase integration
MyCase is legal practice management software for law firms. Manage cases, clients (people), companies and leads, notes, calendar events, tasks, call logs, time entries, expenses, invoices and recorded payments, staff, custom fields, case stages, practice areas, locations and people groups; browse and download case documents, post client portal messages and subscribe webhooks. Uploading new document files is not exposed (MyCase hands back a temporary storage URL the file must be sent to). Drivers license numbers are left out of lead answers. Authentication is OAuth 2.0: a firm gets its client id and secret from MyCase support, which also registers the redirect URL; the user who connects needs the MyCase permission to manage the firm's preferences, billing and payment options.
Say what should happen.
The workflow builds itself.
What you can do with MyCase
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Case, 9 operations
add_clients_to_caseAdd clients to casePOSTAdds clients (people) to a case, each with an optional case role. Answers with no content.add_companies_to_caseAdd companies to casePOSTAdds companies to a case, each with an optional case role. Answers with no content.add_staff_to_caseAdd staff to casePOSTAdds staff members to a case, optionally as lead or originating lawyer. Answers with no content.create_caseCreate casePOSTCreates a case. name is required and must be unique in the firm; optionally set number, dates, stage, practice area, status, outstanding balance, clients, companies, staff and custom field values.delete_caseDelete caseDELETEPermanently deletes a case.get_caseGet caseGETReturns one case: name, number, status, stage, practice area, dates, description, clients, companies, staff with rates, billing type, office and custom field values.list_casesList casesGETLists the firm's cases visible to the connected user: name, number, status, stage, practice area, dates, clients, staff, billing and custom fields. Filter by status open or closed. Page with page_size (up to 1,000) and page_token.list_client_casesList client casesGETLists the cases a client (person) is on, with the same fields as list_cases.update_caseUpdate casePUTUpdates a case. name is required on every update (read get_case first and resend it when not renaming). clients, companies and staff, when sent, replace the case's whole list.
Note, 8 operations
create_case_noteCreate case notePOSTAdds a note (subject, text, date) to a case.create_client_noteCreate client notePOSTAdds a note (subject, text, date) to a client.create_company_noteCreate company notePOSTAdds a note (subject, text, date) to a company.delete_noteDelete noteDELETEPermanently deletes a note.get_noteGet noteGETReturns one note: subject, text, date, who created and last updated it, and the case, client or company it belongs to.list_case_notesList case notesGETLists the notes recorded on a case (subject, text, date, who created it).list_client_notesList client notesGETLists the notes recorded on a client (subject, text, date, who created it).update_noteUpdate notePUTUpdates a note. subject, note and date are all required on every update: send the current values of the ones you keep (read get_note first).
Document, 7 operations
delete_documentDelete documentDELETEPermanently deletes a document and its versions.download_documentDownload documentGETDownloads the latest file of a document and returns it as a stored file.get_documentGet documentGETReturns one document's details (name, filename, path, description, assigned date, case, folder); download_document returns the file itself.list_case_documentsList case documentsGETLists the documents filed under a case (name, filename, path, description, dates, folder). Download one with download_document.list_documentsList documentsGETLists the firm's documents visible to the connected user: name, filename, folder path, description, assigned date, case and folder. Page with page_size (up to 1,000) and page_token.list_folder_documentsList folder documentsGETLists the documents directly inside a folder (first level only). Page with page_size (up to 1,000) and page_token.update_documentUpdate documentPUTUpdates a document's path (renames or moves it), filename, description, assigned date or sharing. path and filename are required on every update: send the current values when not changing them.
Company, 6 operations
add_clients_to_companyAdd clients to companyPOSTLinks clients (people) to a company. Answers with no content.create_companyCreate companyPOSTCreates a company (name required) with optional email, website, phones, address, notes, linked cases and clients, and custom field values.delete_companyDelete companyDELETEPermanently deletes a company from the firm.get_companyGet companyGETReturns one company: name, email, website, phones, address, notes, linked clients and cases, and custom field values.list_companiesList companiesGETLists the firm's companies: name, email, website, phones, address, notes, clients, cases and custom fields. Filter by email, name or phone. Page with page_size (up to 1,000) and page_token.update_companyUpdate companyPUTUpdates a company. name is required on every update: read get_company first and resend it when not renaming. Answers with no content.
Client, 5 operations
create_clientCreate clientPOSTCreates a client (a person, shown as People in MyCase): first and last name required, plus optional email, phones, address, birthdate, notes, people group, cases and custom field values.delete_clientDelete clientDELETEPermanently deletes a client (person) from the firm.get_clientGet clientGETReturns one client (person, personal data): name, email, phones, address, birthdate, notes, people group, cases and custom field values.list_clientsList clientsGETLists the firm's clients (people, personal data): name, email, phones, address, birthdate, notes, people group, cases and custom fields. Filter by email, name or phone. Page with page_size (up to 1,000) and page_token.update_clientUpdate clientPUTUpdates a client (person). first_name and last_name are required on every update: read get_client first and resend them when not changing them. Answers with no content.
Event, 5 operations
add_staff_to_eventAdd staff to eventPOSTAdds staff members to a calendar event. Answers with no content.create_eventCreate eventPOSTCreates a calendar event: name, start, end and staff are required; optionally description, all-day and private flags, location and case.delete_eventDelete eventDELETEPermanently deletes a calendar event.list_eventsList eventsGETLists the firm's calendar events visible to the connected user: name, description, start and end, all-day and private flags, type, location, case and staff. Page with page_size (up to 1,000) and page_token.update_eventUpdate eventPUTUpdates a calendar event. name, start, end and staff are required on every update: send the current values (from list_events) for the ones you keep. Answers with no content.
Task, 5 operations
add_staff_to_taskAdd staff to taskPOSTAssigns more staff members to a task. Answers with no content.create_taskCreate taskPOSTCreates a task: name, priority (Low, Medium, High), due date and assigned staff are required; optional description, completed flag and case.delete_taskDelete taskDELETEPermanently deletes a task.list_tasksList tasksGETLists the firm's tasks: name, description, priority, due date, completed state and date, case and assigned staff. Page with page_size (up to 1,000) and page_token.update_taskUpdate taskPUTUpdates a task (for example marks it completed). name, priority, due_date and staff are required on every update: send the current values (from list_tasks) for the ones you keep.
Call, 4 operations
create_callCreate callPOSTAdds a call to the firm's call log: when it happened, the caller's phone number, who it was for and a message. Name the caller with exactly one of caller_name, client or lead.delete_callDelete callDELETEPermanently deletes a call log entry.list_callsList callsGETLists the firm's call log entries visible to the connected user: caller, phone number, message, staff member, linked client, lead or case, type and resolved state. Page with page_size (up to 1,000) and page_token.update_callUpdate callPUTUpdates a call log entry. called_at, caller_phone_number, call_for and message are required on every update (read them from list_calls). Setting one of caller_name, client or lead clears the other two.
Case stage, 4 operations
create_case_stageCreate case stagePOSTCreates a case stage with the given name.delete_case_stageDelete case stageDELETEPermanently deletes a case stage.list_case_stagesList case stagesGETLists the firm's case stages (id and name). A case's stage is set by name in create_case and update_case. Page with page_size (up to 1,000) and page_token.update_case_stageUpdate case stagePUTRenames a case stage.
Custom field, 4 operations
create_custom_fieldCreate custom fieldPOSTCreates a custom field on cases, clients, companies, expenses or time entries, with a field type; a list field needs its list_options.delete_custom_fieldDelete custom fieldDELETEPermanently deletes a custom field.get_custom_fieldGet custom fieldGETReturns one custom field: name, parent_type, field_type and list options.list_custom_fieldsList custom fieldsGETLists the firm's custom fields: id, name, parent_type (what record it belongs to), field_type and list options. Page with page_size (up to 1,000) and page_token.
Custom field option, 4 operations
add_custom_field_optionsAdd custom field optionsPOSTAdds options to a list-type custom field.delete_custom_field_optionDelete custom field optionDELETEDeletes one option of a list-type custom field.list_custom_field_optionsList custom field optionsGETLists the options of a list-type custom field (key and option text).update_custom_field_optionUpdate custom field optionPUTRenames one option of a list-type custom field.
Document version, 4 operations
delete_document_versionDelete document versionDELETEPermanently deletes one version of a document.download_document_versionDownload document versionGETDownloads one version of a document and returns it as a stored file.list_document_versionsList document versionsGETLists document versions across the firm (document, version number, link, dates). Page with page_size (up to 1,000) and page_token.list_versions_of_documentList versions of documentGETLists the versions of one document (version number, link, dates).
Expense, 4 operations
create_expenseCreate expensePOSTRecords an expense on a case: activity name (created if new), entry date, cost, units, billable flag and case are required; optional description and staff member.delete_expenseDelete expenseDELETEPermanently deletes an expense.get_expenseGet expenseGETReturns one expense: activity, description, billable flag, date, cost, units, case, staff and invoice.list_expensesList expensesGETLists the firm's expenses: activity, description, billable flag, entry date, cost, units, case, staff and invoice. Page with page_size (up to 1,000) and page_token.
Lead, 4 operations
create_leadCreate leadPOSTCreates a lead (prospective client): first and last name required, plus optional contact details, address, birthdate, driver's license, lead details, referral source and custom field values.get_leadGet leadGETReturns one lead (personal data): name, email, phones, address, birthdate, lead details, referral source and custom field values.list_leadsList leadsGETLists the firm's leads (prospective clients, personal data): name, email, phones, address, birthdate, lead details, referral source and custom fields. Filter by email, name or phone. Page with page_size (up to 1,000) and page_token.update_leadUpdate leadPUTUpdates a lead. first_name and last_name are required on every update: read get_lead first and resend them when not changing them. Answers with no content.
Location, 4 operations
create_locationCreate locationPOSTCreates a location with a name and an optional address.delete_locationDelete locationDELETEPermanently deletes a location.list_locationsList locationsGETLists the firm's locations (name and address) used on events. Page with page_size (up to 1,000) and page_token.update_locationUpdate locationPUTUpdates a location. name is required on every update: send the current name when not renaming it.
People group, 4 operations
create_people_groupCreate people groupPOSTCreates a people group with the given name.delete_people_groupDelete people groupDELETEPermanently deletes a people group.list_people_groupsList people groupsGETLists the firm's people groups (id and name), used to group clients. Page with page_size (up to 1,000) and page_token.update_people_groupUpdate people groupPUTRenames a people group.
Practice area, 4 operations
create_practice_areaCreate practice areaPOSTCreates a practice area with the given name.delete_practice_areaDelete practice areaDELETEPermanently deletes a practice area.list_practice_areasList practice areasGETLists the firm's practice areas (id and name). A case's practice area is set by name. Page with page_size (up to 1,000) and page_token.update_practice_areaUpdate practice areaPUTRenames a practice area.
Time entry, 4 operations
create_time_entryCreate time entryPOSTRecords time on a case: activity name, entry date, rate, hours, case and staff are required; optional description, billable and flat-fee flags and UTBMS codes (LEDES firms only).delete_time_entryDelete time entryDELETEPermanently deletes a time entry.get_time_entryGet time entryGETReturns one time entry: activity, description, flags, date, rate, hours, case, staff, UTBMS codes and invoice.list_time_entriesList time entriesGETLists the firm's time entries: activity, description, billable and flat-fee flags, date, rate, hours, case, staff, UTBMS codes and invoice. Page with page_size (up to 1,000) and page_token.
Folder, 3 operations
create_case_subfoldersCreate case subfoldersPOSTCreates a folder path under a case's documents; every missing folder in the path is created.get_case_folderGet case folderGETReturns the root folder of a case's documents (id and name). Browse it with list_folder_documents and list_folder_subfolders.list_folder_subfoldersList folder subfoldersGETLists the subfolders directly inside a folder (first level only). Page with page_size (up to 1,000) and page_token.
Message thread, 3 operations
create_case_message_threadCreate case message threadPOSTStarts a MyCase message thread filed under a case, with a subject and first message to the clients and staff you list: this SENDS a message they will see.create_message_threadCreate message threadPOSTStarts a MyCase message thread with a subject and first message, addressed to the clients and staff you list: this SENDS a message they will see. Use create_case_message_thread to file it under a case.list_client_message_threadsList client message threadsGETLists the message threads a client takes part in: subject, first message, sender, case, clients and staff.
Staff, 3 operations
get_current_userGet current userGETReturns the MyCase staff member the connection is signed in as.get_staffGet staffGETReturns one staff member: name, email, title, type, active flag, default hourly rate and contact details.list_staffList staffGETLists the firm's staff members: name, email, title, type, active flag, default hourly rate and contact details. Filter by active or inactive. Page with page_size (up to 1,000) and page_token.
Webhook subscription, 3 operations
create_webhook_subscriptionCreate webhook subscriptionPOSTSubscribes a URL to created, updated or deleted events of one record type (case, client, company, event, lead, message). This sends firm data to that URL: use only a URL the user gave you.delete_webhook_subscriptionDelete webhook subscriptionDELETECancels a webhook subscription; its URL stops receiving notifications.list_webhook_subscriptionsList webhook subscriptionsGETLists the webhook subscriptions of this connection: id, model, delivery url and actions. The signing key is not returned.
Invoice, 2 operations
delete_invoiceDelete invoiceDELETEPermanently deletes an invoice.list_invoicesList invoicesGETLists the firm's invoices (number, status, invoice and due dates, total and paid amounts, case, view link). Only invoices allowing online payments unless only_allowed_online_payments=false. Page with page_size (up to 1,000) and page_token.
Invoice payment, 2 operations
list_invoice_paymentsList invoice paymentsGETLists payments recorded on the firm's invoices (amount, status, type, date, invoice, case, client, attorney). Filter by status or invoice. Page with page_size (up to 1,000) and page_token.record_invoice_paymentRecord invoice paymentPOSTRecords a payment received on an invoice (amount, date, optional note). It books the payment in MyCase; it does not charge anyone.
Referral source, 2 operations
create_referral_sourceCreate referral sourcePOSTCreates a lead referral source with the given name.list_referral_sourcesList referral sourcesGETLists the firm's lead referral sources (id and name). Page with page_size (up to 1,000) and page_token.
Case role, 1 operation
list_case_rolesList case rolesGETLists the firm's case roles (id and name), the roles given to clients and companies added to a case. Page with page_size (up to 1,000) and page_token.
Firm, 1 operation
get_firmGet firmGETReturns the firm of the connected user (its name and url).
Message, 1 operation
add_message_to_threadAdd message to threadPOSTPosts a message in an existing MyCase message thread: this SENDS it to everyone in the thread.
Use MyCase from Claude Code, Cursor or Codex
Connect MyCase in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its MyCase operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect MyCase
- Create your workspace
Sign up free. Nothing to install.
- Connect MyCase once
Add your MyCase connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
MyCase integration FAQ
What can you do with the MyCase integration?
LiveContext exposes 110 operations on MyCase, covering case, note, document and company.
