Maton

Maton Agent Toolkit

The Maton Agent Toolkit enables popular agent frameworks including Model Context Protocol (MCP) to integrate with Maton APIs through function calling. The library is not exhaustive of the entire Maton API. It includes support for Typescript.

The toolkit was inspired by Stripe Agent Toolkit, and its implementation shares similarities with the Stripe Agent Toolkit codebase.

Included below are basic instructions, but refer to the TypeScript package for more information.

To get started, get your API key in your Maton Dashboard and check out documentation.

TypeScript

Installation

You don't need this source code unless you want to modify the package. If you just want to use the package run:

npm install @maton/agent-toolkit

Requirements

  • Node 18+

Usage

Model Context Protocol

The Maton Agent Toolkit also supports the Model Context Protocol (MCP).

To run the Maton MCP server using npx, use the following command:

API Agent (Beta)

# To use API agent
npx -y @maton/mcp hubspot --agent --api-key=YOUR_MATON_API_KEY

API Action

# To set up all available API actions
npx -y @maton/mcp hubspot --actions=all --api-key=YOUR_MATON_API_KEY

# To set up all available API actions
npx -y @maton/mcp hubspot --actions=create-contact,list-contacts --api-key=YOUR_MATON_API_KEY

Replace YOUR_MATON_API_KEY with your actual Maton API key. Or, you could set the MATON_API_KEY in your environment variables. You can get your API key in your Maton Dashboard.

Usage with Claude Desktop

Add the following to your claude_desktop_config.json. See here for more details.

{
  "mcpServers": {
    "maton": {
      "command": "npx",
      "args": [
        "-y",
        "@maton/mcp@latest",
        "hubspot",
        "--actions=all",
        "--api-key=YOUR_MATON_API_KEY"
      ]
    }
  }
}

Make sure to replace YOUR_MATON_API_KEY with your actual Maton API key. Alternatively, you could set the MATON_API_KEY in env variables. You can get your API key in your Maton Dashboard.

Available API actions

AppAction
airtablelist-bases
airtablelist-records
airtablelist-tables
asanacreate-task
asanaget-task
asanalist-projects
asanalist-tasks
asanalist-workspaces
awsget-s3-object
awslist-s3-buckets
awslist-s3-objects
calendlyget-event
calendlylist-event-invitees
calendlylist-event-types
calendlylist-events
clickupcreate-task
clickupdelete-task
clickupget-task
clickuplist-folders
clickuplist-lists
clickuplist-spaces
clickuplist-tasks
clickuplist-workspaces
google-calendarcreate-event
google-calendardelete-event
google-calendarget-calendar
google-calendarget-event
google-calendarlist-calendars
google-calendarlist-events
google-calendarupdate-event
google-docsappend-text
google-docscreate-document
google-docsfind-document
google-docsget-document
google-drivecreate-file
google-drivecreate-folder
google-drivedelete-file
google-drivefind-file
google-drivefind-folder
google-driveget-file
google-drivelist-files
google-mailadd-label-to-email
google-mailcreate-draft
google-mailfind-email
google-maillist-labels
google-mailsend-email
google-sheetadd-column
google-sheetadd-multiple-rows
google-sheetclear-cell
google-sheetclear-rows
google-sheetcreate-spreadsheet
google-sheetcreate-worksheet
google-sheetdelete-rows
google-sheetdelete-worksheet
google-sheetfind-row
google-sheetget-cell
google-sheetget-spreadsheet
google-sheetget-values-in-range
google-sheetlist-worksheets
google-sheetupdate-cell
google-sheetupdate-multiple-rows
google-sheetupdate-row
hubspotcreate-contact
hubspotget-contact
hubspotlist-contacts
hubspotsearch-contacts
hubspotmerge-contacts
hubspotupdate-contact
hubspotdelete-contact
hubspotcreate-deal
hubspotget-deal
hubspotlist-deals
hubspotsearch-deals
hubspotmerge-deals
hubspotupdate-deal
hubspotdelete-deal
jiralist-clouds
jiraget-issue
jiralist-issues
jiraadd-comment-to-issue
jiralist-comments
jiraupdate-comment
jiralist-projects
jiraget-user
jiralist-users
jotformlist-forms
jotformlist-submissions
klaviyoadd-profiles-to-list
klaviyoassign-template-to-campaign-message
klaviyocreate-campaign
klaviyocreate-list
klaviyocreate-profile
klaviyocreate-template
klaviyoget-campaign-messages
klaviyoget-campaign-send-job
klaviyoget-campaigns
klaviyoget-lists
klaviyoget-profiles-for-list
klaviyoget-profiles
klaviyoget-templates
klaviyosend-campaign
mailchimpget-campaign
mailchimpsearch-campaign
notioncreate-page
notionfind-page
notionget-page
outlookcreate-draft
outlookfind-email
outlooksend-email
pipedrivesearch-people
salesforcecreate-contact
salesforceget-contact
salesforcelist-contacts
shopifycreate-order
shopifyget-order
shopifylist-orders
slacklist-channels
slacklist-messages
slacklist-replies
slacksend-message
stripecreate-customer
stripecreate-invoice-item
stripecreate-invoice
stripedelete-customer
stripeget-customer
stripeget-invoice
stripelist-customers
stripelist-invoices
typeformget-form
typeformlist-forms
typeformlist-responses
youtubelist-videos
youtubesearch-videos