Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Circleback MCP connector

OAuth 2.1/DCRProductivityTranscriptionCalendar

Circleback is an AI meeting notes and conversation intelligence platform. The Circleback MCP server provides a standardized interface that allows any...

Circleback MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'circlebackmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Circleback MCP:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'circlebackmcp_finddomains',
    toolInput: { searchTerms: [] },
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Searchtranscripts records — Search meeting transcripts to find transcript chunks that match a given search term
  • Searchsupportarticles records — Search for support articles about Circleback to find relevant documentation and help content
  • Searchmeetings records — Find meetings that match a given search term or filter
  • Searchemails records — Search the user’s connected email accounts for email threads matching a query
  • Searchcalendarevents records — Get calendar events from the user’s connected calendars
  • Searchactionitems records — Find action items that match a given search term or filter

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

circlebackmcp_finddomains#Find company domains matching the given search terms. The data returned will be an array of domain strings representing companies accessible through meetings.1 param

Find company domains matching the given search terms. The data returned will be an array of domain strings representing companies accessible through meetings.

NameTypeRequiredDescription
searchTermsarrayrequiredArray of search terms to find matching company domains.
circlebackmcp_findprofiles#Find profiles matching the given names. The data returned will be an array of objects representing each of the matching profiles.1 param

Find profiles matching the given names. The data returned will be an array of objects representing each of the matching profiles.

NameTypeRequiredDescription
searchTermsarrayrequiredArray of people's names to find matching profiles.
circlebackmcp_gettranscriptsformeetings#Get the full transcripts for given meeting IDs. Use string IDs like Vd6Pz_kWqLm3xY-c8RhTn. The data returned will be an array of objects, each representing a full transcript for a meeting. Each transcript object will contain the meetingId, meetingName, and an array of transcript segments. Each segment is formatted with timestamps like: {startTimestamp: 123.45, endTimestamp: 128.00, speaker: 'John Doe', words: 'This is a test.'}. This should be used to get detailed transcript information for one or many meetings at once.2 params

Get the full transcripts for given meeting IDs. Use string IDs like Vd6Pz_kWqLm3xY-c8RhTn. The data returned will be an array of objects, each representing a full transcript for a meeting. Each transcript object will contain the meetingId, meetingName, and an array of transcript segments. Each segment is formatted with timestamps like: {startTimestamp: 123.45, endTimestamp: 128.00, speaker: 'John Doe', words: 'This is a test.'}. This should be used to get detailed transcript information for one or many meetings at once.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
meetingIdsarrayrequiredArray of meeting IDs to fetch, like aB3dEf6hIj9kLm2pQr5tV.
circlebackmcp_listtags#List all tags available in the user's workspace. Returns an array of tag objects with their IDs and names. Use this to discover available tags before filtering meetings, transcripts, or action items by tag.1 param

List all tags available in the user's workspace. Returns an array of tag objects with their IDs and names. Use this to discover available tags before filtering meetings, transcripts, or action items by tag.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
circlebackmcp_readmeetings#Given up to 50 meeting IDs, fetch detailed information for each meeting. Use string IDs like Vd6Pz_kWqLm3xY-c8RhTn. The data returned will be an array of objects, with each containing the meeting ID, name, notes, attendees, action items, AI-generated insights, creator, tags, status, duration, and creation date.2 params

Given up to 50 meeting IDs, fetch detailed information for each meeting. Use string IDs like Vd6Pz_kWqLm3xY-c8RhTn. The data returned will be an array of objects, with each containing the meeting ID, name, notes, attendees, action items, AI-generated insights, creator, tags, status, duration, and creation date.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
meetingIdsarrayrequiredArray of meeting IDs to fetch, like aB3dEf6hIj9kLm2pQr5tV.
circlebackmcp_searchactionitems#Find action items that match a given search term or filter. Returns action items with their title, description, status, assignee, and related meeting details. By default, only action items assigned to the user are returned. To find action items assigned to someone else, use FindProfiles to resolve their name to a profile ID and pass it as assigneeProfileId. Action items can be filtered by search terms, status (PENDING or DONE), tags, and meeting date range (startDate/endDate). Only 25 action items are returned per page, so this function may need to be called multiple times if there are more than that many results.8 params

Find action items that match a given search term or filter. Returns action items with their title, description, status, assignee, and related meeting details. By default, only action items assigned to the user are returned. To find action items assigned to someone else, use FindProfiles to resolve their name to a profile ID and pass it as assigneeProfileId. Action items can be filtered by search terms, status (PENDING or DONE), tags, and meeting date range (startDate/endDate). Only 25 action items are returned per page, so this function may need to be called multiple times if there are more than that many results.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
pageIndexnumberrequiredThe page index to fetch. Always start with page 0.
assigneeProfileIdnumberoptionalOptional profile ID to filter action items by assignee. Use FindProfiles to resolve a name to a profile ID. Always set this when the user mentions a specific person, including themselves. When omitted, only action items assigned to the user are returned.
endDatestringoptionalOptional ISO date string (yyyy-MM-dd) for latest date.
searchTermsarrayoptionalOptional array of search terms to find action items by title or description.
startDatestringoptionalOptional ISO date string (yyyy-MM-dd) for earliest date.
statusstringoptionalOptional filter by action item status.
tagsarrayoptionalOptional array of tag IDs to filter by.
circlebackmcp_searchcalendarevents#Get calendar events from the user's connected calendars. When searching for calendar events, the tool will extract relevant excerpts based on the intent instead of returning the entire data. Each calendar event excerpt includes comprehensive details: event title, date (in the user's timezone), organizer email, attendees (with names, emails, and status), calendar description (if present), meeting platform (Zoom, Google Meet, Microsoft Teams, etc.), meeting platform link, whether it's a recurring event, Circleback join status, and any associated meeting data from Circleback (meeting ID, status, tag IDs, user notes). You can filter events by providing a date range using startDate and endDate parameters. This is useful for finding upcoming meetings, scheduled calls, or calendar events that the user has. Note: This should be primarily used for searching calendar events happening in the future. Past calendar events have a meeting record if they were captured with Circleback. Only 50 calendar events are returned per page, so this function may need to be called multiple times if there are more than that many results.4 params

Get calendar events from the user's connected calendars. When searching for calendar events, the tool will extract relevant excerpts based on the intent instead of returning the entire data. Each calendar event excerpt includes comprehensive details: event title, date (in the user's timezone), organizer email, attendees (with names, emails, and status), calendar description (if present), meeting platform (Zoom, Google Meet, Microsoft Teams, etc.), meeting platform link, whether it's a recurring event, Circleback join status, and any associated meeting data from Circleback (meeting ID, status, tag IDs, user notes). You can filter events by providing a date range using startDate and endDate parameters. This is useful for finding upcoming meetings, scheduled calls, or calendar events that the user has. Note: This should be primarily used for searching calendar events happening in the future. Past calendar events have a meeting record if they were captured with Circleback. Only 50 calendar events are returned per page, so this function may need to be called multiple times if there are more than that many results.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
pageIndexnumberrequiredThe page index to fetch. Always start with page 0.
endDatestringoptionalOptional ISO date string (yyyy-MM-dd) for latest date to include results from.
startDatestringoptionalOptional ISO date string (yyyy-MM-dd) for earliest date to include results from.
circlebackmcp_searchemails#Search the user's connected email accounts for email threads matching a query. This should be used when the user asks questions about their emails or needs to find specific email conversations. This function queries across all connected email services and retrieves up to 20 matching email threads per service per page. The data returned will be an array of objects, with each containing the email thread ID, subject line, and relevant excerpts. Each email thread object includes metadata such as the sender email, received date, and the fromEmailAddress of the connected account the thread belongs to (if available). Only 20 email threads are returned per page, so this function may need to be called multiple times if there are more than that many results.3 params

Search the user's connected email accounts for email threads matching a query. This should be used when the user asks questions about their emails or needs to find specific email conversations. This function queries across all connected email services and retrieves up to 20 matching email threads per service per page. The data returned will be an array of objects, with each containing the email thread ID, subject line, and relevant excerpts. Each email thread object includes metadata such as the sender email, received date, and the fromEmailAddress of the connected account the thread belongs to (if available). Only 20 email threads are returned per page, so this function may need to be called multiple times if there are more than that many results.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
searchTermstringrequiredA query string to find relevant email threads. Supports search terms and the following filters: from:email (sender address) or from:me (will search for emails sent by the user), to:email (recipient address), participant:email (matches from OR to), before:date (latest date, yyyy-MM-dd format), after:date (earliest date, yyyy-MM-dd format). Examples: 'Meeting participant:ali@gmail.com', 'Q4 report participant:team@company.com', 'project update to:sarah@company.com after:2025-04-19'
pageIndexnumberoptionalThe page index to fetch. Always start with page 0.
circlebackmcp_searchmeetings#Find meetings that match a given search term or filter. Searches can be done by direct match on the meeting name or notes. Search term is a direct match ignoring case, prefer to search for a single word or phrase if provided. Searches can also be performed for tags or related profiles (attendees of the meetings). When searching for a meeting, the tool will find the appropriate meeting and extract the relevant source excerpt based on the intent instead of returning the entire data. NOTE: A search term is not explicitly required, for example if you want to find all meetings with a specific tag in a date range, only include those and don't pass a searchTerm. To restrict the search further, you can provide a start and end date. This will significantly improve performance. The data returned will be an an array of objects, with each containing meeting data. Only 20 meetings are returned per page, so this function may need to be called multiple times if there are more than that many results. If 20 meetings are returned, call this function again with the next pageIndex to ensure you get all results. IMPORTANT: The pageIndex is only valid for the exact same search parameters (aside from pageIndex). For example, if you provide a start / end date to fetch page 0, then you must provide the EXACT SAME start / end dates to fetch page 1.8 params

Find meetings that match a given search term or filter. Searches can be done by direct match on the meeting name or notes. Search term is a direct match ignoring case, prefer to search for a single word or phrase if provided. Searches can also be performed for tags or related profiles (attendees of the meetings). When searching for a meeting, the tool will find the appropriate meeting and extract the relevant source excerpt based on the intent instead of returning the entire data. NOTE: A search term is not explicitly required, for example if you want to find all meetings with a specific tag in a date range, only include those and don't pass a searchTerm. To restrict the search further, you can provide a start and end date. This will significantly improve performance. The data returned will be an an array of objects, with each containing meeting data. Only 20 meetings are returned per page, so this function may need to be called multiple times if there are more than that many results. If 20 meetings are returned, call this function again with the next pageIndex to ensure you get all results. IMPORTANT: The pageIndex is only valid for the exact same search parameters (aside from pageIndex). For example, if you provide a start / end date to fetch page 0, then you must provide the EXACT SAME start / end dates to fetch page 1.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
pageIndexnumberrequiredThe page index to fetch. Always start with page 0.
domainsarrayoptionalOptional array of domains to filter by.
endDatestringoptionalOptional ISO date string (yyyy-MM-dd) for latest date.
profilesarrayoptionalOptional array of profile IDs to filter by.
searchTermstringoptionalOptional search term to find related meetings.
startDatestringoptionalOptional ISO date string (yyyy-MM-dd) for earliest date.
tagsarrayoptionalOptional array of tag IDs to filter by.
circlebackmcp_searchsupportarticles#Search for support articles about Circleback to find relevant documentation and help content.1 param

Search for support articles about Circleback to find relevant documentation and help content.

NameTypeRequiredDescription
searchTermstringrequiredThe search term or query to find relevant support articles about Circleback. This is typically the user's question or keywords related to their issue.
circlebackmcp_searchtranscripts#Search meeting transcripts to find transcript chunks that match a given search term. If the user's question requires searching for multiple distinct search terms, you should call this function multiple times. The data returned will be an array of objects, with each containing the meeting ID, name, creator user ID, when it was created, the chunk matching the search term, and the start and end timestamps of the matching chunk. Search results can be further filtered by including tags, profiles (attendees), or domains. This function is useful to find relevant meetings where a search term was mentioned. We can find more details about those meetings using the ReadMeetings tool.5 params

Search meeting transcripts to find transcript chunks that match a given search term. If the user's question requires searching for multiple distinct search terms, you should call this function multiple times. The data returned will be an array of objects, with each containing the meeting ID, name, creator user ID, when it was created, the chunk matching the search term, and the start and end timestamps of the matching chunk. Search results can be further filtered by including tags, profiles (attendees), or domains. This function is useful to find relevant meetings where a search term was mentioned. We can find more details about those meetings using the ReadMeetings tool.

NameTypeRequiredDescription
intentstringrequiredThe reason why this tool call is being done.
searchTermstringrequiredThe search term to find relevant transcript chunks.
domainsarrayoptionalOptional array of domains to filter by.
profilesarrayoptionalOptional array of profile IDs to filter by.
tagsarrayoptionalOptional array of tag IDs to filter by.