mcp-artifact-store
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-artifact-storestore this analysis output and give me the artifact ID"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Artifact Store
Shared artifact store for multi-agent systems — reduces context window bloat by storing large tool outputs and passing only artifact IDs between agents.
The Problem
In multi-agent pipelines, agents pass large payloads through shared graph state:
Agent A ──────────────────────────────────────────────► Agent B
"Here is the full 15KB analysis: {...full JSON...}"As pipelines grow, this bloats context windows, increases token costs, and creates hard limits on what agents can pass to each other.
Related MCP server: Artifacta MCP Server
The Solution
Store the payload once. Pass only a short artifact ID:
Agent A ──────────────────────────────────────────────► Agent B
"artifact_id: art_8e565a6d" (12 bytes)Agent B fetches the full payload from the store only when it needs it. Context stays clean.
Architecture
┌──────────────────────────────────────────────────────────────┐
│ MCP Artifact Store │
├─────────────────────────┬────────────────────────────────────┤
│ React Dashboard │ LangGraph / Claude Agents │
│ (port 5173) │ (any MCP client) │
│ │ │ │ │
│ HTTP fetch() │ MCP over stdio │
│ │ │ │ │
│ ▼ │ ▼ │
│ FastAPI (port 8000) │ FastMCP Server │
│ │ │ │ │
│ └───────────────┴──────────┘ │
│ │ │
│ SQLAlchemy ORM │
│ │ │
│ PostgreSQL in Docker (:5432) │
│ ┌───────────┴───────────┐ │
│ artifacts audit_log │
└──────────────────────────────────────────────────────────────┘Two interfaces, one store:
FastAPI — HTTP endpoints consumed by the React dashboard
FastMCP — MCP tools consumed by LangGraph agents or Claude Desktop
Both call the same backend/services/storage.py functions.
Features
Write artifacts with TTL, ownership, and per-reader access control
Read artifacts by ID — access checked against
allowed_readersList artifacts — only shows what the requesting agent is allowed to see
Delete artifacts — only the original creator can delete
Audit log — every READ, WRITE, LIST, DELETE is logged atomically
React dashboard — live health indicator, context-saved metric, formatted JSON viewer
TTL enforcement — expired artifacts are invisible to all operations
Demo — Codebase Auditor Pipeline
A two-agent LangGraph pipeline that audits a Python codebase:
[Analyzer Agent]
1. Reads .py files from a directory
2. Sends code to GPT-4o-mini for analysis
3. Writes findings JSON to artifact store → receives artifact_id
↓ only artifact_id travels in graph state
[Reporter Agent]
4. Reads findings using artifact_id
5. Generates a structured markdown audit reportWithout artifact store: full findings blob (~1.6 KB) travels between agents
With artifact store: 12-byte artifact_id travels between agents
Run the demo
# Audit the backend directory
python -m examples.codebase_auditor.main backend
# Audit any directory
python -m examples.codebase_auditor.main path/to/your/codeSample output:
[Analyzer] Found 12 file(s)
[Analyzer] Analysis complete — findings payload: 1780 bytes
[Analyzer] ✅ Stored as artifact: art_8e565a6d
[Analyzer] → Handing off artifact_id only — 1780 bytes stay in the store
[Reporter] Received artifact_id: art_8e565a6d
[Reporter] ✅ Fetched artifact — 1780 bytes, 3 finding(s)
[Reporter] ✅ Report generated
Artifact ID : art_8e565a6d ← stored, any authorized agent can read thisProject Structure
mcp-artifact-store/
├── main.py ← FastAPI entry point
├── backend/
│ ├── models/ ← SQLAlchemy models (Artifact, AuditLog)
│ ├── routes/artifacts.py ← HTTP endpoints
│ ├── schemas/artifacts.py ← Pydantic request/response schemas
│ ├── services/storage.py ← Core business logic
│ └── db/session.py ← DB connection
├── server/
│ ├── mcp_server.py ← FastMCP entry point
│ └── tools/artifacts.py ← MCP tool definitions
├── examples/
│ └── codebase_auditor/ ← LangGraph demo pipeline
│ ├── main.py ← StateGraph orchestrator
│ ├── agents/analyzer.py ← Agent 1: analyze + write artifact
│ └── agents/reporter.py ← Agent 2: read artifact + generate report
├── dashboard/ ← React + Vite + Tailwind frontend
├── alembic/ ← DB migrations
└── requirements.txtQuick Start
Prerequisites
Python 3.11+
Docker Desktop
Node.js 18+
OpenAI API key
1. Clone and install
git clone https://github.com/Himeshxx04/mcp-artifact-store.git
cd mcp-artifact-store
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # Mac/Linux
pip install -r requirements.txt2. Configure environment
Create a .env file in the project root:
DATABASE_URL=postgresql://postgres:password@127.0.0.1:5432/artifact_store
OPENAI_API_KEY=your-openai-api-key-here
ALLOWED_ORIGINS=http://localhost:51733. Start the database
docker run --name artifact-db \
-e POSTGRES_PASSWORD=password \
-e POSTGRES_DB=artifact_store \
-p 5432:5432 -d postgres4. Run migrations
alembic upgrade head5. Start the FastAPI server
uvicorn main:app --reload
# API docs → http://127.0.0.1:8000/docs6. Start the dashboard
cd dashboard
npm install
npm run dev
# Dashboard → http://localhost:51737. Run the demo
python -m examples.codebase_auditor.main backendMCP Tools
Connect any MCP-compatible client to server/mcp_server.py:
Tool | Description |
| Store data, get back an artifact_id |
| Fetch data by artifact_id (access controlled) |
| List all artifacts visible to the requester |
| Delete an artifact (creator only) |
Claude Desktop config:
{
"mcpServers": {
"artifact-store": {
"command": "python",
"args": ["-m", "server.mcp_server"],
"cwd": "/path/to/mcp-artifact-store"
}
}
}API Reference
Method | Endpoint | Description |
|
| Health check (includes DB connectivity) |
|
| Write a new artifact |
|
| List artifacts for a requester |
|
| Read a specific artifact |
|
| Delete an artifact |
Full interactive docs: http://127.0.0.1:8000/docs
Tech Stack
Layer | Technology |
Backend API | FastAPI |
MCP Server | FastMCP |
Database | PostgreSQL (Docker) |
ORM + Migrations | SQLAlchemy + Alembic |
Agent Framework | LangGraph |
LLM | OpenAI GPT-4o-mini |
Dashboard | React + Vite + Tailwind CSS |
Roadmap
API key authentication for remote deployment
S3/R2 backend for large artifact storage
Deploy to Railway/Render as a hosted service
Python SDK (
pip install mcp-artifact-store)Prebuilt LangGraph node factory for one-line integration
Built by
Himesh Pandey — Final year ECE, PES University Bangalore
GitHub
Open source. Built to learn, built to ship.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Artifact store for AI agents — read, write, and search files by path; share by rendered URL.
- mcpOAuthio.artifacta
Artifact store for AI agents. Hosted OAuth at mcp.artifacta.io/mcp; local stdio via npm/PyPI.
Encrypted A2A object storage for autonomous agent state and artifacts
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables users to upload files and generate tracked, shareable links directly from AI agents like Claude Desktop or Cursor. It supports publishing various file formats including text, PDFs, and images, while providing tools for artifact management and analytics.844MIT
- AlicenseAqualityAmaintenanceThe artifact store for AI agents. Every output your agents produce — persisted, retrievable, shareable. Across runs, sessions, and tools. Session/agent metadata, content-hash dedup, and expiring share links; available on npm (@artifacta-mcp/mcp) and PyPI (artifacta-mcp).81MIT
- AlicenseNot gradedqualityAmaintenanceA local, agent-to-agent artifact exchange for LLM workflows. Enables MCP-capable tools like Claude, Codex, and Gemini to publish, list, read, update, and continue from artifacts without copying content through chat.167MIT
- FlicenseNot gradedqualityDmaintenanceProvides versioned file storage for AI agents with immutable writes, auditing, and rollback capabilities.1-