npm @artifacta-mcp/mcpstreamable-httpMITupdated 1mo ago
Official MCP server for Artifacta — an artifact store purpose-built for AI agents. Agents persist run outputs (files, reports, datasets, build results) with session and agent metadata, hand them off across sessions, and share them via expiring download links. Content-hash dedup means re-storing the same bytes is free.
Was kannst du mit artifacta machen?
Artifacta MCP Server
Official MCP server for Artifacta — an artifact store purpose-built for AI agents. Agents persist run outputs (files, reports, datasets, build results) with session and agent metadata, hand them off across sessions, and share them via expiring download links. Content-hash dedup means re-storing the same bytes is free.
Listed in the official MCP registry
as io.artifacta/mcp.
Two implementations with the same tool surface, error contract, and path-confinement engine:
| Directory | Package | Runtime |
|---|---|---|
typescript/ |
@artifacta-mcp/mcp |
Node 20+ |
python/ |
artifacta-mcp |
Python 3.10+ |
Install as a Claude Code plugin
For Claude Code, the fastest path is the plugin marketplace this repo doubles as — it wires up the hosted server and a skill that persists run outputs automatically:
/plugin marketplace add SagaPeak/artifacta-mcp
/plugin install artifacta@artifacta
This bundles the same hosted MCP connection as the Quick start below plus the
persisting-outputs skill (/artifacta:persisting-outputs, or it auto-triggers
when a session has outputs worth saving). Update the plugin with
/plugin marketplace update artifacta. See the
plugin setup guide.
Quick start
The fastest way to connect is the hosted server — no install, no API key:
claude mcp add --transport http artifacta https://mcp.artifacta.io/mcp
On first use your client self-registers via OAuth Dynamic Client Registration
(PKCE) and opens a browser to authorize — no ak_live_ key to copy or store.
See the hosted setup guide.
Local / CI (stdio)
For headless, air-gapped, or CI environments where a browser OAuth flow isn't available, run the package locally over stdio with an API key. Get a key at app.artifacta.io/dashboard/keys, then add to your MCP client config (Claude Desktop, Claude Code, Cursor, or any MCP client):
{
"mcpServers": {
"artifacta": {
"command": "npx",
"args": ["-y", "@artifacta-mcp/mcp"],
"env": {
"ARTIFACTA_API_KEY": "ak_live_..."
}
}
}
}
Or run the Python implementation with pipx run artifacta-mcp.
See the per-package READMEs for config-file profiles, path confinement
(--allow-path), destructive-tool gating (--allow-destructive), and
troubleshooting: TypeScript ·
Python.
Tools
| Tool | Description |
|---|---|
whoami |
Verify credentials; returns tenant and plan info |
store_artifact |
Upload an artifact from inline content or a local path |
request_upload_url / complete_upload |
Two-phase presigned upload for large files |
get_artifact |
Fetch artifact metadata by ID |
get_artifact_download_url |
Get a presigned download URL (1h expiry) |
list_artifacts |
List/filter artifacts by session, agent, or metadata |
list_sessions |
List active sessions |
seal_session |
Seal a session so no further artifacts can be added (gated behind --allow-destructive) |
create_download_link |
Create a public expiring share link (gated behind --allow-destructive) |
delete_artifact |
Soft-delete an artifact (gated behind --allow-destructive, same gate as create_download_link) |
publish_artifact |
Publish an artifact as a public page at artifacta.io/a/{slug} (Artifact Pages); idempotent, unlisted by default |
unpublish_artifact |
Take down an artifact's public page; the artifact itself is untouched; idempotent |
Plus MCP resources for whoami, artifact metadata, artifact bytes, and
sessions.
Safety defaults: local-file uploads are confined to an explicit --allow-path
allow-list, and destructive tools (public share links, deletes, session seals)
are hidden from clients that can't confirm writes unless --allow-destructive
is passed. publish_artifact and unpublish_artifact are idempotent write
operations, not destructive ones — they are not gated behind
--allow-destructive.
Hosted OAuth connections (mcp.artifacta.io) add a second layer: the consent
screen grants one of three scopes — artifacts:read ⊆ artifacts:write ⊆
artifacts:destroy. All 13 tools are always advertised in tools/list;
calling a tool the token wasn't granted for returns a tool error with code
insufficient_scope naming the missing scope, and the fix is to re-authorize
with the broader scope. Scope gating applies only to hosted OAuth —
ak_live_ API keys and local stdio remain full-access, using
--allow-destructive / confirmation flags instead.
Framework integrations
The Python package ships optional adapters for
OpenAI Agents SDK (pip install 'artifacta-mcp[openai-agents]') and
LangChain/LangGraph (pip install 'artifacta-mcp[langchain]').
Documentation
Full docs at docs.artifacta.io/mcp/overview.
Development
# TypeScript
cd typescript && npm install && npm test
# Python
cd python && python -m venv .venv && source .venv/bin/activate
pip install -e '.[dev]' && pytest
This repository is published from the Artifacta monorepo; issues and PRs are welcome here.
License
MIT — see LICENSE.
Installation
artifacta zu deinem Client hinzufügen. Wähl den, den du nutzt.
{
"servers": {
"mcp": {
"type": "http",
"url": "https://mcp.artifacta.io/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add mcp -- npx -y @artifacta-mcp/mcpcodex mcp add mcp -- npx -y @artifacta-mcp/mcpamp mcp add mcp -- npx -y @artifacta-mcp/mcp{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"@artifacta-mcp/mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @artifacta-mcp/mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
10 Tools
artifacta stellt einem verbundenen Agent 10 Tools bereit.
- store_artifact
- Upload an artifact from inline content or a local path
- get_artifact
- Fetch artifact metadata by ID
- get_artifact_download_url
- Get a presigned download URL (1h expiry)
- list_artifacts
- List/filter artifacts by session, agent, or metadata
- list_sessions
- List active sessions
- seal_session
- Seal a session so no further artifacts can be added (gated behind `--allow-destructive`)
- create_download_link
- Create a public expiring share link (gated behind `--allow-destructive`)
- delete_artifact
- Soft-delete an artifact (gated behind `--allow-destructive`, same gate as `create_download_link`)
- publish_artifact
- Publish an artifact as a public page at `artifacta.io/a/{slug}` (Artifact Pages); idempotent, unlisted by default
- unpublish_artifact
- Take down an artifact's public page; the artifact itself is untouched; idempotent
Score
86 / 100
Ausgezeichnet
- Dokumentation25/25
- Pflege22/25
- Vertrauen16/20
- Funktionsumfang8/15
- Installation15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 35 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 10 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Versionsverlauf
| Versionen | Veröffentlicht |
|---|---|
| 1.0.5Aktuell | 30. Juni 2026 |
| 1.0.4 | 25. Juni 2026 |
| 1.0.2 | 12. Juni 2026 |
| 1.0.1 | 5. Juni 2026 |