← Gyri · Privacy

# Gyri Claude Connector — Setup Guide

Public documentation URL for Connectors Directory submission.

## Connect

1. In Claude: **Settings → Connectors → Add custom connector**
2. **Remote MCP server URL:** `https://api.gyri.io/mcp`
3. Leave **OAuth Client ID / Secret** blank (Gyri supports dynamic client registration + pre-seeded Claude client)
4. Click **Add**, then **Connect** and sign in to Gyri when prompted

## Prerequisites

- A Gyri account (sign up at [https://gyri.io](https://gyri.io))
- Email verified (required for workspace writes)

## Authentication

Gyri uses **OAuth 2.1 authorization code + PKCE**. Claude discovers the authorization server via [RFC 9728](https://datatracker.ietf.org/doc/html/rfc9728) protected resource metadata at:

`https://api.gyri.io/.well-known/oauth-protected-resource`

Scopes: `openid profile email offline_access gyri:mcp`

## What the connector does

**Reads:** search workspace knowledge, query graph, list skills/guides, insights, documents

**Writes:** GraphQL mutations via `mutate`, deploy agents, submit buildout requests, workspace configuration

## Data handling

- API is first-party Gyri (`api.gyri.io`)
- Data stays in your Gyri workspace; Claude accesses it only with your OAuth consent
- See [Privacy Policy](https://gyri.io/privacy)

## Support

- Email: support@gyri.io
- Docs: this file (`docs/connector-setup.md`) — publish copy at `https://gyri.io/docs/connector` before submission

## Operator deploy (api.gyri.io)

```bash
# DNS: api.gyri.io → host running Caddy + API
# deploy/Caddyfile.api-gyri

GYRI_PUBLIC_BASE_URL=https://api.gyri.io
GYRI_OAUTH_ENABLED=1
GYRI_MCP_AUTH_MODE=required   # use optional during rollout
GYRI_MCP_API_ROOT=1
GYRI_MCP_PUBLIC=1
GYRI_OAUTH_RSA_PRIVATE_KEY_FILE=deploy/secrets/oauth_rsa.pem

npx tsx scripts/register-claude-oauth.ts
npx tsx scripts/verify-mcp-oauth.ts https://api.gyri.io
```

Toggle **`GYRI_MCP_AUTH_MODE=optional`** to keep `gyri_sk_` API key auth working alongside OAuth (Cursor/dev).