Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
OS keychain secrets for AI coding agents, over MCP.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
QRING_BACKEND, QRING_FILE_PASSPHRASE, QRING_FILE_BACKEND_PATH, QRING_CONFIG_DIRLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"q-ring": {
"command": "npx",
"args": [
"-y",
"@i4ctime/q-ring"
],
"env": {
"QRING_BACKEND": "your-value",
"QRING_FILE_PASSPHRASE": "your-value",
"QRING_FILE_BACKEND_PATH": "your-value",
"QRING_CONFIG_DIR": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add q-ring --env QRING_BACKEND=your-value --env QRING_FILE_PASSPHRASE=your-value --env QRING_FILE_BACKEND_PATH=your-value --env QRING_CONFIG_DIR=your-value -- npx -y @i4ctime/q-ringCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"q-ring": {
"command": "npx",
"args": [
"-y",
"@i4ctime/q-ring"
],
"env": {
"QRING_BACKEND": "your-value",
"QRING_FILE_PASSPHRASE": "your-value",
"QRING_FILE_BACKEND_PATH": "your-value",
"QRING_CONFIG_DIR": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"q-ring": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@i4ctime/q-ring"
],
"env": {
"QRING_BACKEND": "your-value",
"QRING_FILE_PASSPHRASE": "your-value",
"QRING_FILE_BACKEND_PATH": "your-value",
"QRING_CONFIG_DIR": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
QRING_BACKEND envQRING_FILE_BACKEND_PATH envQRING_CONFIG_DIR envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub I4cTime, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: QRING_FILE_PASSPHRASE
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.19.0) llegó al registro ayer.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, TF Rooms
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
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.
Live room availability, rates and stay quotes for 12 New Leaf motels in Twin Falls, Idaho.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
OS keychain secrets for AI coding agents, over MCP.
Website: qring.i4c.studio
Stop pasting API keys into plain-text .env files or wrestling with clunky secret managers. q-ring securely anchors your credentials to your OS's native vault (macOS Keychain, Linux Secret Service, Windows Credential Vault) and supercharges them with mechanics from quantum physics.
📖 [View the Official Documentation](https://qring.i4c.studio/docs) for a complete CLI reference, MCP prompt cookbooks, and architecture details.
q-ring is designed to be installed globally so it's available anywhere in your terminal. Pick your favorite package manager:
# pnpm (recommended)
pnpm add -g @i4ctime/q-ring
npm install -g @i4ctime/q-ring
yarn global add @i4ctime/q-ring
brew install i4ctime/tap/qring
The repo ships a Dockerfile that builds the MCP server and exposes it through mcp-proxy — useful for hosted MCP deployments (e.g. Glama) or keeping the server off the host entirely:
git clone https://github.com/I4cTime/q-ring.git
cd q-ring docker build -t qring-mcp . docker run --rm -p 8080:8080 qring-mcp
Note: inside a container there is no OS keychain (GNOME Keyring / macOS Keychain), so this path is for the MCP protocol surface, ephemeral use, and CI experiments — not for durable local secret storage. For day-to-day use install the CLI natively via one of the package managers above.
# 1️⃣ Store a secret (prompts securely if value is omitted)
qring set OPENAI_API_KEY sk-...
qring get OPENAI_API_KEY
qring list
qring generate --format api-key --prefix "sk-" --save MY_KEY
qring health
qring doctor
qring completion zsh > ~/.zsh/completions/_qring # also: bash, fish
A single secret can hold different values for dev, staging, and prod simultaneously. The correct value resolves based on your current context.
# Set environment-specific values
qring set API_KEY "sk-dev-123" --env dev qring set API_KEY "sk-stg-456" --env staging qring set API_KEY "sk-prod-789" --env prod
QRING_ENV=prod qring get API_KEY # → sk-prod-789 QRING_ENV=dev qring get API_KEY # → sk-dev-123
qring inspect API_KEY
Once a secret carries per-environment states, promotion replaces copy-paste: compare two environments key by key (statuses only, never values), then copy a value from one state to another. diff exits 1 on drift, so it doubles as a CI gate; promote refuses to overwrite a differing target unless you say so.
# What differs between staging and prod? (same / different / missing on one side)
qring diff staging prod
qring promote DATABASE_URL --from staging --to prod
qring promote DATABASE_URL --from staging --to prod --force --json
MCP agents get the same two operations as diff_environments and promote_secret.
q-ring auto-detects your environment without explicit flags. Resolution order:
--env flagQRING_ENV environment variableNODE_ENV environment variablemain/master → prod, develop → dev).q-ring.json project config# See what environment q-ring detects
qring env
echo '{"env": "staging", "branchMap": {"release/*": "staging"}}' > .q-ring.json
Secrets can have a time-to-live. Expired secrets are blocked from reads. Stale secrets (75%+ lifetime) trigger warnings.
# Set a secret that expires in 1 hour
qring set SESSION_TOKEN "tok-..." --ttl 3600
qring set CERT_KEY "..." --expires "2026-06-01T00:00:00Z"
qring health
Every secret read, write, and delete is logged with a tamper-evident hash chain. Access patterns are tracked for anomaly detection.
# View audit log
qring audit qring audit --key OPENAI_KEY --limit 50
qring audit --anomalies
qring audit:verify
qring audit:export --format json --since 2026-03-01 qring audit:export --format csv --output audit-report.csv
Generate cryptographically strong secrets in common formats.
qring generate # API key (default)
qring generate --format password -l 32 # Strong password qring generate --format uuid # UUID v4 qring generate --format token # Base64url token qring generate --format hex -l 64 # 64-byte hex qring generate --format api-key --prefix "sk-live-" --save STRIPE_KEY
Link secrets across projects. When you rotate one, all entangled copies update automatically.
# Entangle two secrets
qring entangle API_KEY API_KEY_BACKUP
qring set API_KEY "new-value"
qring disentangle API_KEY API_KEY_BACKUP
Create secrets that exist only in memory. They never touch disk. Optional TTL and max-read self-destruction.
# Create an ephemeral secret (returns tunnel ID)
qring tunnel create "temporary-token-xyz" --ttl 300 --max-reads 1
qring tunnel read tun_abc123
qring tunnel list
Pack secrets into AES-256-GCM encrypted bundles for secure transfer between machines. Two ways to lock a bundle:
qring teleport keygen once and shares their recipient string (qring1…, an X25519 public key; the private half lives in their OS keyring). pack --to encrypts a fresh content key to every recipient — HKDF-SHA256 over an ephemeral X25519 agreement, AES-256-GCM throughout, node:crypto only — so nothing secret travels beside the bundle and nobody has to whisper a passphrase.# Passphrase bundle (prompts)
qring teleport pack --keys "API_KEY,DB_PASS" > bundle.txt cat bundle.txt | qring teleport unpack
qring teleport keygen # → qring1a3F… (share this; keep the keyring) qring teleport identity # print it again later
qring teleport pack --keys "API_KEY,DB_PASS" --to qring1a3F… --to qring1Zz9… > bundle.txt
cat bundle.txt | qring teleport unpack
qring teleport unpack --dry-run
Import secrets from .env files directly into q-ring. Supports standard dotenv syntax including comments, quoted values, and escape sequences. The CLI accepts either a file path or raw content; the import_dotenv MCP tool only accepts raw content (it never reads files from disk) so an agent can't coerce it into reading arbitrary local files.
# Import all secrets from a .env file
qring import .env
qring import .env --project --skip-existing
qring import .env --dry-run
Export only the secrets you need using key names or tag filters.
# Export specific keys
qring export --keys "API_KEY,DB_PASS,REDIS_URL"
qring export --tags "backend"
qring export --keys "API_KEY,DB_PASS" --format json
Filter qring list output by tag, expiry state, or key pattern.
# Filter by tag
qring list --tag backend
qring list --expired
qring list --stale
qring list --filter "API_*"
qring has OPENAI_API_KEY --quiet && echo "configured"
Declare required secrets in .q-ring.json and validate project readiness with a single command.
# Validate project secrets against the manifest
qring check
Solo se muestra el principio; lee el resto en el repo