Skip to content

Connectors · Work & projects

Mitti MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Mitti and the rest of your systems. It gives your agent 415 Mitti actions (202 reads, 164 writes and 49 that wait for a confirmation) and holds the Mitti credential itself, so the agent never does. It paces Mitti's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "mitti.users.list_users",  intent: "check which Mitti account is connected"}# List users · read · 1 upstream call
  • 415actionsin one signed file
  • 202readlook, never change
  • 164writecreate and update
  • 49wait for a yesdestructive, confirmed first

Set up

Connect Mitti in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Mitti.

    Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • api_tokenMitti API token: a service user API token (recommended for integrations) or a user API token, created in Mitti under…
    account { op: "connections.requirements", service: "mitti" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "mitti.users.list_users" }# list users · read · 1 upstream callcheck { action: "mitti.assets.create_asset", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Mitti at a glance

Sign-in
Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
api_token
Limits we pace to
800 calls a minute, per connection
API covered
Mitti API v1.350.11 (OpenAPI 3.1.0)api.mitti.com
Built from
Mitti's documentation, read 22 October 2026dash.readme.comdeveloper.mitti.com
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
193 of 202 reads, for up to 5 minutes; a write clears what it affects
Shared entities
9, so ask can line Mitti up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Mitti.

415 actions in 26 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 202readlook, never change
  • 164writecreate and update
  • 49destructivewait for a confirmation
  1. Assets

    45

    15 read · 22 write · 8 destructive

    List assets · List asset types · Create an asset · Get full detail information of an asset

  2. Feeds

    40

    40 read · 0 write · 0 destructive

    Data feed for credential types · Data feed for credentials · Data feed for action assignees · Data feed for action fields

  3. Investigations

    38

    22 read · 13 write · 3 destructive

    List Investigations · Create Investigation · Get Investigation · Update Investigation

  4. Actions

    33

    8 read · 19 write · 6 destructive

    List actions · Create an action · Get an Action · Create an action with recurring schedule

  5. Inspections

    31

    7 read · 20 write · 4 destructive

    Add table line · Clone an inspection · Create inspection · Generate a dynamic field (repeated section)

  6. Issues

    24

    8 read · 14 write · 2 destructive

    List Issues · Create Issue · Get Issue · Add Issue assignee

  7. Training

    24

    22 read · 2 write · 0 destructive

    Get collections · Get Course Statistics · Get courses · Get courses by collection

  8. Users

    23

    9 read · 12 write · 2 destructive

    List users · Get a user (legacy) · Create a user (legacy) · Create a user field

18 more areas · 157 actions
  • Sites 16
  • Credentials 14
  • Osha 14
  • Companies 12
  • Schedules 12
  • Structures 12
  • Templates 12
  • Apps 10
  • Documents 10
  • Groups 8
  • Response sets 8
  • Sensors 7
  • Webhooks 7
  • Heads up 5
  • Schedules legacy 4
  • Roles 3
  • Lone worker 2
  • Media 1

Top actions

The Mitti API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 38 of Mitti's 38 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
mitti.users.list_usersList usersList users.readidentity.user.list474 connectors
mitti.assets.list_assetsList assetsList assets.readasset.asset.list42 connectors
mitti.assets.list_typesList asset typesList asset types.readasset.asset_type.list11 connectors
mitti.groups.list_groupsList groupsList groups.readidentity.group.list262 connectors
mitti.actions.get_actionsList actionsList actions.readwork.task.list122 connectors
mitti.users.get_user_legacyGet a user (legacy)Get a user (legacy).readidentity.user.get399 connectors
mitti.assets.create_assetCreate an assetCreate an asset.writeasset.asset.create27 connectors
mitti.issues.get_incidentsList IssuesList Issues.readservice.ticket.list56 connectors
mitti.groups.create_groupCreate a groupCreate a group.writeidentity.group.create205 connectors
mitti.actions.create_actionCreate an actionCreate an action.writework.task.create127 connectors
mitti.assets.create_typeCreate an asset typeCreate an asset type.writeasset.asset_type.create7 connectors
mitti.assets.delete_assetDelete an assetDelete an asset.destructiveasset.asset.delete26 connectors

Try it

Prompts to paste into Claude.

Each one names the Mitti actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which Mitti tickets have been open the longest? Show me the ten oldest with their status.

    callsmitti.issues.get_incidents

  2. Writewrite

    Create an asset in Mitti. Show me exactly what you will send before you save it.

    callsmitti.assets.create_asset

  3. Across systemsread

    Which Mitti companies have invoices in ConnectWise PSA, and how many each?

    callsmitti.companies.list_contractor_companiesconnectwise_manage.invoices.list

Across your systems

Mitti, joined to the rest of your business.

One ask fetches from Mitti and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.

  • Which Mitti companies have invoices in ConnectWise PSA, and how many each?

    mitti.companies.list_contractor_companies + connectwise_manage.invoices.list, on crm.company · ConnectWise PSA

  • Which Mitti companies have invoices in NetSuite, and how many each?

    mitti.companies.list_contractor_companies + netsuite.views.invoices, on crm.company · NetSuite

Also mapped by other connectorsidentity.user 517identity.group 239crm.company 227work.task 105service.ticket 62asset.asset 40content.folder 38monitoring.incident 27
ask
ask {  intent: "which Mitti companies have invoices in ConnectWise PSA, and how many each",  steps: [    { action: "mitti.companies.list_contractor_companies", as: "co", input: {}, limit: 100, max_pages: 5 },    { action: "connectwise_manage.invoices.list", as: "inv", input: {}, limit: 100, max_pages: 5 },    { join: {        left: "co",        right: "inv",        on: "crm.company",        group_by: "co.name",        select: ["co.name", "count(inv.id) as invoices"]    } }  ]}
Example. Run it through check first: it validates the steps and prices them, and it is free.

Governance for Mitti

Destructive actions wait for a yes.

49 Mitti actions are destructive. The first 10:

  • Delete an assetmitti.assets.delete_asset
  • Delete an asset typemitti.assets.delete_type
  • Delete a companymitti.companies.delete_contractor_company
  • Delete Investigationmitti.investigations.delete_investigation
  • Delete a maintenance planmitti.assets.delete_plan
  • Delete a user fieldmitti.users.delete_field
  • Delete an asset fieldmitti.assets.delete_field
  • Delete a maintenance programmitti.assets.delete_program
  • Delete actions (Bulk)mitti.actions.delete_actions
  • Delete Issuesmitti.issues.delete_incidents

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

domitti.assets.delete_assetconfirm_policy: human

Delete an asset?

intent: the user asked me to delete an asset

run suspended · waiting for a named person · key mitti-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "mitti-agent",  allowed_actions: ["mitti.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "mitti.assets.delete_asset", approver: "[email protected]" },    { match: "mitti.assets.delete_type", approver: "[email protected]" },    { match: "mitti.companies.delete_contractor_company", approver: "[email protected]" }  ]}
Illustrative. Scoped to Mitti only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Mitti costs on actionlake.

Every Mitti action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Mitti refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 415 Mitti actions
  • 415actions pageeach page of a long list is one call
  • 193reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Mitti action.

415 actions by area: the id your agent calls, what it does, and its effect.

Assets45
  • mitti.assets.add_asset_last_serviceAdd maintenance last service information to an assetwrite
  • mitti.assets.add_assets_to_programAdd assets to a maintenance programwrite
  • mitti.assets.add_status_group_to_asset_typesAdd a status group to asset typeswrite
  • mitti.assets.archive_assetArchive an assetwrite
  • mitti.assets.bulk_create_assetsCreate multiple assetswrite
  • mitti.assets.bulk_update_assetsUpdate multiple assetswrite
  • mitti.assets.create_assetCreate an assetwrite
  • mitti.assets.create_fieldCreate an asset fieldwrite
  • mitti.assets.create_planCreate a maintenance planwrite
  • mitti.assets.create_programCreate a maintenance programwrite
  • mitti.assets.create_status_groupCreate a status groupwrite
  • mitti.assets.create_typeCreate an asset typewrite
  • mitti.assets.delete_assetDelete an assetdestructive
  • mitti.assets.delete_fieldDelete an asset fielddestructive
  • mitti.assets.delete_planDelete a maintenance plandestructive
  • mitti.assets.delete_programDelete a maintenance programdestructive
  • mitti.assets.delete_status_groupDelete a status groupdestructive
  • mitti.assets.delete_typeDelete an asset typedestructive
  • mitti.assets.get_assetGet full detail information of an assetread
  • mitti.assets.get_asset_by_codeGet asset by coderead
  • mitti.assets.get_programGet a maintenance programread
  • mitti.assets.get_status_groupGet a status groupread
  • mitti.assets.get_typeGet an asset typeread
  • mitti.assets.list_asset_service_historyList asset service historyread
  • mitti.assets.list_assetsList assetsread
  • mitti.assets.list_assets_maintenance_detailsList assets maintenance detailsread
  • mitti.assets.list_assets_maintenance_status_countsReturn the count of assets in each maintenance statusread
  • mitti.assets.list_fieldsList asset fieldsread
  • mitti.assets.list_programs_detailsList maintenance program detailsread
  • mitti.assets.list_status_groupsList status groupsread
  • mitti.assets.list_type_fieldsList an asset type's asset field associationsread
  • mitti.assets.list_typesList asset typesread
  • mitti.assets.lookup_assets_by_fieldLookup assets by a fieldread
  • mitti.assets.remove_assets_from_programRemove assets from a maintenance programdestructive
  • mitti.assets.remove_status_group_from_asset_typesRemove a status group from asset typesdestructive
  • mitti.assets.restore_archived_assetRestore an archived assetwrite
  • mitti.assets.set_asset_field_valuesSet field values of an assetwrite
  • mitti.assets.update_assetUpdate an assetwrite
  • mitti.assets.update_asset_locationUpdate asset locationwrite
  • mitti.assets.update_fieldUpdate an asset fieldwrite
  • mitti.assets.update_planUpdate a maintenance planwrite
  • mitti.assets.update_programUpdate a maintenance programwrite
  • mitti.assets.update_status_groupUpdate a status groupwrite
  • mitti.assets.update_typeUpdate an asset typewrite
  • mitti.assets.update_type_fieldsUpdate an asset type's asset field associationswrite
Feeds40
  • mitti.feeds.credential_typesData feed for credential typesread
  • mitti.feeds.credentialsData feed for credentialsread
  • mitti.feeds.feed_action_assigneesData feed for action assigneesread
  • mitti.feeds.feed_action_fieldsData feed for action fieldsread
  • mitti.feeds.feed_action_fields_tasksData feed for action fieldsread
  • mitti.feeds.feed_action_timeline_itemsData feed for action timeline itemsread
  • mitti.feeds.feed_actionsData feed for actionsread
  • mitti.feeds.feed_activity_log_eventsData feed for activity log eventsread
  • mitti.feeds.feed_assetsData feed for assetsread
  • mitti.feeds.feed_assets_maintenanceData feed for assets maintenance detailsread
  • mitti.feeds.feed_contractor_companiesData feed for contractor companiesread
  • mitti.feeds.feed_contractor_company_documentsData feed for contractor company documentsread
  • mitti.feeds.feed_contractor_company_user_membershipsData feed for contractor company membersread
  • mitti.feeds.feed_group_usersData feed for group usersread
  • mitti.feeds.feed_groupsData feed for groupsread
  • mitti.feeds.feed_inspection_itemsData feed for inspection itemsread
  • mitti.feeds.feed_inspectionsData feed for inspectionsread
  • mitti.feeds.feed_investigation_detail_fieldsData feed for investigation detail fieldsread
  • mitti.feeds.feed_investigation_fieldsData feed for investigation fieldsread
  • mitti.feeds.feed_investigation_relationshipsData feed for investigation relationshipsread
  • mitti.feeds.feed_investigationsData feed for investigationsread
  • mitti.feeds.feed_issue_assigneesData feed for issue assigneesread
  • mitti.feeds.feed_issue_relationshipsData feed for issue relations itemsread
  • mitti.feeds.feed_issue_timeline_itemsData feed for issue timeline itemsread
  • mitti.feeds.feed_issuesData feed for issuesread
  • mitti.feeds.feed_jobsData feed for Lone Worker jobsread
  • mitti.feeds.feed_maintenance_plansData feed for maintenance plansread
  • mitti.feeds.feed_maintenance_programsData feed for maintenance programsread
  • mitti.feeds.feed_schedule_assigneesData feed for schedule assigneesread
  • mitti.feeds.feed_schedule_assignees_legacyData feed for schedule assignees (legacy)read
  • mitti.feeds.feed_schedule_occurrencesData feed for schedule occurrencesread
  • mitti.feeds.feed_schedule_occurrences_legacyData feed for schedule occurrences (legacy)read
  • mitti.feeds.feed_schedulesData feed for schedulesread
  • mitti.feeds.feed_schedules_legacyData feed for Schedules (legacy)read
  • mitti.feeds.feed_site_membersData feed for site membersread
  • mitti.feeds.feed_sitesData feed for sitesread
  • mitti.feeds.feed_template_permissionsData feed for template permissionsread
  • mitti.feeds.feed_templatesData feed for templatesread
  • mitti.feeds.feed_training_course_progressData feed for Course Progressread
  • mitti.feeds.feed_usersData feed for usersread
Investigations38
  • mitti.investigations.clone_categoryClone Categorywrite
  • mitti.investigations.create_categoryCreate Categorywrite
  • mitti.investigations.create_detail_fieldCreate Detail Fieldwrite
  • mitti.investigations.create_investigationCreate Investigationwrite
  • mitti.investigations.delete_categoryDelete Categorydestructive
  • mitti.investigations.delete_detail_fieldDelete Detail Fielddestructive
  • mitti.investigations.delete_investigationDelete Investigationdestructive
  • mitti.investigations.get_investigationGet Investigationread
  • mitti.investigations.get_investigation_accessGet Investigation Accessread
  • mitti.investigations.get_investigation_action_countGet Investigation Actionsread
  • mitti.investigations.get_investigation_course_countGet Investigation Course Countread
  • mitti.investigations.get_investigation_inspection_countGet Investigation Inspection Countread
  • mitti.investigations.get_investigation_issue_countGet Investigation Issue Countread
  • mitti.investigations.get_investigation_media_countGet Investigation Media Countread
  • mitti.investigations.get_investigation_pdf_reportGet Investigation PDF Reportread
  • mitti.investigations.get_investigations_countGet Investigations Countread
  • mitti.investigations.list_categoriesList Categoriesread
  • mitti.investigations.list_category_detail_fieldsList Category Detail Fieldsread
  • mitti.investigations.list_detail_field_libraryList Detail Field Libraryread
  • mitti.investigations.list_fieldsList Fieldsread
  • mitti.investigations.list_investigation_actionsList Investigation Actionsread
  • mitti.investigations.list_investigation_coursesList Investigation Coursesread
  • mitti.investigations.list_investigation_inspectionsList Investigation Inspectionsread
  • mitti.investigations.list_investigation_issuesList Investigation Issuesread
  • mitti.investigations.list_investigation_logList Investigation Activityread
  • mitti.investigations.list_investigation_mediaList Investigation Mediaread
  • mitti.investigations.list_investigationsList Investigationsread
  • mitti.investigations.list_settings_logList Settings Log Eventsread
  • mitti.investigations.list_statusesList Statusesread
  • mitti.investigations.rename_detail_fieldRename Detail Fieldwrite
  • mitti.investigations.set_category_detail_fieldsSet Category Detail Fieldswrite
  • mitti.investigations.set_detail_field_optionsSet Detail Field Optionswrite
  • mitti.investigations.update_categoryUpdate Categorywrite
  • mitti.investigations.update_fieldsUpdate Fieldswrite
  • mitti.investigations.update_investigationUpdate Investigationwrite
  • mitti.investigations.update_investigation_accessUpdate Investigation Accesswrite
  • mitti.investigations.update_investigationsUpdate Investigations (bulk)write
  • mitti.investigations.update_statusesUpdate Statuseswrite
Actions33
  • mitti.actions.create_actionCreate an actionwrite
  • mitti.actions.create_action_scheduleCreate an action with recurring schedulewrite
  • mitti.actions.create_action_shared_linkCreate an action linkwrite
  • mitti.actions.create_custom_fieldCreate a custom field and map it to a specific action typewrite
  • mitti.actions.create_task_typeCreate an action typewrite
  • mitti.actions.delete_action_labelsDelete action labelsdestructive
  • mitti.actions.delete_actionsDelete actions (Bulk)destructive
  • mitti.actions.delete_custom_fieldDelete a custom fielddestructive
  • mitti.actions.delete_task_typeDelete an action typedestructive
  • mitti.actions.get_actionGet an Actionread
  • mitti.actions.get_action_labelsGet all action labelsread
  • mitti.actions.get_action_shared_linkGet an action linkread
  • mitti.actions.get_actionsList actionsread
  • mitti.actions.get_org_task_type_unmapped_fieldsGet the custom fields not mapped to a specific action typeread
  • mitti.actions.get_task_typeGet a single action type by idread
  • mitti.actions.get_task_type_custom_fieldsGet all custom fields mapped to a specific action typeread
  • mitti.actions.get_task_typesList all action types for the orgread
  • mitti.actions.map_field_to_task_typeMap a field to an action typewrite
  • mitti.actions.rename_custom_fieldRename a custom fieldwrite
  • mitti.actions.rename_task_typeRename an action typewrite
  • mitti.actions.revoke_action_shared_linkDelete an action linkdestructive
  • mitti.actions.unmap_field_from_task_typeUnmap a field from an action typedestructive
  • mitti.actions.update_action_labelsUpdates the labels associated with an actionwrite
  • mitti.actions.update_assetUpdate the asset of an actionwrite
  • mitti.actions.update_assigneesUpdate the assignees of an actionwrite
  • mitti.actions.update_descriptionUpdate the description of an actionwrite
  • mitti.actions.update_due_atUpdate the due date of an actionwrite
  • mitti.actions.update_priorityUpdate the priority of an actionwrite
  • mitti.actions.update_siteUpdate the site of an actionwrite
  • mitti.actions.update_statusUpdate the status of an actionwrite
  • mitti.actions.update_task_custom_fieldUpdate a custom field for an Actionwrite
  • mitti.actions.update_titleUpdate the title of an actionwrite
  • mitti.actions.upsert_action_labelCreate or update an action labelwrite
Inspections31
  • mitti.inspections.add_table_lineAdd table linewrite
  • mitti.inspections.answer_assetAnswer an asset field questionwrite
  • mitti.inspections.answer_checkboxAnswer a check box questionwrite
  • mitti.inspections.archive_inspectionArchive an inspectionwrite
  • mitti.inspections.clone_inspectionClone an inspectionwrite
  • mitti.inspections.complete_inspectionComplete inspectionwrite
  • mitti.inspections.create_inspectionCreate inspectionwrite
  • mitti.inspections.delete_inspectionDelete an inspectiondestructive
  • mitti.inspections.delete_inspection_web_report_linkDelete inspection web report linkdestructive
  • mitti.inspections.delete_table_lineDelete table linedestructive
  • mitti.inspections.generate_dynamic_fieldGenerate a dynamic field (repeated section)write
  • mitti.inspections.get_answers_for_inspectionGet answers from an inspectionread
  • mitti.inspections.get_inspectionGet an inspectionread
  • mitti.inspections.get_inspection_accessGet inspection accessread
  • mitti.inspections.get_inspection_deep_linkGenerate an inspection deep linkwrite
  • mitti.inspections.get_inspection_detailsGet details of an inspectionread
  • mitti.inspections.get_inspection_legacyGet an inspection (legacy)read
  • mitti.inspections.get_inspection_web_report_linkGet inspection web report linkread
  • mitti.inspections.remove_inspection_user_accessRemove user access to an inspectiondestructive
  • mitti.inspections.restore_archived_inspectionRestore an archived inspectionwrite
  • mitti.inspections.search_inspectionsSearch modified inspectionsread
  • mitti.inspections.set_inspection_accessSet inspection accesswrite
  • mitti.inspections.set_inspection_locationSet an inspections start or finish locationwrite
  • mitti.inspections.set_inspection_siteSet inspection sitewrite
  • mitti.inspections.set_ownerSet inspection ownerwrite
  • mitti.inspections.share_inspectionShare an inspectionwrite
  • mitti.inspections.start_inspectionStart an inspectionwrite
  • mitti.inspections.start_inspection_exportExport inspection to PDF or Wordwrite
  • mitti.inspections.update_inspectionUpdate inspectionwrite
  • mitti.inspections.update_inspection_legacyUpdate an inspectionwrite
  • mitti.inspections.update_table_lineUpdate table linewrite
Issues24
  • mitti.issues.add_collaboratorsAdd Issue assigneewrite
  • mitti.issues.add_commentAdd comment to timelinewrite
  • mitti.issues.create_incident_legacyCreate Issue (legacy)write
  • mitti.issues.delete_incidentsDelete Issuesdestructive
  • mitti.issues.generate_for_web_reportGet Issue web report linkwrite
  • mitti.issues.get_categoriesList Categoriesread
  • mitti.issues.get_incidentGet Issueread
  • mitti.issues.get_incident_legacyGet Issue (legacy)read
  • mitti.issues.get_incident_questions_and_answersGet Issue questions and answersread
  • mitti.issues.get_incidentsList Issuesread
  • mitti.issues.get_incidents_countGet count of Issuesread
  • mitti.issues.get_pdf_reportExport Issue to PDFread
  • mitti.issues.get_timelineList timeline eventsread
  • mitti.issues.remove_collaboratorsRemove Issue assigneedestructive
  • mitti.issues.submit_incidentCreate Issuewrite
  • mitti.issues.update_assetUpdate Issue assetwrite
  • mitti.issues.update_categoryUpdate Categorywrite
  • mitti.issues.update_descriptionUpdate Issue descriptionwrite
  • mitti.issues.update_due_atUpdate Issue due datewrite
  • mitti.issues.update_occurred_atUpdate Issue occurred atwrite
  • mitti.issues.update_priorityUpdate Issue prioritywrite
  • mitti.issues.update_siteUpdate Issue sitewrite
  • mitti.issues.update_statusUpdate Issue statuswrite
  • mitti.issues.update_titleUpdate Issue titlewrite
Training24
  • mitti.training.get_course_collectionsGet collectionsread
  • mitti.training.get_course_statisticsGet Course Statisticsread
  • mitti.training.get_coursesGet coursesread
  • mitti.training.get_courses_by_course_collection_idGet courses by collectionread
  • mitti.training.get_individual_leaderboard_rankingsGet individual leaderboard rankingsread
  • mitti.training.get_individual_leaderboardsGet individual leaderboardsread
  • mitti.training.get_lesson_attemptsGet Lesson Attemptsread
  • mitti.training.get_lesson_by_idGet lesson by IDread
  • mitti.training.get_lesson_progress_eventsGet Lesson Progress Eventsread
  • mitti.training.get_lesson_statisticsGet Lesson Statisticsread
  • mitti.training.get_lessons_by_course_idGet lessons by course IDread
  • mitti.training.get_path_by_idGet path by IDread
  • mitti.training.get_pathsGet pathsread
  • mitti.training.get_rapid_refreshGet rapid refreshread
  • mitti.training.get_rapid_refresh_answersGet Rapid Refresh Answersread
  • mitti.training.get_rapid_refresh_by_idGet rapid refresh by IDread
  • mitti.training.get_slide_statisticsGet Slide Statisticsread
  • mitti.training.get_slide_user_statisticsGet Slide User Statisticsread
  • mitti.training.get_survey_answersGet Survey Answersread
  • mitti.training.get_survey_question_definitionsGet Survey Question Definitionsread
  • mitti.training.get_user_lesson_progressGet User Lesson Progressread
  • mitti.training.get_user_lesson_progress_eventsGet User Lesson Progress Eventsread
  • mitti.training.reset_course_progressReset course progresswrite
  • mitti.training.update_course_assignmentsUpdate course assignmentswrite
Users23
  • mitti.users.add_user_legacyCreate a user (legacy)write
  • mitti.users.assign_permission_setAssign user to a permission setwrite
  • mitti.users.cancel_create_or_update_users_jobCancel a create-or-update users jobdestructive
  • mitti.users.create_fieldCreate a user fieldwrite
  • mitti.users.create_or_update_usersCreate or update users synchronouslywrite
  • mitti.users.delete_fieldDelete a user fielddestructive
  • mitti.users.disable_fieldArchive a fieldwrite
  • mitti.users.get_create_or_update_users_jobGet a create-or-update users jobread
  • mitti.users.get_permission_setGet a permission setread
  • mitti.users.get_user_attributesGet user attributesread
  • mitti.users.get_user_legacyGet a user (legacy)read
  • mitti.users.init_create_or_update_users_jobInitialize a create-or-update users jobwrite
  • mitti.users.list_create_or_update_users_jobsList create-or-update users jobsread
  • mitti.users.list_fieldsList user fieldsread
  • mitti.users.list_permission_setsList permission setsread
  • mitti.users.list_usersList usersread
  • mitti.users.restore_fieldRestore an archived fieldwrite
  • mitti.users.search_users_legacyList users by email (legacy)read
  • mitti.users.set_field_settingsUpdate field settingswrite
  • mitti.users.set_user_attributesSet user attributeswrite
  • mitti.users.start_create_or_update_users_jobStart a create-or-update users jobwrite
  • mitti.users.update_fieldUpdate a user fieldwrite
  • mitti.users.update_user_legacyUpdate a user (legacy)write
Sites16
  • mitti.sites.add_users_folders_associationsAssociate users to folderswrite
  • mitti.sites.create_folderCreate a folderwrite
  • mitti.sites.delete_foldersDelete folders (bulk)destructive
  • mitti.sites.get_all_users_by_folderRetrieve users associated to a folder, includes both directly and indirectly (inherited)read
  • mitti.sites.get_folderRetrieve a folderread
  • mitti.sites.get_folder_i_ds_for_userList folders the requesting user is associated withread
  • mitti.sites.get_foldersList foldersread
  • mitti.sites.get_folders_by_parentGet folders (by parent)read
  • mitti.sites.get_inherited_users_by_folderRetrieve users indirectly associated (inherited) to a folderread
  • mitti.sites.get_org_labelsGet custom labelsread
  • mitti.sites.get_users_by_folderRetrieve users directly associated to a folderread
  • mitti.sites.move_foldersMove folder to another parent folder or as a root folderwrite
  • mitti.sites.remove_folders_associationRemove association for a specific user to multiple foldersdestructive
  • mitti.sites.remove_users_associationRemove association for multiple users to a specific folderdestructive
  • mitti.sites.search_foldersSearch foldersread
  • mitti.sites.update_folder_propertiesUpdate a folderwrite
Credentials14
  • mitti.credentials.add_document_version_for_userAdd a version to a credentialwrite
  • mitti.credentials.create_document_typeCreate a credential typewrite
  • mitti.credentials.delete_all_media_for_document_versionDelete all media for a credential versiondestructive
  • mitti.credentials.delete_document_for_userDelete a credential including all its versionsdestructive
  • mitti.credentials.delete_document_typeDelete a credential typedestructive
  • mitti.credentials.get_document_historyList all versions of a credentialread
  • mitti.credentials.get_document_typeGet a credential typeread
  • mitti.credentials.get_document_versionGet a version of a credentialread
  • mitti.credentials.get_documentsList the latest version of credentials based on applied filtersread
  • mitti.credentials.get_settingsGet the Credential settings for your organizationread
  • mitti.credentials.list_document_typesList credential typesread
  • mitti.credentials.update_document_typeUpdate a credential typewrite
  • mitti.credentials.update_document_version_for_userUpdate a version of a credentialwrite
  • mitti.credentials.update_settingsUpdate the Credential settings for your organizationwrite
Osha14
  • mitti.osha.create_caseCreate Casewrite
  • mitti.osha.create_establishmentCreate Establishmentwrite
  • mitti.osha.delete_caseDelete Casedestructive
  • mitti.osha.delete_establishmentDelete Establishmentdestructive
  • mitti.osha.get_caseGet Caseread
  • mitti.osha.get_establishmentGet Establishmentread
  • mitti.osha.get_establishment_employeesGet Establishment Employeesread
  • mitti.osha.get_establishment_hoursGet Establishment Hoursread
  • mitti.osha.list_casesList Casesread
  • mitti.osha.list_establishmentsList Establishmentsread
  • mitti.osha.update_caseUpdate Casewrite
  • mitti.osha.update_establishmentUpdate Establishmentwrite
  • mitti.osha.update_establishment_employeesUpdate Establishment Employeeswrite
  • mitti.osha.update_establishment_hoursUpdate Establishment Hourswrite
Companies12
  • mitti.companies.create_contractor_companyCreate a companywrite
  • mitti.companies.delete_company_document_typeDelete a company document typedestructive
  • mitti.companies.delete_contractor_companyDelete a companydestructive
  • mitti.companies.get_company_typeGet a company typeread
  • mitti.companies.get_contractor_companyGet a companyread
  • mitti.companies.list_company_document_typesList company document typesread
  • mitti.companies.list_company_documentsList company documentsread
  • mitti.companies.list_company_typesList company typesread
  • mitti.companies.list_company_types_metricsList company type metricsread
  • mitti.companies.list_company_user_metadataList company usersread
  • mitti.companies.list_contractor_companiesList companiesread
  • mitti.companies.update_contractor_companyUpdate a companywrite
Schedules12
  • mitti.schedules.create_new_scheduleCreate a new schedulewrite
  • mitti.schedules.delete_scheduleDelete a scheduledestructive
  • mitti.schedules.end_scheduleEnd a schedulewrite
  • mitti.schedules.get_scheduleGet a scheduleread
  • mitti.schedules.list_schedule_accessList schedule accessread
  • mitti.schedules.list_schedule_targetsList schedule targetsread
  • mitti.schedules.pause_schedulePause a schedulewrite
  • mitti.schedules.resume_scheduleResume a schedulewrite
  • mitti.schedules.update_schedule_assigneesUpdate schedule assigneeswrite
  • mitti.schedules.update_schedule_detailsUpdate schedule detailswrite
  • mitti.schedules.update_schedule_recurrenceUpdate schedule recurrencewrite
  • mitti.schedules.update_schedule_targetUpdate schedule targetwrite
Structures12
  • mitti.structures.add_users_to_roleAdd users to a rolewrite
  • mitti.structures.add_users_to_structureAdd users to a structurewrite
  • mitti.structures.create_structureCreate a structurewrite
  • mitti.structures.get_structure_metadataGet structure metadataread
  • mitti.structures.get_structure_profileGet a structureread
  • mitti.structures.list_direct_users_in_structureList members of a structureread
  • mitti.structures.list_fieldsList fieldsread
  • mitti.structures.list_users_by_roleList users by roleread
  • mitti.structures.move_structureMove a structurewrite
  • mitti.structures.remove_users_from_structureRemove users from a structuredestructive
  • mitti.structures.search_structuresSearch structuresread
  • mitti.structures.update_structureReplace a structurewrite
Templates12
  • mitti.templates.archive_templateArchive a templatewrite
  • mitti.templates.create_template_draftOpen a template draftwrite
  • mitti.templates.delete_template_by_idDelete a template by template IDdestructive
  • mitti.templates.discard_template_draftDiscard a template draftdestructive
  • mitti.templates.get_template_by_idGet a templateread
  • mitti.templates.get_template_by_inspection_idGet template (by inspection)read
  • mitti.templates.get_template_definitionGet template definitionread
  • mitti.templates.get_template_draftGet template draftread
  • mitti.templates.publish_templatePublish a template draftwrite
  • mitti.templates.restore_archived_templateRestore an archived templatewrite
  • mitti.templates.search_templatesSearch modified templatesread
  • mitti.templates.update_template_draftUpdate a template draftwrite
Apps10
  • mitti.apps.create_configurationCreate configurationwrite
  • mitti.apps.create_installationCreate an installationwrite
  • mitti.apps.delete_configurationDelete the configurationdestructive
  • mitti.apps.delete_installationDelete an installationdestructive
  • mitti.apps.get_installationGet installationread
  • mitti.apps.list_applicationsList applicationsread
  • mitti.apps.list_installationsList all installationsread
  • mitti.apps.register_applicationRegister a new external applicationwrite
  • mitti.apps.update_applicationUpdate an external applicationwrite
  • mitti.apps.update_configurationUpdate the configurationwrite
Documents10
  • mitti.documents.archive_itemArchive a file or folderwrite
  • mitti.documents.bulk_add_file_ownersBulk add file ownerswrite
  • mitti.documents.bulk_remove_file_ownersBulk remove file ownersdestructive
  • mitti.documents.bulk_update_file_ownersBulk update file ownerswrite
  • mitti.documents.create_fileCreate a filewrite
  • mitti.documents.get_folder_childrenGet folder itemsread
  • mitti.documents.link_filesLink fileswrite
  • mitti.documents.move_itemMove a file or folderwrite
  • mitti.documents.search_itemsSearch files and foldersread
  • mitti.documents.update_fileUpdate a filewrite
Groups8
  • mitti.groups.add_new_user_to_groupAdd user to a groupwrite
  • mitti.groups.bulk_delete_groupsBulk delete groupsdestructive
  • mitti.groups.create_groupCreate a groupwrite
  • mitti.groups.get_user_groupsList groups for a userread
  • mitti.groups.list_groupsList groupsread
  • mitti.groups.list_share_connectionsList calling user's groups and organizationsread
  • mitti.groups.list_users_in_groupList a group's or an organization's usersread
  • mitti.groups.remove_userRemove user from a groupdestructive
Response sets8
  • mitti.response_sets.create_global_response_setCreate a global response setwrite
  • mitti.response_sets.create_grs_responseCreate a global response set responsewrite
  • mitti.response_sets.delete_global_response_setDelete a global response setdestructive
  • mitti.response_sets.delete_grs_responseDelete a global response set responsedestructive
  • mitti.response_sets.get_global_response_setGet a global response setread
  • mitti.response_sets.list_all_global_response_setsList global response setsread
  • mitti.response_sets.update_global_response_setUpdate a global response setwrite
  • mitti.response_sets.update_grs_responseUpdate a global response set responsewrite
Sensors7
  • mitti.sensors.deprovision_sensorDe-provision a sensordestructive
  • mitti.sensors.get_sensorGet sensorread
  • mitti.sensors.get_sensor_idGet a sensor IDread
  • mitti.sensors.get_sensor_latest_readingsGet sensor's latest readingsread
  • mitti.sensors.ingest_sensor_readingsIngest sensor readingswrite
  • mitti.sensors.list_sensorsList sensorsread
  • mitti.sensors.provision_sensorProvision a sensorwrite
Webhooks7
  • mitti.webhooks.create_webhookCreate a webhookwrite
  • mitti.webhooks.delete_webhookDelete a webhookdestructive
  • mitti.webhooks.generate_tokenRegenerate signature secretwrite
  • mitti.webhooks.get_tokenGet signature secretread
  • mitti.webhooks.get_webhookGet a webhookread
  • mitti.webhooks.list_webhooksList webhooksread
  • mitti.webhooks.update_webhookUpdate a webhookwrite
Heads up5
  • mitti.heads_up.get_heads_upGets Heads Upread
  • mitti.heads_up.get_heads_up_completion_countsGet Heads Up completion countsread
  • mitti.heads_up.get_heads_up_messagesGet a Heads Ups commentsread
  • mitti.heads_up.list_heads_up_manageList Heads Upsread
  • mitti.heads_up.list_heads_up_usersList Heads Up usersread
Schedules legacy4
  • mitti.schedules_legacy.create_schedule_itemCreate a schedule itemwrite
  • mitti.schedules_legacy.delete_schedule_itemDelete a schedule itemdestructive
  • mitti.schedules_legacy.list_schedule_itemsList schedule itemsread
  • mitti.schedules_legacy.update_schedule_itemUpdate a schedule itemwrite
Roles3
  • mitti.roles.create_roleCreate a rolewrite
  • mitti.roles.get_roleGet a roleread
  • mitti.roles.update_roleUpdate a rolewrite
Lone worker2
  • mitti.lone_worker.get_job_eventsGet job eventsread
  • mitti.lone_worker.get_jobsGet jobsread
Media1
  • mitti.media.get_download_signed_urlGet media download URLread

Questions

The Mitti MCP server, answered.

Is there a Mitti MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 415 Mitti actions across assets, feeds, investigations and actions, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Mitti.

What do I need to connect Mitti?

Mitti API token: a service user API token (recommended for integrations) or a user API token, created in Mitti under…. The free call account { op: "connections.requirements", service: "mitti" } lists exactly what to paste.

Can an AI agent delete or change things in Mitti?

Only if its key allows it, and only with an explicit confirmation. 49 Mitti actions are destructive, including delete an asset, delete an asset type and delete a company. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Mitti API limit?

actionlake paces every call to the limits in the Mitti service file: 800 calls a minute per connection. Repeated reads are answered from cache (193 Mitti actions can be), which never reaches Mitti.

What does a Mitti action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (415 Mitti actions page). Cache hits, searches, dry runs and calls Mitti refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Mitti API does it cover?

The Mitti API v1.350.11 (OpenAPI 3.1.0) at api.mitti.com. It is built from Mitti's documentation as read on 22 October 2026. 415 actions in 26 areas, each one in the signed service file (version 1.0.0).

Can I combine Mitti with my other systems?

Yes. ask joins Mitti to ConnectWise PSA or NetSuite on the same customer and returns the answer rather than every row. Mitti maps crm.company, which 227 other connectors also map.

Does actionlake keep my Mitti data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Mitti credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Mitti today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.