n8n

Install LUU in n8n via the importable memo-critic workflow template, paste your free API key, and run strategic-judgment workflows in your existing automation stack.

Prerequisites

  • An n8n instance — n8n.cloud (free tier works), self-hosted, or Docker
  • An email address (we'll use it to issue your API key)

Step 1: Get a free API key

curl -X POST https://api.leadershipunderuncertainty.org/api/mcp/generate-key \
  -H "Content-Type: application/json" \
  -d '{
    "email": "you@example.com",
    "description": "n8n memo critic"
  }'

The response contains your nb_* key. Save it — it's only shown once.

You're now on the free tier: 25 calls per day, 500 per month, 6 tools available (memo critic, brief, signals, contextualize, fact-check, forecast).

Step 2: Import the memo-critic template

  1. Download the template: workflow.json
  2. Open n8n. Workflows → Import from File
  3. Select the downloaded workflow.json
  4. The workflow appears with 4 nodes: trigger → memo input → LUU note review → format for Slack/email

Step 3: Wire up the API key credential

  1. Click the LUU Note Review node
  2. In Credential to connect with, click Create New Credential
  3. Choose HTTP Bearer Auth
  4. Name it LUU API Key
  5. Token: paste your nb_* key from Step 1
  6. Save

Step 4: First run

  1. The Memo Input node already contains a sample memo with deliberate tradecraft weaknesses
  2. Click Execute Workflow in the bottom-right
  3. Wait ~10-15 seconds; green checkmarks light up each node

Step 5: Inspect the output

Click the Format for Slack/Email node. You'll see a structured ICD 203 review:

## ICD 203 Tradecraft Review

**Overall Score:** 32 / 100
**Verdict:** inadequate

### Strengths
- Frames a concrete strategic-economic question

### Weaknesses
- Asserts conclusions without evidence
- No alternatives considered
- Uses absolute language ("firmly", "all signs", "lost leverage")

### Missing
- Source citations for any claim
- Alternative hypotheses (e.g., "Russia–China alignment is tactical, not strategic")
- Information gaps
- Calibrated uncertainty language

### Per-ATS Scores
- ATS 1 (Source Quality): 5
- ATS 2 (Uncertainty Expression): 10
- ATS 3 (Fact/Assumption/Judgment): 25
- ATS 4 (Alternative Analysis): 0
- ...

Adapt to your real workflow

Read memos from email

  1. Replace Manual Trigger with Gmail Trigger (or IMAP)
  2. After Gmail, use a Set node to extract body.textnoteText
  3. Wire to LUU Note Review

Send results to Slack

  1. After Format for Slack/Email, add a Slack node
  2. Choose channel
  3. Paste {{$json.summary}} into the message field

Trigger from a webhook

  1. Replace Manual Trigger with Webhook trigger
  2. Set HTTP method to POST, path to /memo-critic
  3. POST {"noteText": "..."} from anywhere

Composition telemetry

If you chain multiple LUU calls (note-review → search-evidence → record-outcome), thread these headers through your HTTP requests so we can see your composition pattern:

  • X-LUU-Composition-Trace — already auto-populated to {{$execution.id}}
  • X-LUU-Composition-Position0, 1, 2... (0-indexed position in the chain)
  • X-LUU-Composition-Previous-Call — optional UUID of the immediately preceding call

This is opt-in. We use it to understand which sequences agent builders compose most often.

Troubleshooting

SymptomCauseFix
HTTP 401API key wrong or revokedRe-run the generate-key curl in Step 1
HTTP 402Free-tier cap exceededWait until daily reset, top up at /api/mcp/pay, or upgrade
HTTP 429Per-second rate limit hitAdd a small delay between calls
TimeoutDefault 60s exceededLong memos in deep mode: increase HTTP node timeout to 120s
Empty strengthsQuick mode skips behavioral scoringSet reviewMode: "standard" or "deep"

Next templates

This is the anchor template. Coming next:

  • Weekly Strategic Delta (snapshot + delta + evidence pack)
  • Source Credibility Check (NATO STANAG-aligned source scoring)
  • Scenario Room (multi-scenario synthesis with assumption tracking)
  • Decision Review (decision logged → after-action review prompt)