> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eversince.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP server

> Eversince's hosted MCP server, and the same server the desktop app runs on the user's computer.

Eversince provides a Model Context Protocol server at `https://mcp.eversince.ai/mcp`. It uses Streamable HTTP and is stateless: every request carries its own credential, and there is no session to open or close.

## Authentication

The server accepts two credentials on `Authorization: Bearer`.

* **OAuth 2.1.** A client discovers the flow through `https://mcp.eversince.ai/.well-known/oauth-protected-resource` (RFC 9728) and takes the user through signing in. Nothing is pasted. A user without an account creates one on the sign-in page.
* **An API key** (`es_live_…`), created in the app under Settings, API keys.

A request with no valid credential receives a 401 with a `WWW-Authenticate` header that names the metadata, so a client can start the flow.

A connection is scoped to one workspace when it is made and stays there. An API key is bound to the workspace it was created for.

## Capabilities

* `tools/list` returns every tool with its JSON Schema input, the same list as `GET /api/v1/tools`.
* The server's instructions are the operating manual: the model of the workspace and the rules that apply across tools. The opening lines are self-contained, so a client that reads only the head of the instructions still learns what the platform is.
* Tools that return large results declare `anthropic/maxResultSizeChars`, so a client that truncates results keeps a skill or a batch whole.
* The server offers no resources and no prompts.
* Two tools exist on the MCP server only: `get_api_session`, which gives a script a credential (see [Authentication](/api/authentication)), and `show_media`, which returns a file as a link the conversation can render.

## On the user's computer

The desktop app runs the same server on the machine it is installed on, at `http://127.0.0.1:3837/mcp`, bound to the loopback interface only and backed by the user's own session. There is no separate sign-in. When the user connects a client in the app, the app issues that client a bearer token, and every request must carry it. Work that runs through this server on the machine is free, and files on the disk enter the library where they are.

`eversince init --agent <name>` connects Claude Code, Codex, Cursor, VS Code or Claude Desktop through the app, opening it if it is closed. Clients that start their servers over stdio rather than calling a URL use the bridge the CLI provides, `eversince mcp --agent <name>`, which `init` writes into the client's settings. Claude Desktop receives a bundle built from the same bridge.

## Naming the agent

A connection made through `eversince login` is registered under one OAuth client shared by every agent, so the agent names itself with `POST /api/v1/connections/agent` under its own token. The user then sees the agent's name in the app. `init` does this on the agent's behalf.
