# Tilopay MCP server

> How to connect an MCP client to the Tilopay server with OAuth and the same Tilopay account credentials.

- kind: mcp-index
- status: stable
- last_verified: 2026-10-20
- url: https://tilopay.com/en/developers/agentes/mcp

## How access works [#acceso]

Access is self-service: there is no registration form and no manual approval. You
installs the connector with the server URL and, in the authorization window, signs in with the
**same credentials as their Tilopay account** (email and password) and confirms the verification
code Tilopay sends. That automatically creates the assistant user, ties it to you, and
registers your API credentials encrypted on the server side.

Three things worth knowing:

1. The session is authorized with the Tilopay dashboard email and password, plus the verification
   code. The assistant never sees or stores that password: the connection runs on OAuth 2.0.
2. Because the user is tied to one merchant, the agent only reaches the data and the operations of
   that merchant.
3. You never paste your `apiKey`, `apiUser` or `apiPassword` into the MCP client.

> **Warning:** Your API credentials live encrypted on the Tilopay server and are decrypted on every call.
>   They are not pasted into the MCP client, nor into the assistant configuration file, and they are
>   never handed to the model. That is the security argument behind the whole design.

## Connection [#conexion]

The server is `https://mcp.tilopay.com/mcp`. To connect:

1. Add the server in the MCP client with that URL.
2. The client discovers authentication from the 401 with `WWW-Authenticate`, which points to
   `/.well-known/oauth-protected-resource`.
3. The client registers dynamically and opens the authorization screen.
4. The user signs in with their Tilopay account credentials, confirms the verification code and
   sees a consent screen with the application requesting access, the return URL and the
   permissions.
5. On approval, the client is connected.

The model is OAuth 2.0 with `authorization_code` and `refresh_token`. The client discovers the
identity provider endpoints on its own: the only thing to configure is the server URL.

## From the most used MCP clients [#clientes]

- **Claude** (desktop and web): add a remote connector with the server URL and complete sign-in in
  the window it opens. <ExternalLink href="https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Tilopay&connectorUrl=https://mcp.tilopay.com/mcp">Connect with Claude</ExternalLink>
- **ChatGPT**: add the server as a remote connector with that same URL; authorization completes in
  the browser.
- **Cursor, VS Code and other editors**: declare a remote HTTP MCP server with the URL, with no
  token in the configuration file; the editor opens the browser to authorize.
- **Your own client**: use an MCP client with Streamable HTTP transport and OAuth 2.0 support with
  dynamic registration. The sequence is the one above: 401, discovery, registration, authorization,
  connection.

Want to start with ready-made cases? [Install a skill](/en/developers/agentes/mcp/skills).

The transport is Streamable HTTP. The available tools are organized in 15 groups: the
14 of the [acquiring API](/en/developers/agentes/mcp/adquirencia) (full list) and the
[banking API (BaaS)](/en/developers/agentes/mcp/api-bancario) group, which is enabled on request
and only works for users with Tilopay banking API credentials.
Before connecting an agent, read [what it can do](/en/developers/agentes/mcp/permisos).

## Dates in UTC [#fechas-utc]

For sales queries, send `startDate` and `endDate` in UTC using
`YYYY-MM-DD HH:mm:ss`, not local time. Costa Rica is UTC-6: the local day
2026-10-20 runs from `2026-10-20 06:00:00` to `2026-10-21 05:59:59` UTC.
When comparing periods, convert the local range to UTC first.

Next step → [Connect your agent](/en/developers/agentes/mcp/conectar).
