Trainual API and MCP server Let your AI agent write your Trainual SOPs.

Subjects, topics, steps and assignments in your Trainual, built by your agent. Use it in ChatGPT, Claude or any AI agent over MCP, or in n8n, Make and scripts over REST.

  • Free 7-day trial, no card
  • Unofficial, not affiliated with Trainual
Trainual logo Trainual Cloud Browser

11 tools Read and write

Content and training

What can you automate in Trainual? Use an AI agent, a workflow or a script.

  • Turn notes into a draft subject

  • Add topics and steps

  • Change a policy in every step

  • Publish a finished subject

  • Assign onboarding to new hires

  • List who has not finished

Read-only MCP

Does Trainual have an MCP server or an API? Both, on Premium, and neither writes content.

Trainual has an official MCP server and a REST API, both on the Premium and Enterprise plans only (checked 28 Oct 2026). The MCP server only reads, and the API assigns training and manages users but cannot create, edit or publish a subject. Cotlet runs 11 Trainual tools hosted, over MCP for agents and REST for scripts, and does the writing.

  • Trainual's help center on its MCP server: "All MCP tools are read-only. Connected agents and apps can query your Trainual data, but they can't create, edit, or delete anything in Trainual." Tokens come from an Admin+ user and expire after 365 days.
  • On the API: "Content creation and editing aren't supported by the API yet." The v3 spec has GET routes for subjects, documents and pages and none that write them; content reads return published content only.
  • Zapier can invite, archive and assign subjects and roles on any plan. No Zapier action writes content, and n8n has no Trainual node.
Trainual MCP server, Trainual API and Cotlet compared
What you need Official MCPAPI v3Cotlet
Plans Premium, Enterprise Premium, Enterprise Any plan
Search subjects and read steps Yes Published only Yes, drafts too
Create a subject, topics and steps No No, "on our roadmap" Yes, as a draft
Edit a step, publish a subject No No Yes, after your OK
Assign a subject to people No Yes Yes, after your OK
Allowed by Trainual's terms Yes, official Yes, official Uses the web app

Checked 28 Oct 2026. Sources: Trainual Help: Trainual's API & Webhooks · Trainual Help: The Trainual MCP Server · Trainual Help: Create & Publish Subjects · Trainual Help: Integrations · Trainual API v3 reference · Zapier: Trainual integrations

Set up once

How does Cotlet connect to Trainual? One account, two ways to connect.

  1. 1Sign in to Trainual

    Use your own account in its Cotlet Cloud Browser.

  2. 2Choose MCP or REST

    Connect your agent or create a Cotlet API key.

  3. 3Run your workflow

    Ask your agent or send an HTTP request.

We never keep your Trainual password, and nothing your employees see changes until you approve it. Who can see your session

Any MCP client

Connect Trainual to your agent or workflow

Use MCP with your AI agent, or HTTP requests in n8n, Make, Zapier and scripts. Follow the MCP setup below or jump to the REST guide.

  1. 1

    Sign in to Trainual in a Cloud Browser. Make a Cotlet account, open Trainual in its Cloud Browser, log in with your usual Trainual login or SSO and press Enable for agents.

  2. 2

    Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as the MCP server or connector URL in your agent.

  3. 3

    Approve the connection. Chat apps send you to a Cotlet sign-in page. Code editors, n8n and scripts use an API key from the console.

One address, https://cotlet.dev/mcp/v1, serves Trainual and any other app you enable. You need no Trainual MCP token and no Admin+ role. If the Trainual tools are missing after you enable it, refresh the connector.

Claude
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect

Claude Code:
claude mcp add --transport http cotlet-trainual \
  https://cotlet.dev/mcp/v1 \
  --header "Authorization: Bearer $COTLET_API_KEY"
ChatGPT
Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth
Cursor
// ~/.cursor/mcp.json
{
  "mcpServers": {
    "cotlet-trainual": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
Codex
# ~/.codex/config.toml
[mcp_servers.cotlet-trainual]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY"
n8n
MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: trainual_read
Make, Zapier
Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: trainual_write
Scripts and HTTP

How to use the Trainual REST API

Create your Cotlet API key

Create a Cotlet API key with access to Trainual and its read operations. Store it as COTLET_API_KEY in your environment or automation platform's credential store.

Connect Trainual in Cotlet and enable it for agents. Account access: Your own Trainual account. Creating and editing content needs the Author permission or higher. You sign in in your own browser and keep your SSO or 2-step verification.

Make your first Trainual API request

REST
curl https://cotlet.dev/api/v1/trainual/subjects \
  -H "Authorization: Bearer $COTLET_API_KEY"

Read subjects and apply the operation limits

A successful REST call puts the tool output in result. This illustrative response excerpt omits call IDs, messages and credit details.

Illustrative response excerpt
{
  "status": "success",
  "app": "trainual",
  "tool": "list_subjects",
  "result": {
    "subjects": [
      {
        "subject_id": "sub_8f2a41",
        "title": "Opening checklist",
        "tab": "Processes",
        "status": "published"
      },
      {
        "subject_id": "sub_3c9d07",
        "title": "Refund policy",
        "tab": "Policies",
        "status": "unpublished"
      }
    ]
  }
}

Returns each subject with its ID, title, tab and status (published or unpublished). Subjects you cannot open with your Trainual role are not listed.

Use the ID with get_subject, create_topic and assign_subject.

Keep the same selection when continuing a list. Compare changed record values as well as identifiers when refreshing your destination.

Trainual workflows for agents and automations

Trainual workflows you configure
ToolConnect throughExample workflow
n8nHTTP RequestRead one subject with its topics and steps. Use get_subject in your configured learning report.
MakeHTTP > Make a requestRead the text of one step. Use get_step in your configured learning report.
Python or Node.jsREST APISee who has a subject assigned and whether they completed it. Use list_assignments in your configured learning report.

Send Authorization: Bearer <your Cotlet API key> in request headers. You configure the schedule, destination and record comparisons.

Cotlet reads Trainual; your workflow steps write to your chosen destination. These HTTP workflows do not require a native Cotlet connector or a prebuilt template.

Python and Node.js can use the same HTTP requests without an AI agent. Keep access keys in credentials, outside shared workflow exports.

The API and MCP reference lists operations and inputs. The REST API guide explains authentication, errors and approvals.

5 read, 6 write

Trainual API endpoints and MCP tools

Subjects, topics and steps7

Reads include drafts your role can open. Writing needs the Author permission or higher. Steps are text: no image, video or file uploads.

  • list_subjects Search the subjects in your Content page, with their status. read

    Returns each subject with its ID, title, tab and status (published or unpublished). Subjects you cannot open with your Trainual role are not listed. Use the ID with get_subject, create_topic and assign_subject.

    MCP calltrainual_read → list_subjects

    REST endpointGET https://cotlet.dev/api/v1/trainual/subjects

    Parameters

    Parameters: list_subjects
    NameTypeDescription
    query string string Words to search in subject titles.
    tab string string Content tab to list: Company, Policies or Processes.

    Example response

    {
      "subjects": [
        {
          "subject_id": "sub_8f2a41",
          "title": "Opening checklist",
          "tab": "Processes",
          "status": "published"
        },
        {
          "subject_id": "sub_3c9d07",
          "title": "Refund policy",
          "tab": "Policies",
          "status": "unpublished"
        }
      ]
    }
  • get_subject Read one subject with its topics and steps. read

    Returns the subject title and status, then its topics in the order the app shows them, each with its steps and their titles. Each topic shows whether it is marked Finished. Step text comes from get_step, so a long subject stays short here.

    MCP calltrainual_read → get_subject

    REST endpointGET https://cotlet.dev/api/v1/trainual/subjects/{subject_id}

    Parameters

    Parameters: get_subject
    NameTypeDescription
    subject_id string required string Subject ID from list_subjects.

    Example input

    {
      "subject_id": "subject_8c41d2"
    }

    Example response

    {
      "subject_id": "sub_8f2a41",
      "title": "Opening checklist",
      "status": "published",
      "topics": [
        {
          "topic_id": "top_11a",
          "title": "Before doors open",
          "finished": true,
          "steps": [
            {
              "step_id": "stp_501",
              "title": "Turn on the lights"
            },
            {
              "step_id": "stp_502",
              "title": "Count the till"
            }
          ]
        },
        {
          "topic_id": "top_11b",
          "title": "Opening the register",
          "finished": false,
          "steps": [
            {
              "step_id": "stp_503",
              "title": "Log in to the POS"
            }
          ]
        }
      ]
    }
  • get_step Read the text of one step. read

    Returns the step title and its text as plain text with simple formatting. Images, video and embeds appear as links, not files. Use it before update_step so the agent edits what is there.

    MCP calltrainual_read → get_step

    REST endpointGET https://cotlet.dev/api/v1/trainual/steps/{step_id}

    Parameters

    Parameters: get_step
    NameTypeDescription
    step_id string required string Step ID from get_subject or get_topic.

    Example input

    {
      "step_id": "step_8c41d2"
    }

    Example response

    {
      "step_id": "stp_502",
      "title": "Count the till",
      "body": "Count the cash drawer against the float sheet. Write the total on the sheet and sign it."
    }
  • create_subject Create a new subject as a draft. write

    Creates the subject as a draft, as the Create subject button does. Nobody sees a draft, so this call reaches no one and needs no confirmation. Returns the subject ID. You need the Author permission or higher.

    MCP calltrainual_write → create_subject

    REST endpointPOST https://cotlet.dev/api/v1/trainual/subjects

    Parameters

    Parameters: create_subject
    NameTypeDescription
    title string required string Subject title.
    tab string string Content tab: Company, Policies or Processes.

    Example input

    {
      "title": "title"
    }

    Example response

    {
      "subject_id": "sub_a40e19",
      "title": "Closing checklist",
      "tab": "Processes",
      "status": "draft"
    }
  • create_topic Add a topic under a subject. write

    Adds the topic in a drafted state under the subject, as the app does. On a published subject the new topic stays unpublished until the subject is published again. It reaches no one, so it needs no confirmation.

    MCP calltrainual_write → create_topic

    REST endpointPOST https://cotlet.dev/api/v1/trainual/subjects/{subject_id}/topics

    Parameters

    Parameters: create_topic
    NameTypeDescription
    subject_id string required string Subject ID from list_subjects.
    title string required string Topic title.

    Example input

    {
      "subject_id": "subject_8c41d2",
      "title": "title"
    }

    Example response

    {
      "topic_id": "top_2b7",
      "subject_id": "sub_a40e19",
      "title": "Locking up",
      "status": "draft"
    }
  • add_step Add a step with its text to a topic. write

    Adds the step at the end of the topic, as the + Add Step button does. Text only: images, video and files are not uploaded. The step is part of a draft topic, so no one sees it before you publish. It needs no confirmation.

    MCP calltrainual_write → add_step

    REST endpointPOST https://cotlet.dev/api/v1/trainual/topics/{topic_id}/steps

    Parameters

    Parameters: add_step
    NameTypeDescription
    topic_id string required string Topic ID from get_subject.
    title string required string Step title.
    body string required string Step text, plain text with line breaks.

    Example input

    {
      "topic_id": "top_2b7",
      "title": "Set the alarm",
      "body": "Arm the alarm panel by the back door. You have 60 seconds to leave."
    }

    Example response

    {
      "step_id": "stp_620",
      "topic_id": "top_2b7",
      "title": "Set the alarm",
      "position": 3
    }
  • update_step Replace the title or text of an existing step. writeasks first

    Replaces the step text, so call get_step first and send the full new text. If the subject is published, employees see the change when it saves. The agent reports the old and the new text. By default you confirm each call; you can switch that off for this tool.

    MCP calltrainual_write → update_step

    REST endpointPATCH https://cotlet.dev/api/v1/trainual/steps/{step_id}

    Parameters

    Parameters: update_step
    NameTypeDescription
    step_id string required string Step ID from get_subject or get_topic.
    title string string New title. Omit to keep it.
    body string string New text. It replaces the whole text of the step.

    Example input

    {
      "step_id": "step_8c41d2"
    }

    Example response

    {
      "step_id": "stp_502",
      "title": "Count the till",
      "updated": true
    }

Publishing and assignments4

Publish as is or finish every topic first, the two choices Trainual's Publish dialog gives. Assigned people see the subject once it is published.

  • publish_subject Publish a subject so assigned people can open it. writeasks first

    Does what the Publish button does. With as_is, topics not marked Finished stay out and publish later when they are marked Finished. With finish_all, everything goes out. People already assigned the subject can then open it. By default you confirm each call; you can switch that off for this tool.

    MCP calltrainual_write → publish_subject

    REST endpointPOST https://cotlet.dev/api/v1/trainual/subjects/{subject_id}/publish

    Parameters

    Parameters: publish_subject
    NameTypeDescription
    subject_id string required string Subject ID from list_subjects.
    mode string required string as_is publishes only topics marked Finished. finish_all marks every unfinished topic and test Finished, then publishes.

    Example input

    {
      "subject_id": "subject_8c41d2",
      "mode": "mode"
    }

    Example response

    {
      "subject_id": "sub_a40e19",
      "status": "published",
      "topics_published": 2,
      "topics_left_unpublished": 0
    }
  • list_users Find people in your Trainual account. read

    Returns each user with ID, name, email and job title. Archived users are left out. Use the IDs with assign_subject and list_assignments.

    MCP calltrainual_read → list_users

    REST endpointGET https://cotlet.dev/api/v1/trainual/users

    Parameters

    Parameters: list_users
    NameTypeDescription
    query string string Part of a name or email.

    Example response

    {
      "users": [
        {
          "user_id": "usr_7a1",
          "name": "Dana Whitfield",
          "email": "dana@example.com",
          "job_title": "Shift lead"
        },
        {
          "user_id": "usr_7a2",
          "name": "Eli Okafor",
          "email": "eli@example.com",
          "job_title": "Barista"
        }
      ]
    }
  • assign_subject Assign a subject to people. writeasks first

    Assigns the subject to each user, so it shows in their training. Users who already have it are skipped and listed. Returns who was assigned. By default you confirm each call; you can switch that off for this tool.

    MCP calltrainual_write → assign_subject

    REST endpointPOST https://cotlet.dev/api/v1/trainual/subjects/{subject_id}/assign

    Parameters

    Parameters: assign_subject
    NameTypeDescription
    subject_id string required string Subject ID from list_subjects.
    user_ids array required array User IDs from list_users.

    Example input

    {
      "subject_id": "subject_8c41d2",
      "user_ids": "user ids"
    }

    Example response

    {
      "subject_id": "sub_a40e19",
      "assigned": [
        "usr_7a1",
        "usr_7a2"
      ],
      "skipped": []
    }
  • list_assignments See who has a subject assigned and whether they completed it. read

    Returns one row per user and subject with the completion status Trainual shows. Pass subject_id to see a whole team on one subject, or user_id for one person. You see only people your role can see.

    MCP calltrainual_read → list_assignments

    REST endpointGET https://cotlet.dev/api/v1/trainual/assignments

    Parameters

    Parameters: list_assignments
    NameTypeDescription
    subject_id string string Only this subject. Omit for all assignments you can see.
    user_id string string Only this user, from list_users.

    Example response

    {
      "assignments": [
        {
          "user_id": "usr_7a1",
          "name": "Dana Whitfield",
          "subject_id": "sub_8f2a41",
          "subject": "Opening checklist",
          "status": "completed"
        },
        {
          "user_id": "usr_7a2",
          "name": "Eli Okafor",
          "subject_id": "sub_8f2a41",
          "subject": "Opening checklist",
          "status": "not completed"
        }
      ]
    }
Encrypted, revocable

Who can see my Trainual session, and how do I revoke it?

  • What we store

    Your signed-in Trainual profile, AES-256-GCM encrypted, in Finland. No password.

  • What your agent gets

    The 11 Trainual tools. No cookie, no Trainual token.

  • What the session sees

    The subjects, people and completions your Trainual role can open.

  • What no tool touches

    Billing, account settings, permissions, SSO, API and MCP tokens.

  • If Trainual signs you out

    Your agent gets a link and you log in again. We never log in for you.

  • How to cut access

    Disable Trainual for agents, reset the browser or delete the key.

Edits show under your name in Trainual's activity and version history, as if you made them. The Cotlet site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results); there is no SOC 2 report or third-party pentest yet.

Account risk

Is it against Trainual's terms? Account safety The terms ban bots that extract content.

"Use automated tools (e.g. bots, scrapers) to extract content from any part of the Service."
Trainual Terms of Service, section 4.1(b), effective 15 Mar 2026

The clause names extracting content, and Cotlet's reads do read content, so treat it as a risk. Section 3(e) lets Trainual suspend access without notice if it believes the terms were broken. The official MCP server and API are the routes the terms leave clear, and neither writes content. We found no public case of a Trainual account closed for automation (checked 28 Oct 2026).

How we keep your account looking like you

  • Your own Trainual login, signed in by you
  • One Cloud Browser with its own IP and cookies
  • Step edits, publishing and assigning wait for your OK
  • No tool deletes content or changes permissions
  • If Trainual objects, we pause the Trainual tools for everyone within 24 h

Trainual's API allows 20 requests a second per account. Your agent works far slower than that, one step at a time, like a person in the editor.

Tested every 12 h

What happens when Trainual changes? We update the tool; your prompts stay the same.

between tests of the Trainual reads and drafts
12 h
between tests of writes your employees would see
24 h
for a call to a Trainual tool paused for repair
$0

Trainual updated its API on 10 Jul 2026 and ends the old version on 31 Dec 2026; the web editor changes too. When a button or menu moves, we change the tool, and your prompts keep working. status.cotlet.dev watches the site, console and API every 3 minutes.

3 tools ask first

Approvals, undo and mistakes Drafts run at once; what employees see waits for you.

  1. 01 Drafts the subject Title, topics and steps from your notes, unpublished.
  2. 02 Shows you the draft Reads it back with get_subject for you to check.
  3. 03 Waits for your OK Publish and assign show up in your Cotlet console.
  4. 04 Reports back Topics published, people assigned, anyone skipped.
Which Trainual actions can be undone
ActionUndo
Create a subject, topic or stepDelete it in Trainual; nobody saw a draft
Edit a stepVersion history: 30 days on Core, 90 on Pro, unlimited on Premium
Publish a subjectSet it back to Unpublished
Assign a subjectUnassign it; the person may have seen it

3 of 11 tools ask first: update_step, publish_subject and assign_subject. Reads and drafts run at once, since a draft reaches nobody. Turn the wait off per tool for a scheduled run.

Read a drafted policy before you publish it. Trainual's terms put AI text at your own risk, and the steps carry your name.

MCP call
{
  "name": "add_step",
  "arguments": {
    "topic_id": "top_2b7",
    "title": "Set the alarm",
    "body": "Arm the alarm panel by the back door. You have 60 seconds to leave."
  }
}
REST
curl -X POST https://cotlet.dev/api/v1/trainual/topics/top_2b7/steps \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Set the alarm","body":"Arm the alarm panel by the back door. You have 60 seconds to leave."}'
Response
{
  "step_id": "stp_620",
  "topic_id": "top_2b7",
  "title": "Set the alarm",
  "position": 3
}

Scripts and cron jobs reach the same tools over REST at /api/v1/trainual, one key, one price. A write your Trainual role cannot make, such as add_step without Author permission, fails and costs nothing. The tools table lists the REST path of each tool.

Pay per call

How much does the Trainual MCP server cost?

About $16 a monthfor a business of about 40 people that adds a subject a week, 2,680 credits. Trainual bills your plan as before.

A month of Trainual jobs for a business of about 40 people, in credits
JobCallsCredits
Notes into a draft subject: 3 topics, 12 steps, weekly17 × 4680
Policy change across 6 steps, twice a month11 × 2220
Publish the finished subject, weekly2 × 480
Assign onboarding to new hires, weekly3 × 4120
Friday list of incomplete training2 × 480
Cloud Browser, 30 days1,500
Total2,680
  • Free 7-day trial, no card
  • 10 credits per successful call, MCP or REST
  • 50 credits a day for the Cloud Browser
  • Works on Core and Pro, no Premium needed

The month is our example. Trainual's average contract is about $4.1K a year (Getlatka, Oct 2024), and most reviewers on G2 work at 50 people or fewer. Trainual no longer shows prices; third-party sites list Core at $249 and Premium at $399 a month billed yearly for 10 seats. Dollars at the $29 pack rate.

Cotlet credit packs: price, credits and calls at 10 credits each
Credits Price, one time Calls at 10 credits Per 1,000 credits
5,000 $29 500 $5.80
15,000 $79 1,500 $5.27
32,000 $149 3,200 $4.66
60,000 $249 6,000 $4.15

Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.

Other options

Trainual MCP server on GitHub, Zapier or hosted: which to use Nothing else writes content.

Other Trainual MCP servers and tools, checked 28 Oct 2026
OptionWhat it doesWhere it stops
Trainual MCP serverOfficial, mcp.trainual.com: searches content and reads users, groups, responsibilities, assignments and profile documents.Read-only, Premium and Enterprise, Admin+ token that expires after 365 days.
Trainual API v3Official REST: users, groups, responsibilities, assignments, completions, activities and webhooks.Content is view-only and published-only; you write and host the code.
ZapierTriggers on completions and new users; invite, archive, assign subjects and roles.No content action at all.
GitHubNo community Trainual MCP server or CLI found. Trainual's own trainual/tiptap-collaboration-mcp (11 stars) talks to Tiptap, not to Trainual data.Nothing to run.

On Premium or Enterprise, the official MCP server answers questions from your training for free, and the API or Zapier can assign it. For drafting subjects, editing steps and publishing on any plan, Cotlet works in your own login.

EU company, since 2019

Who runs Cotlet A company you can look up.

Cotlet belongs to Take Group sp. z o.o., a software company registered in Poland, EU (VAT PL6342984273), trading since 2019. Its founders are Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Write to contact@cotlet.dev about the Trainual tools.

Trainual API and MCP: questions

How do I get access?

Sign up free at https://cotlet.dev, open Trainual under Integrations in the console and log in to Trainual in its Cloud Browser. The trial starts with your first app, with no card.

How do I connect Trainual to ChatGPT or Claude?

Sign up at cotlet.dev, log in to Trainual once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your Trainual account through Cotlet, in their phone apps too.

What can ChatGPT do in Trainual?

With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in Trainual: turn a process into a Trainual subject; update a policy across steps; assign onboarding to new hires. You ask in plain words, and anything that reaches other people waits for your OK first.

Do I need a Premium or Enterprise plan?

Trainual's own MCP server and its content endpoints need a Premium or Enterprise training plan, and tokens come from an Admin+ user (checked 28 Oct 2026). Cotlet works in your signed-in account, so it depends on your role: creating and editing content needs the Author permission or higher. Your plan still decides which features the app shows you.

Can my agent write whole subjects?

Yes, as text. It creates a subject as a draft, adds topics and steps, and you publish when you are happy. Images, video and file uploads are not covered. Trainual also has its own Smart Outline and Compose AI tools inside the editor.

Should I use Trainual's own MCP server instead?

Use it if you are on Premium or Enterprise and only want answers from published training: it is official and costs nothing extra. It cannot draft, edit, publish or assign. You can connect both to the same agent: the official one for search, Cotlet for the writing.

Does Trainual have webhooks?

Yes, on Premium and Enterprise: up to 10 per user, for events such as a completed subject, published content or an archived user. Cotlet sends no events, so run your agent on a schedule, for example a weekly list_assignments.

Is the MCP server different from the REST API?

Only the way in differs. Both carry the same 11 tools, inputs and answers, with one API key and one price. Agents use MCP; scripts and HTTP steps use REST.

Is Cotlet affiliated with Trainual?

No. Cotlet is independent and not affiliated with Trainual.

Can I use the Trainual API without an AI agent?

Yes. Call Cotlet's REST API from a script or an HTTP step in n8n, Make or Zapier with your Cotlet key. MCP is the alternative for AI agents; you do not need to connect an agent to use REST.

Give your agent access to Trainual.

Free 7-day trial with 2,000 credits, no card needed.