transfa MCP server
✓ 인증됨SHA-256 검증 및 TTL 적용이 가능한 서명된 링크를 통해 AI agent가 파일을 자율적으로 업로드, 공유 및 관리할 수 있도록 지원합니다.
다른 이름 colapsis/transfa, transfa-mcp
- 스타
- 21
- Tools
- 5
- 다운로드, 30일
- —
- 최신 버전
- 1.0.1
- 마지막 커밋
- 2026년 5월 15일
- 라이선스
- MIT
transfa MCP란?
transfa은(는) MCP server입니다. SHA-256 검증 및 TTL 적용이 가능한 서명된 링크를 통해 AI agent가 파일을 자율적으로 업로드, 공유 및 관리할 수 있도록 지원합니다. 5개 도구를 제공합니다. 예: upload, file_info, list_uploads.
프로젝트 README에서 생성된 요약
transfa MCP server 정보
transfa는 터미널 환경, 쉘 스크립트 및 AI agent를 위해 특별히 설계된 전문 파일 공유 솔루션입니다. .gguf 또는 .safetensors와 같은 대규모 머신러닝 모델을 포함하여 모든 형식의 파일을 업로드할 수 있으며, 최대 100 GB 크기까지 지원합니다. 이 서비스는 계정 없이도 작동하도록 구축되었으나, 고급 기능과 더 높은 제한 수치를 사용하려면 API key를 사용할 수 있습니다.
개발자는 transfa-mcp 패키지를 사용하여 Claude 또는 Cursor와 같은 MCP 호환 클라이언트에 이 server를 통합할 수 있습니다. 이 server는 upload, file_info, list_uploads, delete_upload, run_artifacts와 같은 특정 도구를 제공합니다. 이러한 도구를 통해 agent는 파일을 자율적으로 관리하고, SHA-256 체크섬으로 무결성을 검증하며, 비밀번호 보호, 다운로드 제한 및 TTL 설정을 통해 보안을 강화할 수 있습니다. 빌드 아티팩트, 코드 또는 데이터 과학 파일을 자동화된 파이프라인을 통해 이동시키는 데 이상적인 선택입니다.
활용 사례
- 1agent에 의한 자율 파일 공유AI agent가 생성된 보고서를 업로드하고 채팅을 통해 사용자에게 직접 링크를 제공할 수 있습니다.
- 2자동화된 CI/CD 아티팩트 관리개발자는 GitHub Actions 워크플로우에서 빌드 아티팩트와 커버리지 보고서를 직접 업로드하는 데 이 서비스를 사용할 수 있습니다.
- 3안전한 파일 배포비밀번호를 추가하고 특정 만료 시간을 설정하여 민감한 파일을 보호할 수 있습니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
transfa MCP 설치 방법
형식 확인: 2026년 11월 10일Cursor에 추가Goose에 추가Claude Code에 transfa MCP 설치
$ claude mcp add --env 'TRANSFA_API_KEY=<YOUR_TRANSFA_API_KEY>' transfa -- npx -y transfa-mcpCursor에 transfa MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"transfa": {
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "<YOUR_TRANSFA_API_KEY>"
}
}
}
}VS Code에 transfa MCP 설치
.vscode/mcp.json
{
"servers": {
"transfa": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "<YOUR_TRANSFA_API_KEY>"
}
}
}
}VS Code CLI에 transfa MCP 설치
$ code --add-mcp '{"name":"transfa","type":"stdio","command":"npx","args":["-y","transfa-mcp"],"env":{"TRANSFA_API_KEY":"<YOUR_TRANSFA_API_KEY>"}}'Claude Desktop에 transfa MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"transfa": {
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "<YOUR_TRANSFA_API_KEY>"
}
}
}
}Codex에 transfa MCP 설치
$ codex mcp add transfa --env 'TRANSFA_API_KEY=<YOUR_TRANSFA_API_KEY>' -- npx -y transfa-mcpCodex config.toml에 transfa MCP 설치
~/.codex/config.toml
[mcp_servers.transfa] command = "npx" args = ["-y", "transfa-mcp"] [mcp_servers.transfa.env] TRANSFA_API_KEY = "<YOUR_TRANSFA_API_KEY>"
Gemini CLI에 transfa MCP 설치
$ gemini mcp add -s user -e 'TRANSFA_API_KEY=<YOUR_TRANSFA_API_KEY>' transfa npx -- -y transfa-mcpGemini settings.json에 transfa MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"transfa": {
"command": "npx",
"args": [
"-y",
"transfa-mcp"
],
"env": {
"TRANSFA_API_KEY": "<YOUR_TRANSFA_API_KEY>"
}
}
}
}transfa MCP 도구 5
README에서 감지됨uploadfile_infolist_uploadsdelete_uploadrun_artifacts
| upload | — | |
| file_info | — | |
| list_uploads | — | |
| delete_upload | — | |
| run_artifacts | — |
구성
TRANSFA_API_KEY비밀Your Transfa API key. Free at transfa.sh — leave empty for guest mode (10 MB limit).
TRANSFA_BASE_URLCustom Transfa instance URL for self-hosted deployments. Defaults to https://transfa.sh
| 이름 | 설명 | 유형 |
|---|---|---|
| TRANSFA_API_KEY | Your Transfa API key. Free at transfa.sh — leave empty for guest mode (10 MB limit). | 비밀 |
| TRANSFA_BASE_URL | Custom Transfa instance URL for self-hosted deployments. Defaults to https://transfa.sh |
자동 검사
2026년 11월 14일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식
- 소스 저장소 연결 및 접근 가능colapsis/transfa is public and reachablegithub.com/colapsis/transfa ↗통과
- 패키지가 이 저장소를 소스로 명시transfa-mcp names colapsis/transfa as sourcenpmjs.com/package/transfa-mcp ↗통과
- 빌드 출처(Sigstore 증명)No build attestation published for this release검사되지 않음
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-05-15github.com/colapsis/transfa ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음No popular package one edit away from transfa-mcp통과
- 패키지 및 해당 종속성에 중요한 보안 권고 없음99 resolved dependencies checked; no critical advisoryosv.dev ↗통과
- 모델에 대한 숨겨진 지침 없음5 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 원격 엔드포인트가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기$ tf upload model.gguf
✓ Uploaded model.gguf (4.2 GB) → https://transfa.sh/f/xK9mRp
SHA-256 a3f8c2...d91b
Expires in 7 days
Why transfa?
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.
- No signup required — just install and upload
- Any format, any size — up to 100 GB; ML models, archives, binaries, code, media
- Built for agents — JSON API, SHA-256 checksums, idempotent uploads
- Password protection, download limits, TTL — full control over every link
- 100+ formats detected — MIME type auto-detection including
.gguf,.safetensors,.parquet,.ipynb, and more
Install
Node.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
Quick start
# Upload a file (no account needed)
tf upload photo.jpg
# Upload with custom TTL and password
tf upload secret.zip --ttl 24h --password hunter2
# Upload and pipe the URL to clipboard
tf upload bundle.tar.gz | grep url | awk '{print $2}' | pbcopy
# Download a file
tf download https://transfa.sh/f/xK9mRp
# List your uploads
tf list
# Delete an upload
tf delete xK9mRp
GitHub Actions
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 }}
- run: echo "${{ steps.upload.outputs.agent-link }}" >> $GITHUB_STEP_SUMMARY
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).
API
transfa is fully REST. Every operation the CLI does, you can do with curl or any HTTP client.
Upload
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 |
Download
# Direct download (no auth required)
curl -L https://transfa.sh/api/download/xK9mRp -o model.gguf
# Password-protected
curl -L "https://transfa.sh/api/download/xK9mRp?password=hunter2" -o secret.zip
File info
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
}
List uploads
curl https://transfa.sh/api/upload \
-H "Authorization: Bearer $TF_KEY"
Delete
curl -X DELETE https://transfa.sh/api/upload/xK9mRp \
-H "Authorization: Bearer $TF_KEY"
Supported formats
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.
Plans
| 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 |
MCP server (Claude, Cursor, and any MCP-compatible agent)
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
Claude Desktop config
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).
Available MCP tools
| 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. |
Example agent workflow
When Claude has transfa as an MCP tool, it can:
- Generate a report → call
upload→ get a link → paste the link in the conversation - Pass a file to another agent by sharing the
agent_link - Clean up with
delete_uploadwhen done
Python SDK
import transfa
# Upload
result = transfa.upload("model.pt", ttl="24h", run_id="run-42", artifact=True)
print(result.url, result.sha256)
# Download (SHA-256 verified)
transfa.download(result.id, output="model.pt")
# Provenance manifest for a run
manifest = transfa.run_artifacts("run-42")
# Async
async with transfa.AsyncClient() as client:
result = await client.upload("model.pt")
See python/README.md for the full API reference.
Use with AI agents (script/subprocess)
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.
Self-hosting
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.
Environment variables
| 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 |
Security
Found a vulnerability? Please email tansfa.sh@gmail.com or see SECURITY.md.
Do not open a public issue for security reports.
License
MIT — © 2026 transfa contributors
transfa MCP 질문
transfa MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add --env 'TRANSFA_API_KEY=<YOUR_TRANSFA_API_KEY>' transfa -- npx -y transfa-mcp를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
transfa MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
transfa MCP는 어떤 도구를 제공하나요?
5개 도구를 제공합니다. 예: upload, file_info, list_uploads, delete_upload, run_artifacts.
transfa를 사용하려면 계정이 필요한가요?
아니요, 회원가입 없이도 파일을 업로드할 수 있으며 마찰 없는 사용을 위해 설계되었습니다.
지원되는 최대 파일 크기는 얼마인가요?
최대 100 GB 크기의 파일을 지원합니다.
공유 링크를 보호할 수 있나요?
네, 모든 링크에 비밀번호 보호를 추가하거나 다운로드 제한 및 유효 시간(TTL)을 설정할 수 있습니다.
MCP server 사용 시 API key가 필수인가요?
API key는 선택 사항입니다. 서버는 10 MB 및 24시간 제한이 적용되는 게스트 모드로 동작할 수 있습니다.