Outline
Outline
By the end of this guide, you will have your Outline wiki indexed into a semantic collection and verified with a test search — searchable from the CLI or from any MCP-connected AI agent.
Prerequisites
- Indexed installed and workspace initialized (
indexed config init; see Quick Start) - An Outline instance (Cloud at app.getoutline.com or self-hosted)
- An Outline API key (step 1)
Create an Outline API Key
- Open your Outline instance and go to Settings → API
- Click New API key
- Give it a name (e.g., "Indexed CLI") and copy the key
Set the key and your Outline URL as environment variables:
export OUTLINE_URL=https://app.getoutline.com # or your self-hosted URL
export OUTLINE_TOKEN=your_api_key_hereKeep tokens out of version control
Store credentials in a .env file and add it to .gitignore. Never commit API tokens to a repository.
For self-hosted instances, set OUTLINE_URL to your instance root — for example https://wiki.company.com.
Index Your Wiki
Minimal example — indexes all documents your API key can read:
indexed index create outline -c team-wiki -u https://app.getoutline.comTo target a specific collection by name, use --collection:
indexed index create outline \
-c eng-wiki \
-u https://app.getoutline.com \
--collection "Engineering"Indexing collection 'eng-wiki'...
Fetched 94 documents from Outline
Parsed 94 documents
Created 267 chunks
Generated embeddings
✓ Collection 'eng-wiki' created (267 chunks, 10.1 MB)Verify the collection and run a quick test search:
indexed index inspect eng-wiki
indexed index search "deployment process" -c eng-wikiResults for 'deployment process' (top 5):
1. [eng-wiki] Production Deployment Runbook
Score: 0.91
...Before deploying to production, ensure the staging smoke tests
pass and a second engineer has reviewed the change. Use the
deploy script in scripts/deploy.sh with the --env=prod flag...
2. [eng-wiki] Incident Response Playbook
Score: 0.74
...If a deploy causes elevated error rates, roll back immediately
using the procedure in the rollback guide before filing an incident...Filter by Collection or Document
Outline organizes documents into collections. Use --collection to scope the index to one collection at a time — useful when different teams own different collections and you want separate Indexed collections for each:
# Index the "Engineering" collection separately from "Product"
indexed index create outline -c eng-wiki -u https://app.getoutline.com --collection "Engineering"
indexed index create outline -c product-wiki -u https://app.getoutline.com --collection "Product"Without --collection, Indexed fetches all documents visible to your API key.
Keep the Index Fresh
Pull only new or modified documents since the last sync:
indexed index update eng-wikiTo automate it:
# Update every 6 hours
0 */6 * * * /path/to/indexed index update eng-wikiTroubleshooting
Authentication errors — confirm OUTLINE_TOKEN is set and was copied without leading/trailing whitespace. API keys in Outline start with ol_api_; make sure you copied the full value.
Self-hosted URL issues — set OUTLINE_URL to the root of your instance (e.g., https://wiki.company.com), without a trailing slash or /api suffix. Indexed appends the API path automatically.
Empty results — run indexed index inspect eng-wiki to confirm the collection was created and has documents. If document count is zero, check that your API key has read access to the target collections in Outline (Settings → Members).
Rate limiting — Outline's API has rate limits per key. For large wikis (500+ documents), Indexed retries automatically with exponential backoff.