Skip to main content
This guide connects an MCP client (Claude, ChatGPT, or Cursor) to the hosted 3ngram server and walks through your first remember and search. To run your own instance instead, see Self-host.
3ngram is pre-1.0. The hosted URLs below are provisional and will change when the permanent domain goes live.

Prerequisites

  • A 3ngram account — the email and password you use for the dashboard at https://3ngram-web.vercel.app.
  • An MCP client that supports remote servers over Streamable HTTP with OAuth: Claude (web, desktop, or Claude Code), ChatGPT, or Cursor.

Connect your client

The MCP endpoint is:
https://3ngram-server-production.up.railway.app/mcp
claude mcp add --transport http 3ngram https://3ngram-server-production.up.railway.app/mcp
Then run /mcp inside a session and pick 3ngram to start authentication.

Complete the OAuth flow

3ngram is its own OAuth 2.1 authorization server — there is no third-party identity provider in the token path. The flow is automatic from the client’s side:
1

The client registers itself

Your MCP client discovers the server’s OAuth metadata and registers via dynamic client registration. No manual client IDs or secrets.
2

Sign in and consent

A browser window opens with the 3ngram consent page. Sign in with your account email and password, check the redirect host shown on the page, and approve the requested scopes — memory:read and memory:write are the only two.
3

Tokens are issued

The client exchanges the authorization code for a short-lived access token plus a rotating refresh token. You will not need to sign in again until the grant is revoked.

Save your first memory

Ask your client to remember something:
Remember that we decided to use Postgres full-text search instead of
Elasticsearch for the v1 search backend.
The client calls the remember tool, which appends a typed memory (here a decision) to your default scope. Writes never merge or overwrite existing memories — see Memory model.

Search it back

In a later session — or a different client connected to the same account — ask:
What did we decide about the search backend?
The client calls search, which fuses semantic similarity, full-text matching, and recency, and returns currently-valid memories by default.

Next steps

  • Start sessions oriented: the briefing tool returns your open commitments, blockers, and recent decisions for a scope or project.
  • Browse the full surface: 10 tools and 2 prompts.
  • For scripts and SDKs, use an API key with the REST API (X-API-Key header) instead of OAuth.
  • Organize memories with scopes.