Searchable storage for AI agents and humans.

Your agents drop files here with a description. Other agents — and you — find them later by asking in words, and see whether they are still current before using them.

agent Aartefaktum.devagent Bagent Cresults.json 12 KBreport.csv 4.8 MBgenerated_reel.mp4 310 MB

What it does

Store once, find from anywhere, trust what you read.

One agent saves it. Another finds it — just by asking.

No shared disk, no identifiers passed around between workflows. Describe the file in words and get ranked matches, from any host, any time later.

Agent work doesn’t vanish when the agent does.

Sessions end and containers get recycled. The files they produced stay, and the next run starts by searching for what the last one made.

Know when a file has gone stale.

When the data a file was built from changes, everything downstream is flagged — before an agent acts on it.

See what your agents actually made. coming soon

Browse, search and download your agents’ files from the console — the same search the agents use, for people.

See it work

Push a file. Search in words. Fetch the current one.

  1. 1

    Push

    Upload with a title, description and tags.

  2. 2

    Index

    The description is indexed; the file itself is never read by a model.

  3. 3

    Search

    Any agent asks in words and gets ranked, freshness-flagged results.

  4. 4

    Fetch

    A short-lived download URL, checksum included.

Where it saves money

Fewer repeated API calls. Smaller prompts.

A cache every agent shares.

Fetch an expensive response once. Until it expires, every workflow and every host that asks gets the stored copy — and when several agents race for the same thing, only the first one actually fetches it.

Files change hands by reference, not by paste.

Moving a 32 MB file between agents costs a few hundred tokens of description — never a context window, never a payload glued inside workflow JSON. Bytes go straight between object storage and the agent’s disk.

Install & integrations

Same store, from wherever your agent runs.

REST and MCP expose the same operations. The SDKs, the CLI and the n8n node are thin clients over them, so an artifact pushed from one shows up in all the others.

Node Artefaktum, credential Artefaktum API. Operations: Upload, Get, Search, Update, Delete. Upload takes a Key and an If Key Exists choice, so the next run, and other workflows, reuse a stored result instead of calling the API again.

Hosted MCP over Streamable HTTP. Sign in with Google or GitHub when the host asks; no key to paste.

Claude Code
claude mcp add --transport http artefaktum https://api.artefaktum.dev/mcp
Claude Desktop

Settings → Connectors → Add custom connector. Name artefaktum, URL https://api.artefaktum.dev/mcp, then Connect — a browser window opens to sign in.

Codex CLI
codex mcp add artefaktum --url https://api.artefaktum.dev/mcp
VS Code

In .vscode/mcp.json (or Command Palette → MCP: Add Server → HTTP):

{ "servers": { "artefaktum": { "type": "http", "url": "https://api.artefaktum.dev/mcp" } } }
Cline

In cline_mcp_settings.json, then Authorize OAuth from the MCP menu:

{ "mcpServers": { "artefaktum": { "type": "streamableHttp", "url": "https://api.artefaktum.dev/mcp" } } }
Cursor, or any host that reads an mcp.json
{ "mcpServers": { "artefaktum": { "url": "https://api.artefaktum.dev/mcp" } } }

Text comes back inline; binary files come back as a short-lived URL.

pip install artefaktum
from artefaktum import Artefaktum

client = Artefaktum()  # ARTEFAKTUM_API_KEY, project "default"
a = client.artifacts.push("report.pdf", title="Q3 churn", tags=["churn"])
hits = client.artifacts.search("q3 churn")
client.artifacts.pull(hits.items[0].artifact.id, "out/")  # sha256 verified

Python 3.10+, httpx only. AsyncArtefaktum for asyncio. README · PyPI

npm install artefaktum
import { Artefaktum } from "artefaktum";

const client = new Artefaktum(); // ARTEFAKTUM_API_KEY, project "default"
const artifact = await client.artifacts.push("report.pdf", {
  title: "Q3 churn analysis", tags: ["churn", "q3"], external_key: "reports/q3-churn",
});
const page = await client.artifacts.search("q3 churn");
await client.artifacts.pull(page.items[0].artifact.id, "out/"); // sha256 verified

Zero dependencies. Node 20+. ESM and CommonJS. Typed from the API's OpenAPI document. README · npm

pip install "artefaktum[cli]"
artefaktum login            # or set ARTEFAKTUM_API_KEY in CI and sandboxes
artefaktum push report.pdf --title "Q3 churn" --tag churn
artefaktum search "q3 churn"
artefaktum pull 0199198a-8f21… out/

afk is the short alias. Bake it into a sandbox image or a CI step so an agent can push before its container is recycled. README

curl -s -X POST https://api.artefaktum.dev/v1/artifacts/search \
  -H "Authorization: Bearer $ARTEFAKTUM_API_KEY" -H "Content-Type: application/json" \
  -d '{"project_id": "…", "query": "latest enriched competitor list", "mode": "hybrid"}'

Make, Zapier and anything with an HTTP step use this directly. Keys come from the console.

No account and no API key: an agent with a USDC wallet on Base pays per request over the same REST API. Storing an artifact up to 10 MiB for 30 days costs $0.01, a read $0.005, a search $0.01.

Runs anywhere your agent does

  • n8n
  • Make
  • Zapier
  • Claude Code
  • Cursor
  • Codex
  • GitHub Actions
  • AWS Lambda
  • Cloud Run
  • E2B
  • Daytona
  • LangGraph
  • CrewAI

Pricing

Free for one person. Pro when you need room or a team.

Free

$0

One person. Try it, or run a small setup for good.

  • 1 GB storage
  • 10,000 API calls a month
  • Files up to 100 MB
  • 1 project
Start free

No card. No expiry.

Pro

$20 / month

Teams, bigger files, and more than one project.

  • 50 GB storage
  • 1,000,000 API calls a month
  • Files up to 5 GB
  • Unlimited projects, organizations included
Upgrade in the console

Full pricing and what happens over the limit

Give your agents somewhere to leave things.

Sign in with Google or GitHub, create a key, and push the first artifact in a minute.