tteg
Free CLI that gives AI agents real stock photos from Unsplash. No API key needed. MCP server + HTTP API included.
Install / Use
claude mcp add kiluazen -- npx -y github:kiluazen/ttegIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Development & EngineeringSupported Platforms
Skill content
View source on GitHubtteg
Unsplash stock photos without registration or API keys.
uv tool install tteg
tteg save "startup office" ./public/hero --orientation landscape
# → saves a real photo to ./public/hero.jpg
No Unsplash app. No API key. No .env files. Just photos.
Why this exists
Unsplash has 4M+ free photos. To use them programmatically you need to register a developer account, create an application, and manage API keys. Their official JavaScript library was archived in 2024.
Meanwhile source.unsplash.com/random — the zero-setup alternative everyone used — was deprecated in mid-2024 and now 503s. An authenticated GitHub code-search returns ~16,500 live file hits across ~885 unique repositories still referencing it; see RESEARCH.md for the full list, including several 1k+ star projects currently shipping broken <img> tags.
tteg handles all of that server-side. You get a CLI, an HTTP API, an MCP server, and an embeddable widget — all with zero setup.
Install
uv tool install tteg
# or: pip install tteg
Use
Search — get image URLs:
tteg "coffee shop" -n 3 --orientation landscape
Save — download one photo into your project:
tteg save "modern office" ./public/hero --orientation landscape
Batch — fill an entire landing page from a JSON manifest:
tteg batch landing-page-images.json
[
{"query": "startup office", "output": "./public/hero", "orientation": "landscape"},
{"query": "developer portrait", "output": "./public/founder"},
{"query": "team meeting", "output": "./public/team", "orientation": "landscape"}
]
HTTP API (no install needed)
curl "https://tteg-api-53227342417.asia-south1.run.app/search?q=coffee+shop&n=3"
No headers. No auth. CORS enabled. Try it live →
Parameters: q (query), n (count, 1-10), orientation (landscape/portrait/square/any), width, height
MCP server
For Claude Code, Cursor, or any MCP host:
{
"mcpServers": {
"tteg": {
"command": "uvx",
"args": ["tteg-mcp"]
}
}
}
Tools: search_images, save_image, search_and_save_image, batch_save_images
Embed widget
Drop into any HTML page:
<div data-tteg="coffee shop" data-count="3"></div>
<script src="https://tteg.kushalsm.com/embed.js"></script>
Options
| Flag | Default | Description |
|------|---------|-------------|
| -n, --count | 5 | Number of results (1–10) |
| --orientation | any | landscape, portrait, square, or any |
| --width | — | Max width in pixels |
| --height | — | Max height in pixels |
Starter kit
Copy-paste blocks for CLAUDE.md and AGENTS.md: STARTER_KIT.md
Links
- tteg.kushalsm.com — landing page
- Try it live — search from your browser
- PyPI —
pip install tteg - Free tier: 50 queries/day per IP
Related Skills
momen-cursurrules-prompt-file
40.6kCursor rules for building custom frontends with Momen.app as headless BaaS with GraphQL API, actionflows, AI agents, and Stripe integration.
pyspark-etl-best-practices-cursorrules-prompt-file
40.6kCursor rules for PySpark ETL development with code style, joins, window functions, map operations, and Iceberg patterns.
semiotic-react-dataviz-cursorrules-prompt-file
40.6kCursor rules for Semiotic data visualization library with 30+ chart types, MCP server, and AI-assisted chart generation.
Agent-Reach
72.2kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
