Add infrastructure setup artifacts (Feb 1-3)
Session notes covering Gitea-Coolify webhook fixes, NocoDB/Vaultwarden credentials, Stalwart mail server setup, Snappymail config, WhyRating databases and email, CloudBeaver deployment, and Turbostarter setup. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
155
.artifacts/2026-02-01_21-08_outline-ai-workflow.md
Normal file
155
.artifacts/2026-02-01_21-08_outline-ai-workflow.md
Normal file
@@ -0,0 +1,155 @@
|
||||
# Outline AI Workflow
|
||||
|
||||
**Date:** 2026-02-01 21:08
|
||||
**Context:** Setup MCP server for AI interaction with Outline wiki
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Item | Value |
|
||||
|------|-------|
|
||||
| **Outline URL** | http://192.168.1.3:3080 |
|
||||
| **API URL** | http://192.168.1.3:3080/api |
|
||||
| **MCP Server** | `mcp-outline` (via uvx) |
|
||||
| **NUC Docs Collection** | `2a42945b-1a4f-4c92-add5-dfa147ef3f56` |
|
||||
| **API Key** | `ol_api_nIjWn2lJn4Ho42kKcivcqTHjyy8Vg9ycxmchHa` |
|
||||
| **Key Name** | Claude MCP v2 (full access) |
|
||||
| **Key Expires** | Mar 03, 2026 |
|
||||
|
||||
---
|
||||
|
||||
## MCP Tools Available
|
||||
|
||||
After restarting Claude Code (`/mcp` to verify):
|
||||
|
||||
```
|
||||
mcp__outline__search_documents # Search by keywords
|
||||
mcp__outline__list_collections # List all collections
|
||||
mcp__outline__read_document # Get document content
|
||||
mcp__outline__create_document # Create new document
|
||||
mcp__outline__update_document # Update document
|
||||
mcp__outline__move_document # Move to different collection
|
||||
mcp__outline__archive_document # Archive document
|
||||
mcp__outline__delete_document # Delete document
|
||||
mcp__outline__export_document # Export as markdown
|
||||
mcp__outline__batch_create_documents # Create multiple docs
|
||||
mcp__outline__ask_ai_about_documents # AI queries on docs
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Common Workflows
|
||||
|
||||
### 1. Save Important Finding to Wiki
|
||||
|
||||
```python
|
||||
mcp__outline__create_document(
|
||||
title="<Descriptive Title>",
|
||||
text="<Markdown content>",
|
||||
collectionId="2a42945b-1a4f-4c92-add5-dfa147ef3f56",
|
||||
publish=True
|
||||
)
|
||||
```
|
||||
|
||||
### 2. Search Before Solving
|
||||
|
||||
```python
|
||||
# Check if solution already documented
|
||||
results = mcp__outline__search_documents(query="tailscale funnel")
|
||||
```
|
||||
|
||||
### 3. Update Existing Doc
|
||||
|
||||
```python
|
||||
mcp__outline__update_document(
|
||||
id="<doc-id>",
|
||||
text="<new content>",
|
||||
append=False # True to append instead of replace
|
||||
)
|
||||
```
|
||||
|
||||
### 4. Find Doc by Title
|
||||
|
||||
```python
|
||||
doc_id = mcp__outline__get_document_id_from_title(title="Architecture")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## REST API Fallback
|
||||
|
||||
When MCP unavailable:
|
||||
|
||||
```bash
|
||||
# Create document
|
||||
curl -X POST 'http://192.168.1.3:3080/api/documents.create' \
|
||||
-H 'Authorization: Bearer ol_api_cs243A8BKmEW6yAdrMp05PxTILMBjPofIQcVcM' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{
|
||||
"title": "Title",
|
||||
"text": "Content",
|
||||
"collectionId": "2a42945b-1a4f-4c92-add5-dfa147ef3f56",
|
||||
"publish": true
|
||||
}'
|
||||
|
||||
# Search
|
||||
curl -X POST 'http://192.168.1.3:3080/api/documents.search' \
|
||||
-H 'Authorization: Bearer ol_api_cs243A8BKmEW6yAdrMp05PxTILMBjPofIQcVcM' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{"query": "search term"}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Config Location
|
||||
|
||||
`~/.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
"outline": {
|
||||
"command": "uvx",
|
||||
"args": ["mcp-outline"],
|
||||
"env": {
|
||||
"OUTLINE_API_KEY": "ol_api_cs243A8BKmEW6yAdrMp05PxTILMBjPofIQcVcM",
|
||||
"OUTLINE_API_URL": "http://192.168.1.3:3080/api"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## When to Use
|
||||
|
||||
**Save to Outline (persistent docs):**
|
||||
- Infrastructure guides
|
||||
- Configuration docs
|
||||
- Troubleshooting procedures
|
||||
- Architecture decisions
|
||||
|
||||
**Save to .artifacts/ (session notes):**
|
||||
- API keys/tokens generated
|
||||
- Temporary findings
|
||||
- Session-specific configs
|
||||
|
||||
---
|
||||
|
||||
## Generate New API Key
|
||||
|
||||
1. Go to http://192.168.1.3:3080/settings/api-and-apps
|
||||
2. Click "New API key..."
|
||||
3. Set scopes: `documents.create documents.update documents.read collections.read`
|
||||
4. Copy immediately (shown once)
|
||||
5. Update `~/.claude/settings.json`
|
||||
|
||||
---
|
||||
|
||||
## Related
|
||||
|
||||
- MCP Server: https://github.com/Vortiago/mcp-outline
|
||||
- Outline API: https://www.getoutline.com/developers
|
||||
- Full guide: `docs/outline-ai-workflow.md`
|
||||
Reference in New Issue
Block a user