| name | clerk |
| description | Clerk provides user authentication and user management solutions for modern web applications, including features like sign-in, sign-up, user profiles, and session handling out-of-the-box. Read and write Clerk data through One: users, organizations, apikeys, organizationinvitations, machines, oauthapplications and more, 206 actions with real parameter documentation. Use whenever the user asks to look something up in Clerk, create or update a record there, or build code against the Clerk API. |
Clerk through One
Clerk provides user authentication and user management solutions for modern web applications, including features like sign-in, sign-up, user profiles, and session handling out-of-the-box.
One exposes Clerk through four MCP tools. The table below carries real action ids from One's knowledge base, so for a common operation you can skip search and go straight to reading the action's parameters.
How to run an action
- Find the action in the table below, or call
search_one_platform_actions with platform clerk if it is not listed.
- Call
get_one_action_knowledge with the action id. Do this every time, including for actions in this table. The table gives you the id, not the parameters.
- Call
execute_one_action with parameters copied from that knowledge.
Never guess a parameter name, a body field, or an enum value. The knowledge has the real schema, and a guessed field is either a 400 or a silent write of the wrong thing.
Before you start
Call list_one_integrations once and confirm Clerk is connected. If it is missing, the user has not connected it: say so and point them at https://app.withone.ai rather than reaching for raw HTTP.
Each connection carries an access field. If it reports {"policy": "methods", "methods": ["GET"]} the agent is read-only here, so plan a read-only answer instead of attempting a write that will be refused.
Before a write
Creates, updates, deletes and sends land on a real Clerk account and cannot be recalled. State the action and the specific target in one line before the first write in a task, and let the user stop you. Reads need no confirmation.
Actions
Users
| Action | Method | Path | Action id |
|---|
| Count Users | GET | /users/count | conn_mod_def::GJ1L3NtHkXI::hDXsAQrkSa27qnqU1SvwQg |
| List Users | GET | /users | conn_mod_def::GJ1L4sXQ2AE::S0As9aD3QU63FtiTBpAA_w |
| Retrieve a User | GET | /users/{{userId}} | conn_mod_def::GJ1L5DdgkqE::UgwnohPiR-GpoHvFkZdB8A |
| Retrieve a User’s Billing Credit Balance | GET | /users/{{userId}}/billing/credits | conn_mod_def::GJ1L5VNrzXE::Lt02peI1TKOi8hdQNC-krQ |
| Retrieve a User’s OAuth Access Token (by Provider) | GET | /users/{{userId}}/oauth_access_tokens/{{provider}} | conn_mod_def::GJ1L53IyQ9Y::780xRf4tQOKl3lgbNVAz-w |
| Ban a User | POST | /users/{{userId}}/ban | conn_mod_def::GJ1L23UMYGY::mhmyjEQpRZi5-p5qdOpYgw |
| Ban Multiple Users | POST | /users/ban | conn_mod_def::GJ1L2_Z0Aow::KTsP3NrfRwSRqGVMIwXM2g |
| Create a New User | POST | /users | conn_mod_def::GJ1L3YJ_Mro::bJYRwmT6SzSMNudDD1LgDQ |
| Delete a User | DELETE | /users/{{userId}} | conn_mod_def::GJ1L3fJE1xk::0dn082cwTzKfBX8MW4EiCA |
| Delete a User’s Profile Image | DELETE | /users/{{userId}}/profile_image | conn_mod_def::GJ1L4Pa8ZH0::Ntixk43OSWK7smXUW6Lx0Q |
| Delete a User's TOTPs | DELETE | /users/{{userId}}/totp | conn_mod_def::GJ1L3-zGrL0::6nSaJaRxRSy_V-zmOoA9Jg |
| Delete a User's Web3 Wallet | DELETE | /users/{{userId}}/web3_wallets/{{web3WalletIdentificationId}} | conn_mod_def::GJ1L3u_jdW8::Rh2ykuVvQ2GuvovOHWyNwQ |
13 more Users actions are available through search.
Organizations
| Action | Method | Path | Action id |
|---|
| List Organizations | GET | /organizations | conn_mod_def::GJ1Lx0gBa9g::geQ-0cuORt6UR8EURFQPCw |
| Retrieve an Organization by ID or Slug | GET | /organizations/{{organizationId}} | conn_mod_def::GJ1LyEgtKt4::J3m8iIQuTsSsWHzOtSdDrQ |
| Retrieve an Organization’s Billing Subscription | GET | /organizations/{{organizationId}}/billing/subscription | conn_mod_def::GJ1LyNN0QYg::-moyZW32TFWqUHPDh11DAQ |
| Create an Organization | POST | /organizations | conn_mod_def::GJ1Lxawn9yU::pViwrnt9RbyIPqIuheOeUw |
| Delete an Organization | DELETE | /organizations/{{organizationId}} | conn_mod_def::GJ1LxkEYAfE::dsPqmM5UTFK5gkgGOuZ86w |
| Delete an Organization's Logo | DELETE | /organizations/{{organizationId}}/logo | conn_mod_def::GJ1LxraTy_c::vOpMvHqlTO2oqOhPLKeAuA |
| Merge an Organization’s Metadata | PATCH | /organizations/{{organizationId}}/metadata | conn_mod_def::GJ1Lx778EGU::DwfA2j-VSPG8cTr0P17Vkg |
| Update an Organization | PATCH | /organizations/{{organizationId}} | conn_mod_def::GJ1LyevcJEs::cpcVXdHMQMeG2-s2pETSuA |
| Upload an Organization Logo | PUT | /organizations/{{organizationId}}/logo | conn_mod_def::GJ1LymFCEoU::cFMw5PypQzSJfHqEEC6wAQ |
ApiKeys
| Action | Method | Path | Action id |
|---|
| Get an API Key by ID | GET | /api_keys/{{apiKeyId}} | conn_mod_def::GJ1LicorBBY::EE3ic8MMS02eWsgazMNL1A |
| Get an API Key's Secret | GET | /api_keys/{{apiKeyID}}/secret | conn_mod_def::GJ1Lim_JYw0::tnvlnz0dT8Gvm4u9_rKnTg |
| List API Keys (Filtered by Subject) | GET | /api_keys | conn_mod_def::GJ1Liy6cqMI::UjvoiaThQUqVY5T4qsfiFw |
| Create an API Key | POST | /api_keys | conn_mod_def::GJ1LiJPEnLM::bQvl_7ZtQISl-xSJyWt1Zw |
| Delete an API Key | DELETE | /api_keys/{{apiKeyId}} | conn_mod_def::GJ1LiSq3wRA::df4cSIahTXaAjQRT5CC7wA |
| Revoke an API Key | POST | /api_keys/{{apiKeyId}}/revoke | conn_mod_def::GJ1Li93ePzA::8d7jzmcLT4miqK60eVvqZA |
| Update an API Key | PATCH | /api_keys/{{apiKeyId}} | conn_mod_def::GJ1LjFXdM_w::pPQA4dC2SkyXJCg5FBqbFw |
| Verify an API Key | POST | /api_keys/verify | conn_mod_def::GJ1LjQKm7nU::ARSwC6udRjC_4CGBKG6LNA |
OrganizationInvitations
| Action | Method | Path | Action id |
|---|
| List a User’s Organization Invitations | GET | /users/{{userId}}/organization_invitations | conn_mod_def::GJ1L5hBJ2qM::-rGZU2IjSp2KyOKAcIITIg |
| List an Organization’s Invitations | GET | /organizations/{{organizationId}}/invitations | conn_mod_def::GJ1LuLMYq_U::Spg4Nt9JRPqJN9aIUXMmvw |
| List an Organization’s Pending Invitations | GET | /organizations/{{organizationId}}/invitations/pending | conn_mod_def::GJ1Lubf1Bq0::WOhyw8-yTi-8p5YY-kpftg |
| List Instance Organization Invitations | GET | /organization_invitations | conn_mod_def::GJ1LuT61TAA::dBy3WfIBTZm3z9hvascj1g |
| Retrieve an Organization Invitation | GET | /organizations/{{organizationId}}/invitations/{{invitationId}} | conn_mod_def::GJ1Lukw_HvU::V870EuQAQDOvZamlrZp14Q |
| Bulk Create Organization Invitations | POST | /organizations/{{organizationId}}/invitations/bulk | conn_mod_def::GJ1Lt1i_IGU::ijA9MOvRTj6zCt6Vh6h0aw |
| Create an Organization Invitation | POST | /organizations/{{organizationId}}/invitations | conn_mod_def::GJ1Lt__xnF8::r1G0r7KiSr-jbwQTt1_6oQ |
| Revoke an Organization Invitation | POST | /organizations/{{organizationId}}/invitations/{{invitationId}}/revoke | conn_mod_def::GJ1LuswPLzU::4ggTpKOpTX-TNtZjbxlnUw |
Machines
| Action | Method | Path | Action id |
|---|
| List Machines | GET | /machines | conn_mod_def::GJ1Lrcm2IYA::tPC9HQMDTMejooh-UIjs3A |
| Retrieve a Machine | GET | /machines/{{machineId}} | conn_mod_def::GJ1LrkgTDXI::cQsXrLgySKinRMVpV6_J_w |
| Retrieve a Machine’s Secret Key | GET | /machines/{{machineId}}/secret_key | conn_mod_def::GJ1LrsCikbE::JFEKEfABRKGbbKpGy0osYw |
| Create a Machine | POST | /machines | conn_mod_def::GJ1Lq6pfwpg::6VoXcacWSPaUvSpwBCKEYQ |
| Delete a Machine | DELETE | /machines/{{machineId}} | conn_mod_def::GJ1LrLMuXHA::fbqBCw8uRcWKDSZWPq6S8Q |
| Rotate a Machine’s Secret Key | POST | /machines/{{machineId}}/secret_key/rotate | conn_mod_def::GJ1LrzYb5Nw::SncuPSgwTr6J9W6XXwjypw |
| Update a Machine | PATCH | /machines/{{machineId}} | conn_mod_def::GJ1Lr8h7psM::UIFUaq3MTxqya6VdJjjvhA |
OauthApplications
| Action | Method | Path | Action id |
|---|
| List OAuth Applications for an Instance | GET | /oauth_applications | conn_mod_def::GJ1Lsos7Z9Y::k-ny1FMGQrCx-9ixoaVCQg |
| Retrieve an OAuth Application by ID | GET | /oauth_applications/{{oauthApplicationId}} | conn_mod_def::GJ1LswvKIIE::XZgGQ_NTS4-LzRpnJKprnQ |
| Create an OAuth Application | POST | /oauth_applications | conn_mod_def::GJ1LsYPQksg::cN1jouDbQbedPZtDczvUqg |
| Delete an OAuth Application | DELETE | /oauth_applications/{{oauthApplicationId}} | conn_mod_def::GJ1LsfIlcC4::34z5VprdRnaMFKVaThtRkg |
| Rotate an OAuth Application's Client Secret | POST | /oauth_applications/{{oauthApplicationId}}/rotate_secret | conn_mod_def::GJ1Ls3plpIU::TQMkZ4fSQ_WHGq7iwiD4sg |
| Update an OAuth Application | PATCH | /oauth_applications/{{oauthApplicationId}} | conn_mod_def::GJ1Ls_iM7JY::eMRncTw3Q8SxjeETJxSEiw |
| Verify an OAuth Application Access Token | POST | /oauth_applications/access_tokens/verify | conn_mod_def::GJ1LsRWhYPs::uDLkzinYRgGq1NNfJpKNmw |
OrganizationMemberships
| Action | Method | Path | Action id |
|---|
| List a User’s Organization Memberships | GET | /users/{{userId}}/organization_memberships | conn_mod_def::GJ1L5sj3ka0::Zs95qvXjSay9PEc8oejouQ |
| List an Organization’s Memberships | GET | /organizations/{{organizationId}}/memberships | conn_mod_def::GJ1LvHewPY8::vQk0ahTFRCi0wgFIBQMX4A |
| List Organization Memberships in an Instance | GET | /organization_memberships | conn_mod_def::GJ1LvP2pHBA::04ARMs_3Rvqc1Op70LK7bw |
| Create an Organization Membership (Add a User to an Organization) | POST | /organizations/{{organizationId}}/memberships | conn_mod_def::GJ1Lu0Vfa50::TUeVdKNhTUCQzmAR7l8XBA |
| Remove an Organization Member (Delete Organization Membership) | DELETE | /organizations/{{organizationId}}/memberships/{{userId}} | conn_mod_def::GJ1LvgqC7ts::hkpoquD1Qx23u_L387yL8w |
| Update an Organization Membership | PATCH | /organizations/{{organizationId}}/memberships/{{userId}} | conn_mod_def::GJ1LvoXTtTw::MTw3njtFRmeA5idf_0uhUg |
| Update an Organization Membership’s Metadata | PATCH | /organizations/{{organizationId}}/memberships/{{userId}}/metadata | conn_mod_def::GJ1LvZD7L44::neEHh4prSxaed02Jry7LAw |
OrganizationRoles
| Action | Method | Path | Action id |
|---|
| List Organization Roles | GET | /organization_roles | conn_mod_def::GJ1LwxCG7kQ::sx5L4fXmQMWLqgli86fArA |
| Retrieve an Organization Role | GET | /organization_roles/{{organizationRoleId}} | conn_mod_def::GJ1LxAcbw88::clYm7Mv7R9GR9SKzwVmVJA |
| Assign a Permission to an Organization Role | POST | /organization_roles/{{organizationRoleId}}/permissions/{{permissionId}} | conn_mod_def::GJ1LwayyMzE::9S31SBIIRZehwlP2CPLhYw |
| Create an Organization Role | POST | /organization_roles | conn_mod_def::GJ1LwiG3P44::WPAnfht2RGCSuzoXY45CJA |
| Delete an Organization Role | DELETE | /organization_roles/{{organizationRoleId}} | conn_mod_def::GJ1LwoyFzPU::-HAtaQbDQpCDhZNR4jdcyw |
| Remove a Permission from an Organization Role | DELETE | /organization_roles/{{organizationRoleId}}/permissions/{{permissionId}} | conn_mod_def::GJ1Lw5oHFOg::NhHp8jqWQZSDHHK3YC7m6w |
| Update an Organization Role | PATCH | /organization_roles/{{organizationRoleId}} | conn_mod_def::GJ1LxIwu5Eg::X3XJJk8AQYaOCY5nhFk47g |
RoleSets
| Action | Method | Path | Action id |
|---|
| List Role Sets | GET | /role_sets | conn_mod_def::GJ1L0B2NMb0::nx1uAFRHR5iO1Y1llgDNkg |
| Retrieve a Role Set | GET | /role_sets/{{roleSetKeyOrId}} | conn_mod_def::GJ1L0Y-F2Ts::oYzPvyzOQ9eN_c-eSnmUcg |
| Add Roles to a Role Set | POST | /role_sets/{{roleSetKeyOrId}}/roles | conn_mod_def::GJ1LzxjFehA::W8r1KSjvRG2Rb3CTcz9EXA |
| Create a Role Set | POST | /role_sets | conn_mod_def::GJ1Lz42xCw0::rpuFPTl6QiyJPmIBoIvZlQ |
| Replace a Role in a Role Set | POST | /role_sets/{{roleSetKeyOrId}}/roles/replace | conn_mod_def::GJ1L0KF6Vrg::33zJeQkTSQ6FB9BZkKOVwg |
| Replace a Role Set | POST | /role_sets/{{roleSetKeyOrId}}/replace | conn_mod_def::GJ1L0ROCpv0::e0ruV0tWRm-ikN9cCxoSCA |
| Update a Role Set | PATCH | /role_sets/{{roleSetKeyOrId}} | conn_mod_def::GJ1L0hS17iI::-JBMzFNmSVOG7gzKtuVdpw |
Templates
| Action | Method | Path | Action id |
|---|
| List Templates by Type | GET | /templates/{{templateType}} | conn_mod_def::GJ1LmnQ298w::Ovx6f_RGRWaWYrT8PuoJYw |
| Retrieve a Template | GET | /templates/{{templateType}}/{{slug}} | conn_mod_def::GJ1Lm3uDNo0::1k6u6kCBSRGqzkZpnF2PHw |
| Preview a Template’s Changes | POST | /templates/{{templateType}}/{{slug}}/preview | conn_mod_def::GJ1LmvIerO8::RwHILXwFT16O6xVyJwou1Q |
| Revert a Template | POST | /templates/{{templateType}}/{{slug}}/revert | conn_mod_def::GJ1LnBYPyuk::7PmA6EADS26713WE8dojcg |
| Toggle Delivery for a Template (by Type and Slug) | POST | /templates/{{templateType}}/{{slug}}/toggle_delivery | conn_mod_def::GJ1LnLp36ck::Ffd-O5snQoG4YGbrwGHhbA |
| Update (Upsert) a Template by Type and Slug | PUT | /templates/{{templateType}}/{{slug}} | conn_mod_def::GJ1LnTgNS_o::Y-GEwJGSRlOPgkrh4zzzCA |
Sessions
| Action | Method | Path | Action id |
|---|
| List Sessions | GET | /sessions | conn_mod_def::GJ1L1o7UvZY::fLjSzlMNRJiZmujLCfVU0g |
| Retrieve a Session | GET | /sessions/{{sessionId}} | conn_mod_def::GJ1L12Ansoc::rpqhj4LsRP2hOPRob2JDAA |
| Create a Session (Testing Only) | POST | /sessions | conn_mod_def::GJ1L1RfnuB4::N8GCs8wGTp-cOIMN3D_Npw |
| Create a Session Token (JWT) for a Session | POST | /sessions/{{sessionId}}/tokens | conn_mod_def::GJ1L1ZMqJHM::DomtoQ-zRMa6e_O0he7b3w |
| Refresh a Session | POST | /sessions/{{sessionId}}/refresh | conn_mod_def::GJ1L1vg4U5Y::LRhB2uZlRySVlKSO2jbRLA |
| Revoke a Session | POST | /sessions/{{sessionId}}/revoke | conn_mod_def::GJ1L19_Md1I::PjXhZDlbQo2GzLz51pWhJQ |
WaitlistEntries
| Action | Method | Path | Action id |
|---|
| List Waitlist Entries | GET | /waitlist_entries | conn_mod_def::GJ1L73g2_R0::hIRB00MdSgarctjyovc33w |
| Create a Waitlist Entry | POST | /waitlist_entries | conn_mod_def::GJ1L7Uruqd8::wyU7STckTMGsdHLNIlNeZg |
| Create Bulk Waitlist Entries | POST | /waitlist_entries/bulk | conn_mod_def::GJ1L7cV7hRQ::evBxouiGStafiIbAK1JC8g |
| Delete a Pending Waitlist Entry | DELETE | /waitlist_entries/{{waitlistEntryId}} | conn_mod_def::GJ1L7kLyMtk::Sl6M-smVTheTceVJ-nIAnQ |
| Invite a Waitlist Entry | POST | /waitlist_entries/{{waitlistEntryId}}/invite | conn_mod_def::GJ1L7vzVp7A::QWzyEHOGSvqAkGnWeQPlDA |
| Reject a Waitlist Entry | POST | /waitlist_entries/{{waitlistEntryId}}/reject | conn_mod_def::GJ1L7-xzWk8::bkF1fyNXQuis7g1GsPuWcA |
This lists 90 of 206 actions. For anything not here, call search_one_platform_actions with platform clerk. The full catalog is at https://www.withone.ai/knowledge/clerk.
When a call fails
The error comes from Clerk, not from One. A 400 or 422 means your parameters do not match the schema, so re-read the knowledge and fix the field. A 401 or 403 means the connection needs re-authorizing, which no retry will fix. A 404 means the id is not on this account. A 429 means slow down. Never retry a write more than once: the first attempt may have landed.
Full catalog: https://www.withone.ai/knowledge/clerk
Integration knowledge by One (withone.ai), licensed under One-Knowledge-1.0. Attribution must be preserved in derivative works.