Integrations

It comes to you.

People do not open an OKR tool on a Thursday afternoon. So OKRGoal goes where they already are: their chat app, their inbox, and the AI agent they already use. Every chat connection is two-way, and every action that comes back in runs through the same permission checks as a click.

Chat
Slack Microsoft Teams WhatsApp Telegram Email
Your agent
Claude ChatGPT Cursor Hermes Agent Grok Bot any MCP client
AI models
Anthropic OpenAI Gemini OpenRouter Ollama any OpenAI-compatible endpoint
Identity
OIDC SAML 2.0 SCIM 2.0 (Okta, Microsoft Entra ID)
Data
CSV Excel
Chat

Check in from the app you already have open.

Slack

Get nudged. Check in from a dialog. Log a blocker. Acknowledge a check-in. Read a goal. Ask a question about the workspace, when AI is on. Get the weekly digest in the team channel.

Microsoft Teams

The same, in adaptive cards.

WhatsApp

Get nudged, then check in by replying, as a conversation. Through the WhatsApp Business API.

Telegram

Get nudged, check in as a short conversation, log a blocker, acknowledge a check-in, read a goal and ask a question, with inline buttons.

Email

Nudges, the notification digest and a daily summary in your own time zone, each with a link straight to what needs doing.

  • Two-way.

    Nudges go out. Check-ins, blockers and acknowledgements come back in.

  • Checked.

    Every inbound message is verified against the provider's signature, or for Telegram, which does not sign, its shared secret, matched to a member, and run through the same permission checks as the browser. A stranger gets nothing.

  • Optional.

    A workspace with no chat app connected still works completely. Email and the browser cover everything.

How is it going? Answer one of: on_track, caution, off_track.09:02
on_track09:03
How confident are you it lands, from 0 to 10? A number on its own.09:03
609:04
One line on why. Anything you would say out loud.09:04
Two deals moved to proposal. Legal is slow on the contract template.09:05
What is "Ten referenceable customers" at now? A number, or "skip".09:05
509:06
Checked in. Your reviewer has been asked to acknowledge it.09:06
Agent-native

Your agent, your permissions.

Almost everything a person can do in OKRGoal, an agent can do, through one contract. OKRGoal is a Model Context Protocol server, so Claude, ChatGPT, Cursor, Hermes Agent, Grok Bot or your own agent can connect, sign in as you through a consent screen, and work within your permissions. Nothing more.

  • "What do I owe this week?"
  • "Run my weekly check-in."
  • "Review this quarter's OKRs against the method."
  • "Prepare my quarterly review."
# Claude Code
claude mcp add --transport http openokr https://app.okrgoal.com/api/mcp
# Then run /mcp, choose openokr and sign in.

Easier still: in the product, one button copies a setup prompt. Paste it into your agent and it connects itself. There is no token to copy, so nothing secret lands in your clipboard.

Signs in properly

OAuth 2.1 with a consent screen and a workspace picker. Scoped tokens for scripts.

Covers almost all of it

Cycles, goals, key results, check-ins, blockers, sessions, KPIs, alignment, initiatives, tasks, documents and search.

Audited

Every call is rate-limited, cost-capped, and written to the audit log.

Local agents

An agent that cannot open a browser connects with a scoped token you create and revoke. Point it at a self-hosted instance and nothing leaves your network.

Your own AI model

Bring your own brain.

The deployment, the workspace admin or each person chooses the provider and supplies the key. Features ask for a tier, fast, balanced or deep, never a model, so swapping models is one setting.

  • Nothing leaves silently.

    Choose what context may reach a provider, redact email addresses and phone numbers, and allow-list the hosts it may call.

  • Local means local.

    Point it at Ollama or your own inference server and nothing leaves your network. The admin screen says so.

  • Cost is visible and capped.

    Every call records its tokens and cost. Quotas per person, per agent and per workspace, and a hard cap that halts a run.

  • Or none at all.

    Choose "Off" and every rule but one still runs. You lose the drafting, the language and the nightly sweep that needs a model, nothing else.

Admin · AI provider
Provider
Tier features ask for one, never a modelfastbalanceddeep
Redact email addresses and phone numbers
Allow-list the hosts it may call
Hard cap halts a run
EgressNothing leaves silently.
API and command line

One contract. Every surface generated from it.

Every read and write in OKRGoal is defined once, with its schema and the access level it needs. The REST API, its OpenAPI document, the command line, the agent tools and the chat commands are all generated from that one definition, and checked for drift on every change. So the API can do exactly what the product can, and nothing slips past a permission check.

okr
okr login --url https://app.okrgoal.com
okr goals list --mine
okr goals recordValue --id <key-result-id> --value 1400000 --note "Two enterprise deals closed"
  • REST and OpenAPI.

    The OpenAPI document is served live by every instance, so it describes the version you are running.

  • A command line.

    okr signs in with a device code you approve in the browser. Read and write by default, never destructive unless you ask.

  • Scoped tokens.

    Create, scope and revoke API tokens from your account.

Identity

Single sign-on, included.

Single sign-on

OIDC and SAML 2.0, connected directly.

Directory sync

SCIM 2.0, so Okta, Microsoft Entra ID and others add people, suspend leavers and keep spaces matched to groups.

Sign-in for everyone else

Passwords, passkeys, and authenticator codes with backup codes. Enforce a second factor for the whole workspace.

Single sign-on is in the open source edition and on every cloud plan. It is not an enterprise upsell.

Bring your data

Start with what you already have.

Spreadsheets

Upload a CSV or Excel file of goals, key results, KPIs, KPI readings, initiatives or tasks. Download a template, or let the AI suggest the column mapping. You confirm it, see a dry run with a report for every row, then import.

Another OKR tool

A dedicated, read-only importer for one other OKR platform, run from the command line: people, spaces, cycles, objectives, key results with history, check-ins, KPIs with their formulas, initiatives, and tasks with their comments and files. It names every table it does not read. Run it twice and it updates rather than duplicates.

Another instance

Export a whole workspace to an encrypted, checksummed archive, sealed with a passphrase you choose. Import it into any other instance, cloud or self-hosted, in either direction, after a dry run.

Every derived number, such as progress, health and streaks, is recomputed after import rather than trusted. Anything that cannot map cleanly is named in the report, never quietly dropped.

Infrastructure

Fits the stack you run.

For self-hosters. In the cloud, we run all of this.

NeedOptions
DatabasePostgreSQL, the only service OpenOKR requires
MailAny SMTP server, set up from the admin screen
File storageLocal disk, MinIO, or any S3-compatible service
ObservabilityOpenTelemetry, to a backend you host
DeployDocker Compose, or a Helm chart on your Kubernetes

What it does not connect to, yet.

Designed for, not built: Discord, Google Chat and LINE; incoming email; links to GitHub and GitLab work; two-way calendar sync. If one of these would decide it for you, tell us. It moves up the list.

Bring the Champion into your team's chat.