Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Agent-first E2EE file transfer over MCP: move files between machines in one tool call, gone in 24h.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
YAFL_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"yafl": {
"command": "npx",
"args": [
"-y",
"@yafldev/mcp"
],
"env": {
"YAFL_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add yafl --env YAFL_API_KEY=your-value -- npx -y @yafldev/mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"yafl": {
"command": "npx",
"args": [
"-y",
"@yafldev/mcp"
],
"env": {
"YAFL_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"yafl": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@yafldev/mcp"
],
"env": {
"YAFL_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified against the domain yafl.dev (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: YAFL_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.1.6) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Zendesk
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
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.
Zendesk MCP Pack — tickets, users, organizations via OAuth.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Your AI agent moves files between machines with one MCP call — encrypted client-side, links gone in 24 hours.
This repository is the open-source MCP server and CLI client for YAFL. Your agents (Claude Desktop, Claude Code, Cursor, any MCP client — including agents on remote VPSes) hand files across environments — laptop ↔ VPS, agent ↔ agent — with a single tool call, instead of a human dragging files into WeTransfer and copying links around. Files are encrypted on your machine before they leave it; the service only ever sees ciphertext.
The client is open source so you can audit exactly what touches your files. The YAFL service lives at yafl.dev.
Add YAFL to your MCP client config:
{
"mcpServers": { "yafl": { "command": "npx", "args": ["-y", "@yafldev/mcp"], "env": { "YAFL_API_KEY": " " } } } }
Works in Claude Desktop, Claude Code, Cursor, and any MCP client. Claude Desktop users can install the one-click .mcpb bundle. Prefer the CLI:
curl -fsSL https://yafl.dev/install.sh | sh
No API key is required to start. On the first tool call the server returns a guided error pointing to yafl login — an RFC 8628 device flow: the agent shows a short code, you approve it in a browser, and the agent holds its own revocable key. Built for headless boxes. Runs via npx (Node.js 18+); no global install needed.
| Tool | Call | What it does | |
|---|---|---|---|
upload_file | { path, password?, oneTime? } | Encrypts client-side, uploads ciphertext, returns the share link. Zips a directory first. Optional password layer; optional one-time link that burns after the first download. | |
download_file | { url, destDir?, password? } | Fetches, decrypts, writes the file to local disk. | |
get_status | { url } | Checks liveness and remaining TTL — no bytes downloaded. | |
list_files | { limit? } | The caller's own transfers, metadata only. | |
delete_file | `{ id \ | url }` | Revoke one of your transfers before expiry. |
email_link | { link, recipient } | Email a share link straight to a recipient — the agent-to-human handoff without leaving the session. | |
login | device flow | Authorize this agent (RFC 8628); it holds its own revocable key. |
Errors are stable and machine-readable — your agent gets expired or not_found, not a mystery 404.
The file is encrypted with a fresh AES-256-GCM key before upload. The key travels only in the share URL's #fragment — browsers never send fragments to servers, so it is never transmitted to, logged by, or stored on any server. An optional link password adds a second derived layer the server never sees either, and a one-time link self-destructs after the first successful download. File bytes go directly to storage via pre-signed URLs; the app server never handles them, and storage only ever receives ciphertext. Access stops at 24 hours. Free tier: 100 MB per file.
The API key is not the decryption key. If a machine is compromised and its YAFL key is stolen, the attacker can at most see ciphertext metadata for that key's own transfers — file contents stay unreadable, because decryption keys exist only in the links you exchanged. Revoke the key and move on. This is why the recommended setup is one key per agent, per machine — keys are named and individually revocable.
@yafldev/mcp · @yafldev/cliMIT — see LICENSE.