{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_kuynue4aykb9","handle":"kdeconnect-mcp","url":"https://wellknown.network/agents/kdeconnect-mcp","links":{"self":"https://wellknown.network/agents/kdeconnect-mcp/record.json","html":"https://wellknown.network/agents/kdeconnect-mcp","markdown":"https://wellknown.network/agents/kdeconnect-mcp/record.md","api":"https://wellknown.network/api/v1/agents/kdeconnect-mcp","status":"https://wellknown.network/api/v1/agents/kdeconnect-mcp/status","claim":"https://wellknown.network/agents/kdeconnect-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/kdeconnect-mcp/claim.json","badge":"https://wellknown.network/agents/kdeconnect-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/kdeconnect-mcp/history","tools":"https://wellknown.network/api/v1/agents/kdeconnect-mcp/tools"},"ard":{"identifier":"urn:air::server:kdeconnect-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"kdeconnect-mcp","summary":"MCP server que expone llamadas, SMS y notificaciones de un movil via KDE Connect, con redaccion de PII (OTP, tarjetas, IBAN, telefonos).","description":"# kdeconnect-mcp\n\n[![GitHub stars](https://img.shields.io/github/stars/DaBlitzStein/kdeconnect-mcp?style=social)](https://github.com/DaBlitzStein/kdeconnect-mcp)\n\nMCP server que expone **llamadas, SMS y notificaciones** de un movil Android a\nun agente, via **KDE Connect**, con un sistema de **PII** que impide que los\ncodigos de autorizacion (OTP), numeros de tarjeta, IBAN y telefonos completos\nlleguen al agente o toquen el disco. Los nombres de contacto y de app si son\nvisibles.\n\n```\nmovil Android ──KDE Connect v8──> kcd (Go, headless) ──socket Unix──> listener ──PII──> SQLite ──MCP──> agente\n```\n\n## Que redacta (y que no)\n\n| Categoria | Ejemplo | Resultado |\n|---|---|---|\n| `otp` | `Tu codigo de autorizacion es 483920` | `[REDACTADO:otp]` |\n| `card` | `407-1234567-8901234` | `[REDACTADO:card]` |\n| `iban` | `ES91 2100 0418 4502 0005 1332` | `[REDACTADO:iban]` |\n| `phone` | `+34 600 123 456` | `+34 ***456` (configurable) |\n| Nombres | `Ana`, `Mama`, `BBVA` | sin cambios |\n\nGarantias:\n\n1. **Redaccion en la ingesta**: el listener redacta antes de `INSERT`. El texto\n   original solo existe en memoria durante el evento.\n2. **Hash con HMAC** (`content_hash`) para deduplicar/auditar sin guardar texto.\n3. **Defensa en profundidad**: las respuestas MCP vuelven a pasar por el\n   redactor, tambien las lecturas en vivo de DBus.\n4. **Logs sin contenido**: el listener registra kind/app/contadores, nunca el\n   texto. Los tests E2E escanean el fichero SQLite (incluido `-wal`) buscando\n   los secretos simulados y fallan si aparecen.\n\nEl detector de OTP combina palabras clave (codigo, autorizacion, verificacion,\notp, code, password...) con ventana de contexto y lista de **apps sensibles**\n(authenticator, authy, bitwarden...). Anade tus bancos a `sensitive_apps` en la\nconfig para que cualquier codigo suyo se redacte aunque falte la palabra clave.\n\n## Requisitos\n\n- Linux; vale **headless** (sin sesion grafica, sin Qt/KDE).\n- Sesion de usuario con systemd (`systemctl --user`) para kcd …","publisher":null,"homepage":"https://github.com/DaBlitzStein/kdeconnect-mcp","repository":"https://github.com/DaBlitzStein/kdeconnect-mcp","version":"0.1.0","license":null,"protocols":["mcp"],"tags":["agents","kdeconnect","llm","mcp","notifications","privacy","redaction","sms"],"pricing":null,"endpoints":[{"url":"pypi:kdeconnect-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi"}},"derived":{"capabilities":[{"slug":"communication.sms-voice","name":"SMS & Voice","confidence":1,"provenance":"declared"},{"slug":"communication.notifications","name":"Notifications","confidence":1,"provenance":"declared"}],"categories":["communication"],"language":"es"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"kdeconnect-mcp","registry":"pypi","observedAt":"2026-10-28T08:28:02.180Z","publishedAt":"2026-09-26T11:54:07.388488Z","latestVersion":"0.1.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"kdeconnect-mcp","url":"https://pypi.org/project/kdeconnect-mcp/","firstSeenAt":"2026-09-28T00:24:00.344Z","fetchedAt":"2026-10-28T08:26:20.749Z","normalizedAt":"2026-10-28T08:26:20.749Z"}]},"firstSeenAt":"2026-09-28T00:24:00.344Z","updatedAt":"2026-10-28T08:28:02.180Z"}