Skip to content
ChrisJDiMarcoPublic

About

The open standard for interactive apps inside Claude. MIT licensed spec + MCP server.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Thinklet

Thinklet

The open format and social catalog for apps that run inside AI.

MIT License npm version Discord

thinklet.io · Catalog · Docs · Discord


Thinklet demo — type a message in Claude, an interactive app appears, data persists across conversations

What Thinklet is

Every platform that matters has an app ecosystem. Chrome has extensions. VS Code has plugins. The App Store has apps.

MCP clients — Claude, Cursor, Windsurf, ChatGPT — are becoming platforms. Thinklet is the open format and social catalog for the apps that run inside them.

One MIT spec. One install command. 12,000+ apps built by the community — search, remix, or publish your own without leaving your AI.


Thinklet is two things:

1. An open spec (MIT). A Thinklet is a single React component with two props: content (your app's persisted state) and updateContent (writes state back). State survives conversation restarts, browser refreshes, and device switches. Zero backend. No deploy.

2. A social catalog. 12,000+ Thinklets built by the community. Open in one message. Remix with lineage. Publish and get credited.

export default function MyThinklet({ content, updateContent }) {
  const count = content.count ?? 0
  return (
    <button onClick={() => updateContent({ count: count + 1 })}>
      Clicked {count} times — this number survives forever
    </button>
  )
}

"It feels like what Custom GPTs should have been." — Hacker News


Install in 30 seconds

npx @thinklet/mcp install

That's it. Then open Claude and say:

Open the expense tracker Thinklet
Build me a habit tracker and save it as a Thinklet
Remix that kanban board to track my job applications instead

Your apps open instantly, remember everything, and never ask you to redescribe them.


How it works

The content prop — zero-backend persistence

content is a plain JSON object managed by TQL (Thinklet Query Language). When you call updateContent, TQL writes the delta back to the platform. The next time you open the Thinklet — in any conversation, on any device — your data is there.

const { todos = [], filter = 'all' } = content

// Add a todo
updateContent({ todos: [...todos, { id: Date.now(), text, done: false }] })

// State survives:
// ‚úì Closing the conversation
// ‚úì Browser refresh
// ‚úì Opening from a different device
// ‚úì Sharing with a teammate

No localStorage. No API calls. No database setup. Just a prop.

The MCP server — Claude as your launcher

The @thinklet/mcp server gives Claude 7 tools:

Tool What it does
discover_thinklets Search the catalog by query, category, or sort
get_thinklet Fetch a Thinklet by ID
open_thinklet Render a Thinklet inline in the conversation
save_thinklet Save to your personal library
remix_thinklet Fork with new instructions, lineage preserved
publish_thinklet Ship to the public catalog
list_my_thinklets Your library

You never leave Claude. One message to open. One message to save.

useAIStreaming — AI inside your app

import { useAIStreaming } from '@thinklet/hooks'

export default function ResearchThinklet({ content, updateContent }) {
  const { stream, isStreaming } = useAIStreaming()

  const analyze = async () => {
    const result = await stream(`Summarize: ${content.notes}`)
    updateContent({ summary: result })
  }

  return (
    <div>
      <p>{content.summary ?? 'No summary yet'}</p>
      <button onClick={analyze}>{isStreaming ? 'Thinking...' : 'Analyze notes'}</button>
    </div>
  )
}

Multiple streams run in parallel. Use this for multi-agent patterns inside a single Thinklet.


Platform features

The spec and MCP are free and open source. The cloud platform at thinklet.io adds:

Feature Free Starter ($10/mo) Creator ($25/mo)
Browse public catalog ‚úì ‚úì ‚úì
Create & save Thinklets 20 credits 100/mo 250/mo
AI models Claude Claude + GPT-4o All 11 models
Private Thinklets — ✓ ✓
RAG (document attachment) — — ✓
Publish to catalog — ✓ ✓
Remix community Thinklets — ✓ ✓
Analytics — — ✓

Repo structure

thinklet/
├── spec/
│   ├── component.md     ← Component contract
│   ├── tql.md           ← TQL persistence spec
│   └── ai-streaming.md  ← useAIStreaming hook spec
├── mcp/
│   ├── src/
│   │   ├── index.ts     ← MCP server entry
│   │   └── tools/       ← Tool implementations
│   └── package.json
├── examples/
│   ├── counter.tsx
│   ├── expense-tracker.tsx
│   └── kanban-board.tsx
└── LICENSE

What people are building

Thinklet What it does
Competitor Intel Track competitors, news, and positioning — data persists across sessions
Expense Tracker Log and categorize expenses — your history never disappears
Kanban Board Manage tasks inside Claude — cards stay exactly where you left them
Daily Habit Log Track habits with streaks — survives every conversation restart

Browse 12,000+ more at thinklet.io/explore.


Contributing

The spec and MCP are open to contributions.

  • Spec changes ‚Äî open an issue first, then PR
  • MCP bugs ‚Äî PRs welcome, include a test case
  • Example Thinklets ‚Äî always welcome in /examples

See CONTRIBUTING.md.


Why open source?

The spec being MIT means:

  • Any MCP client can support Thinklets ‚Äî not just Claude
  • Developers can build tooling on a stable, community-owned format
  • The catalog grows without a gatekeeper
  • If we disappear, your apps don't

The cloud platform funds the project. The spec belongs to everyone.


License

MIT © Thinklet


Claude builds it. Thinklet keeps it.

thinklet.io · Discord · Twitter

About

The open standard for interactive apps inside Claude. MIT licensed spec + MCP server.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages