Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Find open models and get download links with the SHA-256 each file must have.
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.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Funciona en Claude para web, escritorio y móvil:
https://hub.uor.foundation/mcpEjecuta esto en tu terminal
claude mcp add --transport http model-hub https://hub.uor.foundation/mcpPégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"model-hub": {
"url": "https://hub.uor.foundation/mcp"
}
}
}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": {
"model-hub": {
"type": "http",
"url": "https://hub.uor.foundation/mcp"
}
}
}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ú.
ChatGPT solo se conecta a servidores en internet:
https://hub.uor.foundation/mcpLos nombres de los menús pueden variar un poco según el plan y con el tiempo.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Todavía no hemos leído la lista de herramientas de este servidor; revisamos los endpoints por turnos.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026
Quien lo publicó (hub.uor.foundation) no es el dueño del repo (Hologram-Technologies); puede que otra persona lo haya listado
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Aún sin revisar; revisamos los endpoints por turnos
Aún sin revisar; revisamos los endpoints por turnos
Aún sin revisar; leemos la lista de herramientas cuando revisamos el endpoint
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ó 0 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.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en la nube del creador. Te conectas por internet sin instalar nada, pero lo que envías pasa por los servidores del creador.
El repo de GitHub cambió por última vez –, y la última versión (1.0.0) llegó al registro hace 44 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, LexPact UK Contracts
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.
Generate UK-law contracts: NDA, service, freelance, recruiter terms of business, IR35.
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.
The catalog of trending open models with the content address of every file, published at hologram-technologies.github.io/hologram-live/model-hub/.
Every model page lists its files by address and offers Verify: the browser fetches small files from Hugging Face and ModelScope and hashes them against the address index. No server of ours is involved. Pulling models onto a hologram-live node comes with the Model Hub .holo application (issue #76, ADR 023 in #75).
HF_ENDPOINTexport HF_ENDPOINT=https://gethologram.ai
hf download sentence-transformers/all-MiniLM-L6-v2
Everything that downloads from Hugging Face honours that variable (hf, huggingface_hub, transformers, diffusers, sentence-transformers, llama.cpp -hf), so the hub needs no client of its own. deploy/hub-resolve.mjs answers in Hugging Face's dialect from the address index and sends every file request, as a redirect, to a source that passed the last health probe: Hugging Face first (its CDN is the fastest), then ModelScope, then IPFS. No weight byte passes through the hub. main is the indexed revision, so a build gets the same bytes tomorrow. /via/ipfs, /via/modelscope or /via/huggingface in front of the path pins the first choice of source (HF_ENDPOINT=https://gethologram.ai/via/ipfs). …/resolve/main/SHA256SUMS is generated for every model, so a download is checked with plain sha256sum -c; the clients themselves verify nothing.
The dialect was recorded from the clients, not guessed (web/qa/hf-dialect/recorder.mjs): model info, the tree listing, HEAD and GET on resolve, and the Xet read-token route, which is a redirect to Hugging Face because huggingface_hub 1.32 follows our redirect on HEAD, meets Hugging Face's Xet headers there and asks this endpoint for the token. A user's Hugging Face token reaches whatever HF_ENDPOINT names: the front Caddy removes Authorization and Cookie before the service sees a request, and gated models are refused, never proxied. A model outside the index answers 404 with a sentence and is recorded in state/resolve/requested.txt.
Measured 2026-09-18 with web/qa/hf-dialect/matrix.sh in python:3.12-slim against the public URL, on huggingface_hub 1.32.0 and 0.36.2: hf download and snapshot_download of a whole model (30 of 30 files matching SHA256SUMS), cache reuse, transformers AutoConfig and AutoTokenizer, a plain GET and a Range request, and the clients' own typed errors for an unknown model and revision. Failover, measured the same day with huggingface.co, hf.co and Hugging Face's CDN hosts blackholed in the client container and Hugging Face marked down on the hub: hf download and snapshot_download of the whole model, 30 of 30 files matching, transformers loading, in 110 s from ModelScope and IPFS; and with ModelScope down as well, the same from IPFS alone in 126 s (135 reroutes logged). The first attempt had failed at .gitattributes: the IPFS archives had been packed without dotfiles (ipfs-car skips hidden paths). pin-model.sh now packs them and all eleven models were pinned again. Test whole repositories, not single files.
ollama pull gethologram.ai/bartowski/MiniCPM5-2B-GGUF:Q4_K_M
The same service speaks Ollama's registry dialect for every GGUF repository in the index: the manifest's model layer is the GGUF file's SHA-256 from the index, the blob request is a 307 to a live source, and Ollama verifies the digest itself. The chat template and parameters come from Hugging Face's own manifest, accepted only when it names the very bytes our index names, and kept so the pull still works when Hugging Face is away (measured: Ollama 0.34.2 pulled, verified and ran a model; with Hugging Face blackholed the same pull completed from ModelScope). OCI clients get the same models as CNCF ModelPack artifacts from the same routes (oras pull gethologram.ai/hexgrad/kokoro-82m:latest, lowercase as OCI requires; measured: 72 files, every one matching), and agents get three tools over MCP at https://gethologram.ai/mcp. GET /api/models?search=… lists and searches in Hugging Face's shape (HfApi.list_models works), which is also the cheap path for agents. Why these dialects, what the research found, the path map and what comes next: docs/one-endpoint.md.
Download saves a whole model as one .zip, any size, in any current browser. A small service worker (web/src/zip-sw.js, which answers only zip/… and never a page) assembles the archive while it streams, so the browser's own download manager saves it with a real progress bar and nothing is held in memory: the zip is uncompressed, so its exact size is declared before the first byte. Every file is hashed as it passes and compared with its address from the index; a wrong byte fails the download and nothing is kept. Each file comes from the first source that answers (Hugging Face, ModelScope, IPFS), a dropped connection resumes from the byte it reached, from the same source or the next, and the menu beside the button restricts the zip to one source. Inside every zip: SHA256SUMS (sha256sum -c SHA256SUMS checks it offline, forever) and HOLOGRAM.json (model, revision, index manifest, which source delivered each file). zip/ / /auto.zip is the link; data/files/ / .json is the file list it reads. Without a service worker the page falls back to the file picker stream (Chrome, Edge) or an in-memory zip up to 1.5 GB.
Measured 2026-09-18 (web/qa/zip-proof, Docker on the hub host): a generated 5.9 GB zip saved with the declared size exactly, valid, in Chromium 131 (140 s, browser memory 377 to 471 MB), WebKit 18.2 (38 s, 383 to 419 MB) and stock Firefox 156 (169 s at 60 MB/s, container under 1 GB). A connection cut mid-file resumed and verified; a planted wrong address failed the download in all three with nothing left on disk. Playwright's own Firefox build cannot judge downloads: an ordinary 6 GB server download exhausts its memory too. node qa/zip-size.test.mjs holds the declared size and the written bytes together (empty file, UTF-8 names, 65,536 entries, a file above 4 GiB).
The header pill Index opens every day the catalog was captured, the way the Wayback Machine opens a page's past. Choosing a day switches browse, filters, search and every model page to that day's index; the pill turns amber, a banner names the day, and Back to latest returns. ?at=YYYY-MM-DD on any page opens the nearest captured day on or before that date, so a link to a day is a link to exactly what it showed.
Each day is captured once by deploy/archive.sh after the daily registry push: the day's files are packed into a CAR (IPFS archive) whose root CID is computed locally, pinned through Filebase, and accepted only if the CID Filebase reports is the same. The day is appended to the ledger archive.json (hologram.model-hub.archive/v1), served at gethologram.ai/archive.json and pinned itself:
| Field | Meaning |
|---|---|
gateway, mirror, registry | Where a day is read: / on IPFS and hologram pull : on the hub registry for every day; / on the hub for the current day only. The mirror only makes reads fast; it is never trusted |
days[].date, cid | The day and the root CID of its directory (index.json, models.json, one JSON per model) |
days[].index | BLAKE3 of that day's index.json, which names every other file by address |
days[].prev, prev_ledger | The previous day's CID and the previous ledger's CID: a hash chain, so history cannot be rewritten silently |
days[].models, addressed, files, bytes, source, archived | What the day held and when it was captured |
The browser trusts none of the sources: it reads index.json, hashes it against the ledger's index, then hashes every file against the address the index records, before anything is shown. Bytes that fail are refused and the next source is tried (measured: a corrupted mirror file was rejected and the gateway's copy used). Verified bytes are kept in the Cache API under their content address, so a revisited day is instant and works offline. Verify and downloads stay with the latest index because they check live mirrors. at/ .json stubs give agents the CID, index address and read locations for a day. The hub's mirror holds today only; the registry keeps every day's tag (its store also holds the hub's published objects, so it is never rebuilt); a past day is read in the browser from IPFS, and its first visit can take a minute while the gateway fetches it (measured 25 to 55 s per file cold). What is immutable: the captures and the chain. What is one operator: the daily writer (a VPS cron) and the single pinning provider.
just model-hub-site # catalog snapshot (if missing), token lint, static build → apps/model-hub/web/dist
just model-hub-data # refresh the catalog snapshot
BASE=/path/ builds for a site served under a path. GitHub Pages publishes it beside the documentation from .github/workflows/release-docs.yml: on pushes to apps/model-hub, daily with a fresh snapshot, and on manual runs. The documentation itself is always built from its latest docs-v* tag.
The catalog comes from Hugging Face's trending list joined with the model address index at humuhumu33.github.io/hologram-api (HOLOGRAM_API overrides it; HF_TOKEN avoids rate limits).
Every color, size, space, radius and font comes from Hologram-Technologies/hologram-brand-kit, vendored by web/scripts/vendor-kit.mjs at develop bce3bdf59 (the revision Desktop uses). Three gap tokens (--success, --success-foreground, --muted-foreground-subtle) come from the kit's open PR #1. web/scripts/lint-tokens.mjs fails on any literal color, size, radius, font or inline style in the product code.
One top-level menu — Models, Registry, Docs — on every page of the site, with the section you are in marked aria-current and drawn in the accent. It is built once, by topNav() in web/build.mjs, and rendered by header(), which every generated page uses. The Registry page ships as its own finished file from web/public/registry/, so the build puts the same header() output into it at two marks in that file ( , ) rather than letting a second copy exist. The shared parts of the page — the brand aliases, the resets, the shell, the controls, the header, the theme switch, the sign-in — live in web/src/chrome.css and web/src/chrome.js; web/src/styles.css is the pages that hang off them.
npm run menu walks every page shape at two themes and twelve widths and fails if any of them carries a different menu, marks the wrong section, or draws the mark below AA.
| Path | What |
|---|---|
web/build.mjs | Static generator: landing, browse page, one page per model, one page per Registry artifact, and the shared header |
web/src/ | Rendering, client code, styles, generated brand tokens; chrome.css + chrome.js are the shared header |
web/scripts/ | data.mjs (catalog snapshot), registry.mjs (every Registry row's profile and logo from its source API), vendor-kit.mjs, lint-tokens.mjs |
web/vendor/hologram-brand-kit/ | Vendored kit CSS, tokens, fonts and logos |
web/public/wallpapers/ | Immersive theme wallpapers |
| web/qa/ | Layout, contrast and animation audits used during design review; menu.mjs gates the top-leve
Solo se muestra el principio; lee el resto en el repo