---
title: "Stytch MCP server for AI agents - actionlake"
description: "Give Claude 184 Stytch actions through one MCP server: members, users, B2B passwords. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/stytch
updated: 2026-10-23
---

Connectors · Identity & security

# Stytch MCP server for AI agents.

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

[Connect Stytch free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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: "stytch.fraud_rules.list",
  intent: "check which Stytch account is connected"
}
# List fraud rules · read · 1 upstream call
```

- 184 actions in one signed file
- 46 read look, never change
- 100 write create and update
- 38 wait for a yes destructive, confirmed first

Set up

## Connect Stytch 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 Stytch.
   Username and secret. 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.
   - `project_id` Stytch project ID (Dashboard > Project settings > API keys), e.g. project-live-… or project-test-…
   - `secret` Stytch project secret from the same API keys page
   - `environment` Your Stytch environment
   ```
   account { op: "connections.requirements", service: "stytch" }
   # 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: "stytch.fraud_rules.list" }
   # list fraud rules · read · 1 upstream call
   check { action: "stytch.users.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Stytch at a glance

**Sign-in**

Username and secret. 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**

`project_id` `secret`

**Setup fields**

`environment`

**Limits we pace to**

100 calls a second, per connection

**API covered**

Stytch API 2.1.1 (OpenAPI 3.0.3, stytchauth/stytch-openapi), at your region's stytch.com address, set when you connect

**Built from**

Stytch's documentation, read 23 October 2026[OpenAPI spec (GitHub)](https://github.com/stytchauth/stytch-openapi/blob/ec16a0c52c21e2be8e28c1e75df7afd9d227fc55/openapi.yml) [stytch.com](https://stytch.com/docs/api)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

30 of 46 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

3, so ask can line Stytch up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Stytch.

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

- **46** read look, never change
- **100** write create and update
- **38** destructive wait for a confirmation

1. ### Members
   21
   10 read · 5 write · 6 destructive
   Search members across organizations · Create a member · List a member's Connected Apps · Get a member by ID without an organization ID
2. ### Users
   17
   3 read · 3 write · 11 destructive
   Create a user · Get a user · Update a user · Delete a user
3. ### B2B passwords
   11
   1 read · 10 write · 0 destructive
   Authenticate a member password · Authenticate a password for discovery · Start a discovery password reset by email · Migrate a member password hash
4. ### SSO connections
   11
   1 read · 7 write · 3 destructive
   List an organization's SSO connections · Delete an SSO connection · Create an external SSO connection · Create an OIDC SSO connection
5. ### Organizations
   9
   5 read · 2 write · 2 destructive
   Search organizations · Create an organization · List Connected Apps used by an organization · Get an organization
6. ### B2B sessions
   8
   2 read · 5 write · 1 destructive
   Attest a member session from a trusted token · Exchange a member session for another organization · Exchange a Connected Apps access token for a member session · List a member's active sessions
7. ### Connected app clients
   8
   2 read · 2 write · 4 destructive
   Create a Connected App client · Get a Connected App client · Search Connected App clients · Update a Connected App client
8. ### M2M clients
   8
   2 read · 2 write · 4 destructive
   Create an M2M client · Get an M2M client · Update an M2M client · Delete an M2M client

**27 more areas · 91 actions**

- Passwords **8**
- Scim connections **8**
- Otps **7**
- Sessions **7**
- B2B otps **6**
- Magic links **6**
- Webauthn **6**
- B2B magic links **5**
- Totps **4**
- B2B rbac **3**
- B2B recovery codes **3**
- B2B totps **3**
- Discovery **3**
- B2B idp oauth **2**
- B2B oauth **2**
- Crypto wallets **2**
- Fraud rules **2**
- Fraud verdict reasons **2**
- Idp oauth **2**
- Oauth **2**
- Project **2**
- B2B impersonation **1**
- Fraud email **1**
- Fraud fingerprints **1**
- Impersonation **1**
- Rbac **1**
- SSO **1**

Top actions

## The Stytch API, shaped for agents.

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

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `stytch.users.create` Create a user | Create a user. | write | `identity.user.create` 262 connectors |
| `stytch.users.get` Get a user | Get a user. | read | `identity.user.get` 399 connectors |
| `stytch.connected_app_clients.create` Create a Connected App client | Create a Connected App client. | write | `identity.application.create` 27 connectors |
| `stytch.connected_app_clients.get` Get a Connected App client | Get a Connected App client. | read | `identity.application.get` 33 connectors |
| `stytch.m2m_clients.create` Create an M2M client | Create an M2M client. | write | `identity.service_account.create` 32 connectors |
| `stytch.sso_connections.list` List an organization's SSO connections | List an organization's SSO connections. | read | `identity.identity_provider.list` 22 connectors |
| `stytch.sessions.list` List a user's active sessions | List a user's active sessions. | read | `identity.user_session.list` 16 connectors |
| `stytch.m2m_clients.get` Get an M2M client | Get an M2M client. | read | `identity.service_account.get` 28 connectors |
| `stytch.sso_connections.delete` Delete an SSO connection | Delete an SSO connection. | destructive | `identity.identity_provider.delete` 19 connectors |
| `stytch.sessions.revoke` Revoke a session | Revoke a session. | destructive | `identity.user_session.revoke` 17 connectors |
| `stytch.members.search` Search members across organizations | Search members across organizations. | read | this connector |
| `stytch.organizations.search` Search organizations | Search organizations. | read | this connector |

Try it

## Prompts to paste into Claude.

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

1. Read read
   List the companies in Stytch and flag likely duplicates by name or domain.
   calls `stytch.organizations.search`
2. Write write
   Create a user in Stytch. Show me exactly what you will send before you save it.
   calls `stytch.users.create`
3. Across systems read
   Which Stytch companies have invoices in ConnectWise PSA, and how many each?
   calls `stytch.organizations.search` `connectwise_manage.invoices.list`

Across your systems

## Stytch, joined to the rest of your business.

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

- Which Stytch companies have invoices in ConnectWise PSA, and how many each?
  `stytch.organizations.search` + `connectwise_manage.invoices.list`, on `crm.company` · [ConnectWise PSA](https://actionlake.com/connectors/connectwise-psa)
- Which Stytch companies have invoices in NetSuite, and how many each?
  `stytch.organizations.search` + `netsuite.views.invoices`, on `crm.company` · [NetSuite](https://actionlake.com/connectors/netsuite)

Also mapped by other connectors `identity.user` **517** `crm.company` **227** `identity.application` **20**

ask

```
ask {
  intent: "which Stytch companies have invoices in ConnectWise PSA, and how many each",
  steps: [
    { action: "stytch.organizations.search", 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 Stytch

## Destructive actions wait for a yes.

38 Stytch actions are destructive. The first 10:

- Delete a user `stytch.users.delete`
- Delete a Connected App client `stytch.connected_app_clients.delete`
- Delete an M2M client `stytch.m2m_clients.delete`
- Delete an SSO connection `stytch.sso_connections.delete`
- Revoke a session `stytch.sessions.revoke`
- Delete a member `stytch.members.delete`
- Delete a user's TOTP registration `stytch.users.delete_totp`
- Delete a user's email `stytch.users.delete_email`
- Revoke a member session `stytch.b2b_sessions.revoke`
- Delete a member's TOTP registration `stytch.members.delete_totp`

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.

do stytch.users.delete confirm_policy: **human**

Delete a user?

**intent:** the user asked me to delete a user

run suspended · waiting for a named person · key _stytch-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "stytch-agent",
  allowed_actions: ["stytch.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "stytch.users.delete", approver: "lead@example.com" },
    { match: "stytch.connected_app_clients.delete", approver: "lead@example.com" },
    { match: "stytch.m2m_clients.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Stytch only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Stytch costs on actionlake.

Every Stytch action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Stytch 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.

- 1 upstream call per action all 184 Stytch actions
- 184 actions page each page of a long list is one call
- 30 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Stytch action.

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

**Members 21**

- `stytch.members.create` Create a member write
- `stytch.members.dangerously_get` Get a member by ID without an organization ID read
- `stytch.members.delete` Delete a member destructive
- `stytch.members.delete_external_id` Delete a member's external ID destructive
- `stytch.members.delete_mfa_phone_number` Delete a member's MFA phone number destructive
- `stytch.members.delete_password` Delete a member's password destructive
- `stytch.members.delete_totp` Delete a member's TOTP registration destructive
- `stytch.members.get` Get a member read
- `stytch.members.get_github_oauth_tokens` Get a member's GitHub OAuth tokens read
- `stytch.members.get_google_oauth_tokens` Get a member's Google OAuth tokens read
- `stytch.members.get_hubspot_oauth_tokens` Get a member's HubSpot OAuth tokens read
- `stytch.members.get_microsoft_oauth_tokens` Get a member's Microsoft OAuth tokens read
- `stytch.members.get_oidc_providers` Get a member's OIDC provider tokens read
- `stytch.members.get_slack_oauth_tokens` Get a member's Slack OAuth tokens read
- `stytch.members.list_connected_apps` List a member's Connected Apps read
- `stytch.members.reactivate` Reactivate a member write
- `stytch.members.revoke_connected_app` Revoke a member's Connected App access destructive
- `stytch.members.search` Search members across organizations read
- `stytch.members.start_email_update` Start a member email update write
- `stytch.members.unlink_retired_email` Unlink a member's retired email write
- `stytch.members.update` Update a member write

**Users 17**

- `stytch.users.create` Create a user write
- `stytch.users.delete` Delete a user destructive
- `stytch.users.delete_biometric_registration` Delete a user's biometric registration destructive
- `stytch.users.delete_crypto_wallet` Delete a user's crypto wallet destructive
- `stytch.users.delete_email` Delete a user's email destructive
- `stytch.users.delete_external_id` Delete a user's external ID destructive
- `stytch.users.delete_oauth_registration` Delete a user's OAuth registration destructive
- `stytch.users.delete_password` Delete a user's password destructive
- `stytch.users.delete_phone_number` Delete a user's phone number destructive
- `stytch.users.delete_totp` Delete a user's TOTP registration destructive
- `stytch.users.delete_webauthn_registration` Delete a user's WebAuthn registration destructive
- `stytch.users.exchange_primary_factor` Exchange a user's primary factor write
- `stytch.users.get` Get a user read
- `stytch.users.list_connected_apps` List a user's Connected Apps read
- `stytch.users.revoke_connected_app` Revoke a user's Connected App access destructive
- `stytch.users.search` Search users read
- `stytch.users.update` Update a user write

**B2B passwords 11**

- `stytch.b2b_passwords.authenticate` Authenticate a member password write
- `stytch.b2b_passwords.authenticate_discovery` Authenticate a password for discovery write
- `stytch.b2b_passwords.discovery_reset_by_email` Reset a discovery password by email token write
- `stytch.b2b_passwords.discovery_reset_by_email_start` Start a discovery password reset by email write
- `stytch.b2b_passwords.migrate` Migrate a member password hash write
- `stytch.b2b_passwords.require_reset_by_email` Require a member password reset by email write
- `stytch.b2b_passwords.reset_by_email` Reset a member password by email token write
- `stytch.b2b_passwords.reset_by_email_start` Start a member password reset by email write
- `stytch.b2b_passwords.reset_by_existing_password` Reset a member password using the existing password write
- `stytch.b2b_passwords.reset_by_session` Reset a member password using a session write
- `stytch.b2b_passwords.strength_check` Check a B2B password's strength read

**SSO connections 11**

- `stytch.sso_connections.create_external` Create an external SSO connection write
- `stytch.sso_connections.create_oidc` Create an OIDC SSO connection write
- `stytch.sso_connections.create_saml` Create a SAML SSO connection write
- `stytch.sso_connections.delete` Delete an SSO connection destructive
- `stytch.sso_connections.delete_saml_encryption_private_key` Delete a SAML encryption private key destructive
- `stytch.sso_connections.delete_saml_verification_certificate` Delete a SAML verification certificate destructive
- `stytch.sso_connections.list` List an organization's SSO connections read
- `stytch.sso_connections.update_external` Update an external SSO connection write
- `stytch.sso_connections.update_oidc` Update an OIDC SSO connection write
- `stytch.sso_connections.update_saml` Update a SAML SSO connection write
- `stytch.sso_connections.update_saml_by_url` Update a SAML SSO connection from a metadata URL write

**Organizations 9**

- `stytch.organizations.create` Create an organization write
- `stytch.organizations.delete` Delete an organization destructive
- `stytch.organizations.delete_external_id` Delete an organization's external ID destructive
- `stytch.organizations.get` Get an organization read
- `stytch.organizations.get_connected_app` Get a Connected App's use by an organization read
- `stytch.organizations.get_metrics` Get organization metrics read
- `stytch.organizations.list_connected_apps` List Connected Apps used by an organization read
- `stytch.organizations.search` Search organizations read
- `stytch.organizations.update` Update an organization write

**B2B sessions 8**

- `stytch.b2b_sessions.attest` Attest a member session from a trusted token write
- `stytch.b2b_sessions.authenticate` Authenticate a member session write
- `stytch.b2b_sessions.exchange` Exchange a member session for another organization write
- `stytch.b2b_sessions.exchange_access_token` Exchange a Connected Apps access token for a member session write
- `stytch.b2b_sessions.get_jwks` Get the B2B session JWKS read
- `stytch.b2b_sessions.list` List a member's active sessions read
- `stytch.b2b_sessions.migrate` Migrate a member session from an external OIDC provider write
- `stytch.b2b_sessions.revoke` Revoke a member session destructive

**Connected app clients 8**

- `stytch.connected_app_clients.create` Create a Connected App client write
- `stytch.connected_app_clients.delete` Delete a Connected App client destructive
- `stytch.connected_app_clients.get` Get a Connected App client read
- `stytch.connected_app_clients.rotate_secret` Complete a Connected App client secret rotation destructive
- `stytch.connected_app_clients.rotate_secret_cancel` Cancel a Connected App client secret rotation destructive
- `stytch.connected_app_clients.rotate_secret_start` Start a Connected App client secret rotation destructive
- `stytch.connected_app_clients.search` Search Connected App clients read
- `stytch.connected_app_clients.update` Update a Connected App client write

**M2M clients 8**

- `stytch.m2m_clients.create` Create an M2M client write
- `stytch.m2m_clients.delete` Delete an M2M client destructive
- `stytch.m2m_clients.get` Get an M2M client read
- `stytch.m2m_clients.rotate_secret` Complete an M2M client secret rotation destructive
- `stytch.m2m_clients.rotate_secret_cancel` Cancel an M2M client secret rotation destructive
- `stytch.m2m_clients.rotate_secret_start` Start an M2M client secret rotation destructive
- `stytch.m2m_clients.search` Search M2M clients read
- `stytch.m2m_clients.update` Update an M2M client write

**Passwords 8**

- `stytch.passwords.authenticate` Authenticate a password write
- `stytch.passwords.create` Create a user with a password write
- `stytch.passwords.migrate` Migrate a password hash write
- `stytch.passwords.reset_by_email` Reset a password by email token write
- `stytch.passwords.reset_by_email_start` Start a password reset by email write
- `stytch.passwords.reset_by_existing_password` Reset a password using the existing password write
- `stytch.passwords.reset_by_session` Reset a password using a session write
- `stytch.passwords.strength_check` Check a password's strength read

**Scim connections 8**

- `stytch.scim_connections.create` Create a SCIM connection write
- `stytch.scim_connections.delete` Delete a SCIM connection destructive
- `stytch.scim_connections.get` Get an organization's SCIM connection read
- `stytch.scim_connections.list_groups` List the SCIM groups of a SCIM connection read
- `stytch.scim_connections.rotate_token_cancel` Cancel a SCIM bearer token rotation destructive
- `stytch.scim_connections.rotate_token_complete` Complete a SCIM bearer token rotation destructive
- `stytch.scim_connections.rotate_token_start` Start a SCIM bearer token rotation destructive
- `stytch.scim_connections.update` Update a SCIM connection write

**Otps 7**

- `stytch.otps.authenticate` Authenticate a one-time passcode write
- `stytch.otps.login_or_create_email` Send a login or signup email OTP write
- `stytch.otps.login_or_create_sms` Send a login or signup SMS OTP write
- `stytch.otps.login_or_create_whatsapp` Send a login or signup WhatsApp OTP write
- `stytch.otps.send_email` Send an email OTP write
- `stytch.otps.send_sms` Send an SMS OTP write
- `stytch.otps.send_whatsapp` Send a WhatsApp OTP write

**Sessions 7**

- `stytch.sessions.attest` Attest a session from a trusted token write
- `stytch.sessions.authenticate` Authenticate a session write
- `stytch.sessions.exchange_access_token` Exchange a Connected Apps access token for a session write
- `stytch.sessions.get_jwks` Get the session JWKS read
- `stytch.sessions.list` List a user's active sessions read
- `stytch.sessions.migrate` Migrate a session from an external OIDC provider write
- `stytch.sessions.revoke` Revoke a session destructive

**B2B otps 6**

- `stytch.b2b_otps.authenticate_discovery_email` Authenticate a discovery email OTP write
- `stytch.b2b_otps.authenticate_email` Authenticate a B2B email OTP write
- `stytch.b2b_otps.authenticate_sms` Authenticate a member SMS OTP write
- `stytch.b2b_otps.login_or_signup_email` Send a B2B login or signup email OTP write
- `stytch.b2b_otps.send_discovery_email` Send a discovery email OTP write
- `stytch.b2b_otps.send_sms` Send a member an SMS OTP write

**Magic links 6**

- `stytch.magic_links.authenticate` Authenticate a magic link token write
- `stytch.magic_links.create` Create an embeddable magic link write
- `stytch.magic_links.invite_email` Send an invite magic link by email write
- `stytch.magic_links.login_or_create_email` Send a login or signup magic link by email write
- `stytch.magic_links.revoke_invite` Revoke a pending email invite destructive
- `stytch.magic_links.send_email` Send a magic link by email write

**Webauthn 6**

- `stytch.webauthn.authenticate` Complete WebAuthn authentication write
- `stytch.webauthn.authenticate_start` Start WebAuthn authentication write
- `stytch.webauthn.list_credentials` List a user's WebAuthn credentials read
- `stytch.webauthn.register` Complete a WebAuthn registration write
- `stytch.webauthn.register_start` Start a WebAuthn registration write
- `stytch.webauthn.update` Update a WebAuthn registration write

**B2B magic links 5**

- `stytch.b2b_magic_links.authenticate` Authenticate a B2B magic link token write
- `stytch.b2b_magic_links.authenticate_discovery` Authenticate a discovery magic link token write
- `stytch.b2b_magic_links.invite_email` Send a B2B invite magic link write
- `stytch.b2b_magic_links.login_or_signup_email` Send a B2B login or signup magic link write
- `stytch.b2b_magic_links.send_discovery_email` Send a discovery magic link write

**Totps 4**

- `stytch.totps.authenticate` Authenticate a TOTP code write
- `stytch.totps.create` Create a TOTP registration write
- `stytch.totps.get_recovery_codes` Get a user's TOTP recovery codes read
- `stytch.totps.recover` Authenticate a TOTP recovery code write

**B2B rbac 3**

- `stytch.b2b_rbac.get_organization_policy` Get an organization's RBAC policy read
- `stytch.b2b_rbac.get_policy` Get the B2B RBAC policy read
- `stytch.b2b_rbac.set_organization_policy` Set an organization's RBAC policy write

**B2B recovery codes 3**

- `stytch.b2b_recovery_codes.get` Get a member's recovery codes read
- `stytch.b2b_recovery_codes.recover` Authenticate a member with a recovery code write
- `stytch.b2b_recovery_codes.rotate` Rotate a member's recovery codes destructive

**B2B totps 3**

- `stytch.b2b_totps.authenticate` Authenticate a member TOTP code write
- `stytch.b2b_totps.create` Create a member TOTP registration write
- `stytch.b2b_totps.migrate` Migrate a member TOTP registration write

**Discovery 3**

- `stytch.discovery.create_organization` Create an organization via discovery write
- `stytch.discovery.exchange_intermediate_session` Exchange an intermediate session for a member session write
- `stytch.discovery.list_organizations` List discovered organizations read

**B2B idp oauth 2**

- `stytch.b2b_idp_oauth.authorize` Complete a B2B Connected App authorization write
- `stytch.b2b_idp_oauth.authorize_start` Start a B2B Connected App authorization read

**B2B oauth 2**

- `stytch.b2b_oauth.authenticate` Authenticate a B2B OAuth token write
- `stytch.b2b_oauth.authenticate_discovery` Authenticate a discovery OAuth token write

**Crypto wallets 2**

- `stytch.crypto_wallets.authenticate` Authenticate a crypto wallet signature write
- `stytch.crypto_wallets.authenticate_start` Start crypto wallet authentication write

**Fraud rules 2**

- `stytch.fraud_rules.list` List fraud rules read
- `stytch.fraud_rules.set` Set a fraud rule write

**Fraud verdict reasons 2**

- `stytch.fraud_verdict_reasons.list` List verdict reason actions read
- `stytch.fraud_verdict_reasons.override` Override a verdict reason action write

**Idp oauth 2**

- `stytch.idp_oauth.authorize` Complete a Connected App authorization write
- `stytch.idp_oauth.authorize_start` Start a Connected App authorization read

**Oauth 2**

- `stytch.oauth.attach` Create an OAuth attach token write
- `stytch.oauth.authenticate` Authenticate an OAuth token write

**Project 2**

- `stytch.project.get_metrics` Get project metrics read
- `stytch.project.whoami` Identify the project these credentials belong to read

**B2B impersonation 1**

- `stytch.b2b_impersonation.authenticate` Authenticate a B2B impersonation token write

**Fraud email 1**

- `stytch.fraud_email.risk` Assess an email address's risk read

**Fraud fingerprints 1**

- `stytch.fraud_fingerprints.lookup` Look up a device fingerprint verdict read

**Impersonation 1**

- `stytch.impersonation.authenticate` Authenticate an impersonation token write

**Rbac 1**

- `stytch.rbac.get_policy` Get the consumer RBAC policy read

**SSO 1**

- `stytch.sso.authenticate` Authenticate an SSO token write

Questions

## The Stytch MCP server, answered.

**Is there a Stytch MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 184 Stytch actions across members, users, b2B passwords and SSO connections, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Stytch.

**What do I need to connect Stytch?**

Stytch project ID (Dashboard > Project settings > API keys), e.g. project-live-… or project-test-… and Stytch project secret from the same API keys page. Plus your environment. The free call account { op: "connections.requirements", service: "stytch" } lists exactly what to paste.

**Can an AI agent delete or change things in Stytch?**

Only if its key allows it, and only with an explicit confirmation. 38 Stytch actions are destructive, including delete a user, delete a Connected App client and delete an M2M client. 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 Stytch API limit?**

actionlake paces every call to the limits in the Stytch service file: 100 calls a second per connection. Repeated reads are answered from cache (30 Stytch actions can be), which never reaches Stytch.

**What does a Stytch action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (184 Stytch actions page). Cache hits, searches, dry runs and calls Stytch 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 Stytch API does it cover?**

The Stytch API 2.1.1 (OpenAPI 3.0.3, stytchauth/stytch-openapi) at your region's stytch.com address, set when you connect. It is built from Stytch's documentation as read on 23 October 2026. 184 actions in 35 areas, each one in the signed service file (version 1.0.0).

**Can I combine Stytch with my other systems?**

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

**Does actionlake keep my Stytch 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 Stytch 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.

## More connectors like Stytch

Shares the most action names with

- [Clerk 16](https://actionlake.com/connectors/clerk)
- [FusionAuth 12](https://actionlake.com/connectors/fusionauth)
- [Keycloak Admin REST API 11](https://actionlake.com/connectors/keycloak-admin-rest-api)
- [Auth0 Management API 10](https://actionlake.com/connectors/auth0-management-api)
- [Descope 5](https://actionlake.com/connectors/descope)
- [Zscaler Internet Access (ZIA) 4](https://actionlake.com/connectors/zscaler-internet-access-zia)

Joins with, on shared entities

- [Medplum 3](https://actionlake.com/connectors/medplum)
- [HaloPSA 2](https://actionlake.com/connectors/halopsa)
- [NinjaOne 2](https://actionlake.com/connectors/ninjaone)
- [Salesforce Sales Cloud 2](https://actionlake.com/connectors/salesforce-sales-cloud)
- [Xero 2](https://actionlake.com/connectors/xero)
- [ServiceNow 2](https://actionlake.com/connectors/servicenow)

Browse

- [All Identity & security connectors](https://actionlake.com/connectors/category/identity-and-security)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Stytch; the name is the vendor's own. Counts are from the Stytch service file, version 1.0.0.

## Give your agent Stytch today.

[Connect Stytch free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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

---

Source: https://actionlake.com/connectors/stytch
More: https://actionlake.com/llms.txt
