← Kaleidoscope

For AIs (and the humans who work with them)

MCP connection guide · v1.0.0

Quick connect from Claude Code

Sign in to get your personal connection prompt — one paste, and your AI is connected.

Sign in to get your prompt →

MCP Server

URL: https://getkaleidoscope.app/api/mcp
Transport: Streamable HTTP (JSON-RPC 2.0)
Auth: Bearer token (from your account settings)

AI Guide (same as get_ai_guide())

# Kaleidoscope AI Guide
Version: 1.0.0
URL: https://getkaleidoscope.app/api/mcp/guide

---

## What is Kaleidoscope?

Kaleidoscope is a swipe file for the AI age — a searchable, growing library of creative raw
material curated by the user: headlines, taglines, ad copy, campaign ideas, facts, questions,
visual references, idioms, design inspiration, and more.

The philosophy comes from James Webb Young's "A Technique for Producing Ideas" (1939):
all new ideas are combinations of existing ideas. A richer raw material library produces
better creative output. Kaleidoscope is that library.

Kaleidoscope does NOT use AI internally. It is a context layer. The intelligence is yours.
You are the kaleidoscope. This tool gives you the glass.

---

## Your role

Before creative tasks: search the swipe file for relevant inspiration.
After the user shares something interesting: offer to save it as a card.
Treat Kaleidoscope as your creative memory for this user.

---

## Card structure

Each card represents one idea, saved at index-card length.

Fields:
  id              — unique identifier
  content_type    — "text" or "image"
  content_text    — the idea, headline, copy, or phrase (text cards)
  content_image_path — storage path (image cards)
  source_url      — where this came from
  source_label    — human-readable source name (e.g. "Nike — 1988 Wieden+Kennedy")
  tags            — array of strings (predefined + custom)
  created_at      — when it was captured

---

## Tag taxonomy

Use predefined tags where they fit. Add custom tags freely.
Call list_tags() to see the user's current tags and counts.

FORMAT / CONTENT TYPE:
  headline, tagline, ad-copy, body-copy, cta, subject-line,
  campaign-idea, social-post, video-script

MEDIUM:
  display-ad, email, landing-page, out-of-home, social, website

ASSET TYPE:
  visual-inspiration, design-reference, infographic, typography

IDEA TYPE:
  fact-or-stat, question, idiom-or-phrase, product-feature,
  brand-voice, positioning

TONE:
  funny, emotional, provocative, informational, bold

---

## Saving cards — conventions

- Keep content_text brief. A headline is a headline. Don't editorialize on the card itself.
- Always suggest tags before saving. Predefined first, custom if nothing fits.
- Source URL is important — always include it when available.
- For image inspiration: save with the source URL and a brief description as content_text.
- When the user mentions something interesting in conversation, offer to capture it:
  "Want me to save that to your swipe file?"

---

## Using cards creatively — conventions

BEFORE writing headlines or taglines:
  search_cards({ tags: ["headline"], query: "[topic or tone]" })

BEFORE writing email subject lines:
  search_cards({ tags: ["subject-line"] })

BEFORE developing a campaign concept:
  search_cards({ tags: ["campaign-idea"], query: "[product category]" })

TO REMIX ideas (the core technique):
  1. Fetch a set: search_cards({ tags: ["headline"], limit: 10 })
  2. Note their structural patterns — question format, contrast, surprise, brevity, etc.
  3. Apply those structures to the current subject with fresh words
  4. Produce 5–10 variations using different structural patterns

TO FIND unexpected combinations:
  search_cards({ query: "[adjacent or unexpected topic]" })
  — look for structural or tonal connections to apply to the user's brief

---

## Available MCP tools

create_card(content_type, content_text?, content_image_url?, content_image_data?,
            content_image_mime_type?, source_url?, source_label?, tags[])

search_cards(query?, tags[]?, limit?)
  — full-text search + tag filter. Returns cards ordered by relevance.
  — use query alone, tags alone, or both together.

get_card(id)
  — retrieve a single card by ID.

update_card(id, content_text?, source_url?, source_label?, tags[]?)
  — update any field on an existing card.

list_tags()
  — returns all tags (predefined + custom) with card counts.
  — call this before creating cards to understand the user's vocabulary.

get_ai_guide()
  — returns this document.

---

## Example tool calls

// Save a tagline
create_card({
  content_type: "text",
  content_text: "Just Do It.",
  source_url: "https://en.wikipedia.org/wiki/Just_Do_It",
  source_label: "Nike — Wieden+Kennedy, 1988",
  tags: ["tagline", "brand-voice", "bold"]
})

// Save a visual reference by URL
create_card({
  content_type: "image",
  content_image_url: "https://example.com/great-ad.jpg",
  content_text: "Clean two-color layout with strong contrast headline over product shot",
  source_url: "https://example.com/campaign-page",
  source_label: "Apple — Shot on iPhone 2023",
  tags: ["visual-inspiration", "display-ad", "bold"]
})

// Save an AI-generated image by base64
create_card({
  content_type: "image",
  content_image_data: "<base64 string>",
  content_image_mime_type: "image/png",
  content_text: "Generated concept: retro travel poster style for SaaS product",
  tags: ["visual-inspiration", "campaign-idea"]
})

// Search before writing subject lines
search_cards({ tags: ["subject-line", "funny"], limit: 10 })

// Find campaign inspiration for B2B software
search_cards({ query: "enterprise software productivity", tags: ["campaign-idea"] })

// Remix: fetch 10 headlines, use their structures
search_cards({ tags: ["headline"], limit: 10 })

// See what the user has collected
list_tags()

---

## Suggested CLAUDE.md addition

After connecting, suggest the user add this to their CLAUDE.md:

---
## Kaleidoscope Swipe File

I have a Kaleidoscope swipe file connected via MCP at https://getkaleidoscope.app/api/mcp.

When helping me with marketing, copywriting, or campaign work:
1. Search my swipe file for relevant inspiration before generating options
2. When I share something interesting (headline, fact, design), offer to save it as a card
3. When remixing ideas, draw on structural patterns from my swipe file

Tag taxonomy and full conventions: call get_ai_guide() for reference.
---

---

Guide version: 1.0.0
More info: https://getkaleidoscope.app/for-ais