Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Upload any file, get a signed link. SHA-256 verified, TTL-enforced, no account required.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
TRANSFA_API_KEY, TRANSFA_BASE_URLAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"transfa": {
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "your-value",
"TRANSFA_BASE_URL": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add transfa --env TRANSFA_API_KEY=your-value --env TRANSFA_BASE_URL=your-value -- npx -y transfa-mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"transfa": {
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "your-value",
"TRANSFA_BASE_URL": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"transfa": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "your-value",
"TRANSFA_BASE_URL": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
TRANSFA_BASE_URL envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto colapsis bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: TRANSFA_API_KEY
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.0.1) kam vor 6 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Symantec Cloud DLP AIops
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Governed Symantec Cloud DLP — 14 MCP tools, read-only with audit.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
Dead-simple file sharing for developers and AI agents.
Upload with one command. Share with a link. No account required.
$ tf upload model.gguf
✓ Uploaded model.gguf (4.2 GB) → https://transfa.sh/f/xK9mRp SHA-256 a3f8c2...d91b Expires in 7 days
Most file-sharing tools are built for humans clicking through UIs. transfa is built for the terminal — designed to be called from shell scripts, CI pipelines, and AI agents (Claude, GPT, Cursor, etc.) that need to move files without friction.
.gguf, .safetensors, .parquet, .ipynb, and moreNode.js / CLI
npm install -g transfa
Python SDK
pip install transfa
MCP server (Claude, Cursor, any MCP-compatible agent)
npx -y transfa-mcp
Or use the raw install script:
curl -fsSL https://transfa.sh/install | sh
# Upload a file (no account needed)
tf upload photo.jpg
tf upload secret.zip --ttl 24h --password hunter2
tf upload bundle.tar.gz | grep url | awk '{print $2}' | pbcopy
tf download https://transfa.sh/f/xK9mRp
tf list
tf delete xK9mRp
Upload build artifacts, coverage reports, and any CI output straight from your workflow:
- uses: colapsis/transfa-action@v1
id: upload with: file: ./dist/report.pdf api-key: ${{ secrets.TRANSFA_API_KEY }}
All five outputs are available after the step: id, agent-link, human-link, sha256, expires-at.
See colapsis/transfa-action for the full input reference and more examples (password-protected links, self-hosted instances, single-download limits).
transfa is fully REST. Every operation the CLI does, you can do with curl or any HTTP client.
curl -X POST https://transfa.sh/api/upload \
-H "Authorization: Bearer $TF_KEY" \ -F "file=@model.gguf" \ -F "ttl=7d"
{
"id": "xK9mRp", "url": "https://transfa.sh/f/xK9mRp", "download_url": "https://transfa.sh/api/download/xK9mRp", "filename": "model.gguf", "bytes": 4512345678, "sha256": "a3f8c2...d91b", "expires_at": "2026-05-21T12:00:00.000Z" }
Upload options (form fields or headers):
| Field | Header | Description |
|---|---|---|
ttl | X-Transfa-TTL | Expiry: 1h, 24h, 7d, 30d |
password | — | Password-protect the download link |
max_downloads | — | Burn after N downloads |
filename | X-Transfa-Filename | Override the stored filename |
# Direct download (no auth required)
curl -L https://transfa.sh/api/download/xK9mRp -o model.gguf
curl -L "https://transfa.sh/api/download/xK9mRp?password=hunter2" -o secret.zip
curl https://transfa.sh/api/download/info/xK9mRp
{
"id": "xK9mRp", "filename": "model.gguf", "bytes": 4512345678, "sha256": "a3f8c2...d91b", "mime_type": "application/octet-stream", "download_count": 3, "has_password": false, "expires_at": "2026-05-21T12:00:00.000Z", "active": true }
curl https://transfa.sh/api/upload \
-H "Authorization: Bearer $TF_KEY"
curl -X DELETE https://transfa.sh/api/upload/xK9mRp \
-H "Authorization: Bearer $TF_KEY"
Over 100 file types with correct MIME detection — including types not in standard MIME databases:
| Category | Formats |
|---|---|
| ML models | .gguf .ggml .safetensors .onnx .pt .pth .pkl .ckpt .tflite .mlmodel .lora |
| Data science | .parquet .arrow .feather .h5 .hdf5 .npz .npy .lance .duckdb .ipynb |
| Code | .py .rs .go .ts .kt .swift .scala .cu .sol .vy .elm .zig |
| Archives | .zip .tar .gz .bz2 .xz .7z .zst |
| 3D / Design | .glb .gltf .obj .stl .usdz .blend .fig .sketch .psd |
| Media | .avif .webp .heic .jxl .opus .flac .webm .av1 |
| Config | .toml .hcl .tf .tfvars .nix .dhall .lock .env |
| Everything else | .wasm .sqlite .db .pem .crt .p12 + all standard types |
Any other format is accepted as application/octet-stream — nothing is blocked.
| Guest | Free | Pro | Team | |
|---|---|---|---|---|
| Max file size | 10 MB | 500 MB | 50 GB | 100 GB |
| Uploads / day | 5 | 20 | 500 | 5,000 |
| Max TTL | 24h | 48h | 30 days | 180 days |
| Storage | — | — | Unlimited | Unlimited |
| Price | Free | Free | $12/mo | $48/mo |
| Trial | — | — | 3-day free trial | 3-day free trial |
transfa ships an MCP server that lets Claude, Cursor, and any MCP-compatible agent upload and share files autonomously — no shell commands, no infrastructure setup.
npx -y transfa-mcp
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": { "transfa": { "command": "npx", "args": ["-y", "transfa-mcp"], "env": { "TRANSFA_API_KEY": "your-api-key" } } } }
The API key is optional — the server works in guest mode without one (10 MB / 24h limit).
| Tool | Description |
|---|---|
upload | Upload a file from the local filesystem. Returns agent_link (direct URL), human_link (share page), and sha256. Accepts run_id, step, consumer, intent for provenance. |
file_info | Get metadata about an upload — filename, size, SHA-256, expiry, download count, provenance fields. |
list_uploads | List recent uploads (requires API key). |
delete_upload | Delete an upload immediately. |
run_artifacts | Get all files uploaded under a run_id — the full provenance manifest for a pipeline run or agent session. |
When Claude has transfa as an MCP tool, it can:
upload → get a link → paste the link in the conversationagent_linkdelete_upload when doneimport transfa
result = transfa.upload("model.pt", ttl="24h", run_id="run-42", artifact=True) print(result.url, result.sha256)
transfa.download(result.id, output="model.pt")
manifest = transfa.run_artifacts("run-42")
async with transfa.AsyncClient() as client: result = await client.upload("model.pt")
See python/README.md for the full API reference.
transfa is also designed to be called from shell scripts, CI pipelines, and agents that prefer subprocess calls:
import subprocess, json
result = subprocess.run( ["tf", "upload", "output.csv"], capture_output=True, text=True ) data = json.loads(result.stdout) print(data["url"]) # https://transfa.sh/f/xK9mRp
Or use the REST API directly — no SDKs, no auth flows, just HTTP.
git clone https://github.com/colapsis/transfa.git
cd transfa cp .env.example .env # fill in your keys npm install --prefix server npm install --prefix cli npm run build --prefix frontend pm2 start ecosystem.config.cjs
Requirements: Node.js 18+, nginx (for SSL/proxy)
See nginx/transfa.conf for a production-ready nginx config.
| Variable | Description |
|---|---|
PORT | Server port (default: 3001) |
BASE_URL | Public URL e.g. https://transfa.sh |
STRIPE_SECRET_KEY | Stripe secret key for billing |
STRIPE_WEBHOOK_SECRET | Stripe webhook signing secret |
STRIPE_PRO_PRICE_ID | Stripe price ID for Pro plan |
STRIPE_TEAM_PRICE_ID | Stripe price ID for Team plan |
Found a vulnerability? Please email tansfa.sh@gmail.com or see SECURITY.md.
Do not open a public issue for security reports.
MIT — © 2026 transfa contributors