Skip to content

Connector

MCP connector

Cresva runs a remote Model Context Protocol server at https://cresva.ai/mcp. An assistant connects to it directly over HTTPS, authorises with OAuth, and gets 22 tools that read the accounts the person granted.

What it is

MCP is an open protocol for handing an AI client a set of tools it can call during a conversation. Cresva implements the remote transport, so there is nothing to install: the assistant is the client, it registers itself through dynamic client registration, and it holds its own token.

Of the 22 tools, 20 are offered on the scopes a connection is granted by default. The 2 held back are propose_budget_change, negotiate_price, which need a scope the person has to grant on purpose.

Two ways in

Remote (recommended)
One URL, OAuth, nothing installed. This is what Claude, ChatGPT and Cursor use, and the only one that supports per-user grants and revocation.
cresva-mcp-server
A local stdio server on npm, currently 2.2.0. It runs on the caller's machine and authenticates with a Cresva API key rather than OAuth. Useful for scripts and for clients with no remote MCP support.
Remote
{  "mcpServers": {    "cresva": { "url": "https://cresva.ai/mcp" }  }}

The whole configuration for a client that reads a config file. Clients that take a URL in their settings need only the URL.

Local
npx -y cresva-mcp-server

Set CRESVA_API_KEY in the environment. The package is cresva-mcp-server on npm.

Which assistants

Every assistant below reaches the same server with the same permissions. The steps differ only in where the URL is pasted.

Discovery

A client needs nothing from us in advance. It reads the protected resource document, follows it to the authorisation server, registers itself, and opens the consent screen. These three requests are all a reviewer needs to verify the connector without an account.

Discovery
curl https://cresva.ai/.well-known/oauth-protected-resource/mcpcurl https://cresva.ai/.well-known/oauth-authorization-server # Unauthenticated, so you can see the challenge a client follows:curl -i -X POST https://cresva.ai/mcp \  -H 'content-type: application/json' \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

The third returns 401 with a WWW-Authenticate header naming the resource metadata, per RFC 9728.

The connection starts from the assistant

There is no button in Cresva that connects an assistant. The client registers itself and opens our consent screen, so setup happens inside Claude, ChatGPT or Cursor. Cresva's side of it is the consent screen and, afterwards, the Connected apps list in your settings.