Connectors

Connect an MCP server.

Everything you need to set MCP up in Kryex, screen by screen: what to enter in each field, recipes for the common providers, and how to fix failures. For how it works and why it's safe, see MCP Connectors: Architecture, Security & Governance.

Who does what

Platform adminRuns the connector catalogAdmin console → Kryex LabsRegisters provider OAuth apps, publishes personal connectors, and maintains their tool tiers, help text and health. Kryex Labs on the hosted service; your own administrator when you self-host or run air-gapped.
Org adminGoverns your organizationAdmin console → GovernanceRegisters organization MCP servers and grants access, allows or blocks personal connectors, does provider-side setup, and reviews the audit log.
DeveloperUses the toolsKryex Code → Settings → ConnectorsConnects their own accounts for personal connectors. Uses organization MCP servers automatically, with no sign-in.

Which kind of connection?

Choose an organization MCP server when…Choose a personal connector when…
One organization-owned credential (service account or API key) should be used for everyoneEach person should act as themselves, with their own permissions at the service
You want per-person, per-tool READ / WRITE / ADMIN grants and approval holds in KryexThe service already governs per-person permissions (GitHub, Atlassian…) and you want accountability per person
The server is internal, or isn't in the catalogThe service is in the connector catalog

Both can exist for the same service at the same time. They're independent.

Register an organization MCP server

Admin console→Governance→MCP Servers→Register server

The wizard has three steps. Nothing is saved until you register, except with Sign in now, which saves the server as soon as sign-in completes so the token has somewhere to live.

Registering an organization MCP serverGovernance → MCP Servers
The admin console's three-step wizard. Nothing is saved until you register, and every tool starts quarantined.
Name
jira-internal
What the agent calls it.
Endpoint URL
https://mcp.acme.com/jira/mcp
Must be https://
Description
Read and update issues in the PAY project.
Agents see this.
Authentication
No sign-in + headersSign in now (OAuth)Sign in when needed · coming soon
Provider
AutomaticBuilt-inCustom OAuth
Grouping model
a model from your LLM config, or floor only
Example: an internal Jira MCP server

Step 1 · Connect

FieldWhat to enter
NameA short unique name the agent will use, e.g. figma-internal-mcp.
DescriptionWhat the server is for, written for the agent (“Read-only access to the design system”). Agents see this.
Endpoint URLThe server's MCP URL, e.g. https://mcp.internal.example.com/mcp. Must be https://.
Allow plain http:// (no TLS)Leave off. Turn on only for a server on a real public address with no TLS. It never unblocks private, loopback or cloud-metadata addresses.

Then pick how Kryex authenticates:

1

No sign-in

For open servers, or servers that take an API key. Under Request headers add up to 4: a header name (usually Authorization, or e.g. X-API-Key), the full value (e.g. Bearer abc123… or the raw key), and tick Required if the server needs it. Values are encrypted on save and never shown again. Headers aren't permissions: who may call which tool is set in the Access tab.

2

Sign in now (OAuth)

You sign in once and every granted person uses that one sign-in. Choose a provider:

  • Automatic — the server's own sign-in. For Atlassian, Linear, Sentry, Notion and other modern MCP servers. Register Kryex automatically (recommended) needs nothing. Use your own OAuth client only if the server doesn't allow apps to register themselves, and register the callback https://auth.kryexlabs.com/connectors/mcp/callback in it.
  • A built-in provider (GitHub, Atlassian, Google, Slack, Notion, Figma). Use the published identity where available, or create an OAuth app at the provider with the callback https://auth.kryexlabs.com/connectors/<provider>/callback and paste its client ID and secret.
  • Custom OAuth provider for self-hosted GitLab, Jira Data Center or in-house SSO. Fill the authorize and token URLs (both https://), choose client authentication (in the request body, or an HTTP Basic header), paste the client ID and secret, and register the …/connectors/custom/callback callback at your provider.

Click Connect → and approve in the sign-in window. If your browser blocks it, a “Click here to open the sign-in page →” link appears. The wizard waits up to 5 minutes, and What's happening shows each step if anything goes wrong.

3

Sign in when needed

Marked coming soon in the console and not available yet.

Finally choose a grouping model to suggest tool tiers (from Governance → Model gateway → LLM config), or No model — floor only to let the fixed keyword rule decide alone. Either way, you approve every tool. Click Discover tools →.

Step 2 · Discover tools

Kryex lists the server's tools (name and description). Nothing is saved yet. Click Classify tools →. With Sign in now, the server was saved when sign-in finished, but its tools stay quarantined until you activate them; if you close the wizard before sign-in finishes, the half-made server is removed automatically.

Step 3 · Review & register

  • Three columns, READ, WRITE and ADMIN. Each tool card shows the AI's suggestion and reason.
  • Drag cards between columns, tick several and use Move to, or use the per-card tier menu. ↺ Re-classify re-runs suggestions with another model and never changes anything you've already approved.
  • The AI can't propose a tier below the safety floor (a tool named delete_* is at least ADMIN). You can still choose any tier, and you're accountable for it.
  • Finish with Register & activate tools → (normal wizard), Activate tools → (after sign-in), or Save (N changes) when regrouping later. Only the tools you register or activate become usable.

The server's page

  • Discovered tools shows a badge counting quarantined tools. Approve them here, or use Review in canvas / Regroup in canvas. Moving an active tool to a higher tier asks for confirmation, and existing grants are re-checked on the agent's next turn.
  • Refresh discovery re-reads the server's tools. Any tool whose definition changed is re-quarantined until you re-approve it.
  • Reconnect sign-in (OAuth servers) signs in again with the same setup when the shared sign-in expired, was revoked or never finished. A banner appears automatically in those cases.
  • Disable / Enable turns the whole server off or on for everyone, immediately. Delete removes the server, its tools and stored credentials, and revokes every grant (revoked grants stay in the audit trail).

Give people access

MCP Servers→your server→Access
1

Start from nothing

Nobody has access by default: “No one has access yet — everyone is denied by default.” Click + Give someone access… and pick a person.

2

Tick the tools they may use

Tools appear in READ, WRITE and ADMIN sections, with Select all / Clear per section. The tiers are independent: giving WRITE tools doesn't give READ tools.

3

Choose Auto or Approval per tool

Auto runs within the grant. Approval makes every call wait for an admin; the exact call runs on approval. An outdated · Fix chip means a grant no longer matches the tool's current tier; click Fix to align it.

4

Apply

Apply changes saves everything for that person at once; Remove all access revokes all their grants on this server. Changes reach the agent on its next turn.

Developers have nothing to do: granted tools appear to the agent automatically. In Auto mode READ tools run without a prompt, while WRITE and ADMIN tools ask first. Approval-held calls wait for an admin under Governance → Connections.

Set up personal connectors

The first two steps are for the platform admin. On the hosted service, Kryex Labs has already done them. In a self-hosted or air-gapped deployment, your own administrator does them, in the console section named Kryex Labs.

1 · Register provider apps (built-in providers only)

Admin console→Kryex Labs→OAuth Apps

Pick the provider (e.g. GitHub, Atlassian), paste the client ID and secret from the app you registered at the provider, and optionally scopes (blank uses the provider default). At the provider, the app's callback must be https://auth.kryexlabs.com/connectors/<provider>/callback. Connectors that use Automatic or Custom OAuth don't need this page.

2 · Create and publish a connector

Admin console→Kryex Labs→Connector catalog→New connector

Use Start from: GitHub, Atlassian, Linear, Sentry or Notion to pre-fill.

  • Identity. A square logo under 145 KB that fills its tile; a name and a slug (the agent calls the connector @slug; lowercase letters, digits and -); a tagline and description users see in Kryex Code.
  • Connection. The full MCP server URL including its path (e.g. https://mcp.atlassian.com/v1/mcp), and how people sign in. Automatic (recommended): click Check sign-in and expect “Self-registration: Supported”. Built-in provider: needs its app on OAuth Apps, plus an app install URL for GitHub Apps. Custom OAuth: authorize and token URLs, client ID and secret, client authentication, scopes, and an optional revocation URL used on disconnect.
  • Listing. Category, made by, and documentation, support and privacy policy URLs.
  • Help & setup. Text shown when someone's sign-in stalls or fails, and the setup each organization's admin must do at the provider (shown to them as a checklist; wrap values in backticks to make them copyable).
  • Save, then Publish. For Automatic, saving registers Kryex with the provider (“Kryex registered with …”), or a red message says why it couldn't. Drafts are invisible to users. If people are already connected and you change how the connector signs in, they're asked to reconnect.
  • Tools and health. The tool list fills itself on the first connection (or use Refresh tools); set each tool's tier. Test connection checks reachability, sign-in setup and registration, and the health panel shows the 7-day sign-in funnel and open incidents.

3 · Allow, restrict and set up (org admin)

Admin console→Governance→Connectors→a connector
1

Allowed for your organization

The switch at the top. Turning it off blocks every call immediately; connected people keep their sign-in but can't use the connector.

2

Set up in the provider

If shown (“Needed once”), do the listed steps in the provider's own admin console, clicking a value to copy it, then Mark as done. That's a note for your admins and changes no access.

3

Tools

Search and filter (All / Read / Write / Admin / Blocked), untick a tool to block it for everyone, or use Block all / Allow all per tier, then Save changes. Each person can still only do what their own account at the service allows.

4

Sign-in app (optional)

Use your own app to have your people sign in through your company's OAuth app: set its callback to the URL shown, enter the client ID and secret (plus optional scopes, and the app install page for GitHub Apps), and Save. Changing the client or secret later, or Switch back, asks people who signed in through it to reconnect.

4 · Connect your account (developer)

Kryex Code→Settings→Connectors
  • Open the connector under Yours or Discover and click Connect. Your browser opens the provider's page; sign in and approve.
  • GitHub only: you'll continue to Install on GitHub. Pick the account and choose all repositories, or the ones you want.
  • Kryex Code shows Connected. When the browser asks, allow it to open Kryex Code.
  • If something goes wrong, Kryex Code shows why and what to do. After 90 seconds it explains what usually blocks a sign-in.
  • Reconnect to switch accounts or renew. Disconnect removes your sign-in and revokes it at the provider where supported.

Provider recipes

GitHub — personal connector, GitHub App

1

Create a GitHub App (not an OAuth App)

Callback URL https://auth.kryexlabs.com/connectors/github/callback. Repository permissions as your tools need (e.g. Contents, Issues, Pull requests: Read & write; Administration only if agents should create repositories). Installable on Any account.

2

Register it on OAuth Apps

Provider GitHub, the app's client ID (starts Iv23…) and a client secret.

3

Create the connector

Start from GitHub. MCP URL https://api.githubcopilot.com/mcp/, app install URL https://github.com/apps/<your-app-slug>/installations/new. Publish.

4

People connect and install

Users connect, then install the app on their account and repositories. Without the install, calls are refused with “finish setup”.

Atlassian — Jira & Confluence, Automatic

1

Create the connector

Start from Atlassian, MCP URL https://mcp.atlassian.com/v1/mcp (the full path), sign-in Automatic. Run Check sign-in, Save, Publish. The template pre-fills both help texts.

2

Each customer's Atlassian org admin, once

At admin.atlassian.com → your organization → Rovo → Rovo MCP server → Domains: keep Allow Atlassian supported domains on and Add domain https://auth.kryexlabs.com/**. Under Permissions keep Read, Write and Search allowed. Atlassian blocks Delete and Manage by default; those calls come back as refused by Atlassian's settings.

3

Users connect

Atlassian first shows “Kryex Code is requesting access”. Tick only the products you use (Jira, Confluence, Compass), then Accept.

Linear, Sentry, Notion — Automatic

Start from the template, run Check sign-in, Save, Publish. There's no app to create.

A self-hosted or in-house service

Register it as an organization MCP server with a Custom OAuth provider, or No sign-in plus an API-key header. On the shared hosted service, private-network addresses are blocked: use a public HTTPS address, or a self-hosted Kryex deployment.

Troubleshooting

SymptomLikely causeFix
Atlassian: “Your organization admin must authorize access from this redirect URL”, Accept greyed outThe Atlassian org hasn't allowed Kryex's sign-in addressAdd https://auth.kryexlabs.com/** under Rovo MCP server → Domains, then Connect again
Atlassian: “Something went wrong” after AcceptA domain change still propagating, or mixed Atlassian sign-ins in one browserWait a few minutes; retry in a private window signed in only to the right account
Atlassian: “Access denied” for one personTheir account has no site with the product they tickedOn the request-access page, tick only the products they have
Agent: “rejected a sign-in it issued moments ago… compatibility problem”A defect between Kryex and that provider; Kryex staff are already notifiedDon't reconnect repeatedly. Check Health → Incidents
Agent: “rejected your saved sign-in — reconnect”The sign-in was revoked or can't be renewedSettings → Connectors → Reconnect
Agent: “refused this action for the user's account (HTTP 403)”The person lacks permission at the service, or its admin blocks that action for AI toolsGrant it at the service, if appropriate
Agent: “isn't responding properly… temporary”The provider is down or erroringTry later; repeated failures open an incident automatically
Agent: “the server redirected to … update the endpoint URL”The MCP URL movedPersonal connector: edit the MCP server URL in the catalog. Organization server: register it again with the new URL, then delete the old one
Agent: “rejected the shared sign-in… an admin needs to reconnect”The shared OAuth sign-in expired or was revokedMCP Servers → server → Reconnect sign-in
Agent: “tool is quarantined pending admin re-approval”A new tool, or its definition changedMCP Servers → server → approve it, or Review in canvas
Agent: “no grant” / deniedNo access to that tool or tierAccess tab → give the person that tool
GitHub: “isn't installed on your GitHub account” / “Resource not accessible by integration”The GitHub App isn't installed, or lacks a permissionInstall on GitHub, or enable the permission in the app settings and have users accept it
Connector card: “Sign-in not set up”The provider app is missing, or Automatic registration failedOAuth Apps page, Check sign-in, then Save again
Health: “Kryex isn't registered yet”The connector was saved while the provider was unreachableSave the connector again
Funnel: many started, none finishedSomething at the provider blocks people, often an allowlistFill in the org-admin setup steps, and check the provider's admin settings
“Sign-in timed out” in Kryex CodeThe browser flow was abandoned or blockedReconnect, and follow the help shown on the connector page

Evidence for any of the above is in Governance → Audit log, filtered to MCP servers, Connectors or Tool calls, and by user.

Device licenses (self-hosted)

Pin your own Kryex Server

Kryex Code verifies every license signature on the device and, by default, trusts the Kryex Labs signing keys. A self-hosted deployment pins its own server's key in the machine policy file, which only an administrator can write: %ProgramData%\Kryex\policy.json on Windows, /etc/kryex/policy.json on macOS and Linux.

{
  "license_public_keys": [
    "-----BEGIN PUBLIC KEY-----\n…\n-----END PUBLIC KEY-----"
  ]
}

Get the key from your server's /license/public-key, and list both keys during a key rotation. Once pinned, a license from any other server is refused at sign-in with a message naming this setting.

Tamper alerts

If a license on a device is edited, forged or signed by an untrusted key, Kryex Code stops using it and reports it: an email to every active admin of the organization (at most one per device and kind per day), a high-severity License tampering finding on the Security page, and a license.tamper_detected audit event with the device, key id and app version. If it wasn't expected, revoke the device under Kryex Code → Devices; the person signs in again on a clean device.

Next

CtrlI