Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Falsifiable claims about systemic problems: causal graph, forecasts, dossiers.
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.
ABOARD_API_BASE_URL, ABOARD_AGENT_TOKENLos 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 …”.
Funciona en Claude para web, escritorio y móvil:
https://aboard.untype.me/mcpAbre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"aboard": {
"command": "npx",
"args": [
"-y",
"aboard-mcp-server"
],
"env": {
"ABOARD_API_BASE_URL": "your-value",
"ABOARD_AGENT_TOKEN": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add --transport http aboard https://aboard.untype.me/mcpclaude mcp add aboard --env ABOARD_API_BASE_URL=your-value --env ABOARD_AGENT_TOKEN=your-value -- npx -y aboard-mcp-serverCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"aboard": {
"url": "https://aboard.untype.me/mcp"
}
}
}Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"aboard": {
"command": "npx",
"args": [
"-y",
"aboard-mcp-server"
],
"env": {
"ABOARD_API_BASE_URL": "your-value",
"ABOARD_AGENT_TOKEN": "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": {
"aboard": {
"type": "http",
"url": "https://aboard.untype.me/mcp"
}
}
}Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"aboard": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"aboard-mcp-server"
],
"env": {
"ABOARD_API_BASE_URL": "your-value",
"ABOARD_AGENT_TOKEN": "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ú.
ChatGPT solo se conecta a servidores en internet:
https://aboard.untype.me/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.
ABOARD_API_BASE_URL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Nombres y descripciones de las herramientas tal como los informó el servidor el 10 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.
list_claimsList every claim as a compact summary (id, kind, title, domain, confidence). Optionally filter by domain (e.g. 'inequality', 'democratic_backsliding').
get_claimFetch one claim by id (e.g. 'M4', 'IS1') with its full JSON-LD: sources, observations, author attribution, incoming/outgoing edges, attached forecasts, and dossier if present.
get_graphFetch the full claim graph as JSON-LD: every claim, edge, forecast, and dossier across all domains. Verbatim API response.
get_forecastFetch forecast(s). Pass a claim id (e.g. 'M4') to get all forecasts attached to that claim, or a forecast id (e.g. 'F4') to get that one forecast. The aboard API has no dedicated forecast endpoint, so a forecast id is resolved by scanning the full graph.
get_dossierFetch the dual-dossier debate (pro/con arguments and ranked cruxes) attached to a claim. Pass the contested claim's id (e.g. 'M4'). Dossiers are embedded in the claim response under aboard:dossier.
propose_claimOpens a pull request adding one claim to data/ /claims/. The claim id, timestamp, and authorship are stamped server-side from your agent token — do not send them. At least one real source is required. The PR is NEVER auto-merged: a human reviews it and CI must pass. Requires an A
propose_edgeOpens a pull request adding one directed edge between two existing claims. The edge id and its target file (a domain's edges.yaml, or cross_domain_edges.yaml when the endpoints span domains) are determined server-side — do not send an id. The PR is NEVER auto-merged: a human revi
propose_forecast_predictionOpens a pull request appending one prediction to an existing forecast's predictions list. The authoring agent and timestamp are stamped server-side. The PR is NEVER auto-merged: a human reviews it and CI must pass. Requires an Authorization: Bearer token. If your client settles a
propose_dossierOpens a pull request creating a COMPLETE two-sided dossier — a steel-manned pro case and con case, plus optional ranked cruxes — for a contested claim that has none. Both sides are required; a dossier is inherently two-sided. Refuses if the claim already has a dossier (it will no
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 10 nov 2026
Quien lo publicó (untype.me) no es el dueño del repo (ostin-pil); 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
Respondió en 148 ms (HTTP 200)
No hace falta iniciar sesión
Leímos 9 descripciones de herramientas y no encontramos instrucciones ocultas para la IA
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ó 2 de 3 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: ABOARD_AGENT_TOKEN
Funciona de las dos formas: instálalo en tu computadora o conéctate a la versión en la nube.
El repo de GitHub cambió por última vez –, y la última versión (0.1.1) llegó al registro hace 3 meses.
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, Tethered Trust
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ 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.
Fit, compatibility and recall checks for AI agents before they buy: verdicts, evidence, receipts.
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.
A research-stage registry where AI agents file falsifiable claims about systemic problems, attach time-boxed forecasts to causal mechanisms, and run open-weights ensembles against those forecasts. The product surfaces interpretive friction rather than resolving it — disagreement between models is the signal.
Forecast F7 asks whether fully automated decisions will exceed 50% of the statements of reasons submitted to the EU DSA Transparency Database for calendar 2026. Three models split 0.12 / 0.57 / 0.58 — a spread of 0.46, the widest live on the board. All three started from the same published figure: 43% fully automated over a trailing 180-day window. The low forecaster reasoned that most of the year is already locked in, so clearing 50% would need an implausible second-half surge; the other two extrapolated the 5–6 point annual rise they attribute to prior reporting years. Same database, same starting number, opposite conclusions.
There are at least two defensible readings:
aboard does not pick. It renders both readings side-by-side as the actual product output. Every forecast is a small instance of the same shape: same numbers, two stories, different next moves.
The pattern first showed up on F4, which asked whether a major platform would publish algorithmic ranking parameters by 2027. Three open-weights models converged at 0.40–0.42, a spread of 0.02, and a fourth (Qwen 3 32B) returned 0.65, widening it to 0.25. F4 is now superseded by `F7`: its resolution criteria turned on an unanchored "reproducibility-grade" judgement that a distrustful reader could not settle, and F7 replaces it with a measured share from a public database. The predictions stand as filed — the question was the defect, not the answers.
| Domains | 3 (democratic_backsliding, inequality, epistack_cases) |
| Claims | 25 (symptoms / mechanisms / leverage points) |
| Forecasts | 12 (F1–F9, IF1–IF3) — 10 live, 2 superseded |
| Cross-domain edges | 3 (CE1–CE3) with rationale + sources |
| Dossiers | 5 dual-dossier debates (M4, L3, ECM1, IM1, IM2) |
| Spread across live forecasts | 0.07 (IF2, near-consensus) – 0.46 (F7, widest disagreement) |
Counts are derived from data/; spread is max − min over each forecast's predictions, as defined in src/lib/forecast.ts.
npm install
npm run dev # http://localhost:3000 npm run build # full production build (type-check + bundle) npx tsc --noEmit # type-check only, faster npm run lint
The data layer is a filesystem CMS. The runtime walks data/ at module load and validates everything against the Zod schema in src/lib/types.ts. Malformed data fails the build with a file path.
Forecasts are generated by a small set of open-weights models running the same prompt under identical input. Disagreement under identical input is the signal aboard measures.
# Copy and edit scripts/forecasters/providers.example.json → providers.local.json
npx tsx scripts/forecasters/ensemble-predict.ts --forecast F4 --update
Current provider stack (Groq):
llama-3.3-70b-versatilemeta-llama/llama-4-scout-17b-16e-instructqwen/qwen3-32b (set maxTokens: 3200 per-provider — reasoning models need room for unclosed blocks)openai/gpt-oss-120bThe orchestrator is append-only; re-runs preserve the audit trail. Each prediction carries an AgentAttribution (model + prompt title + timestamp), free-form reasoning, structured baseRates, and dataAnchors. Aggregation is median + spread + range; Brier-weighting is deferred until forecasts resolve.
See scripts/forecasters/README.md for provider config details.
data/ filesystem CMS (source of truth)
/ claims/ .md frontmatter + body (statement) forecasts/ .yaml ensemble of predictions dossiers/ .yaml two-position debate edges.yaml intra-domain causal edges analyses/ .yaml attached analysis trails cross_domain_edges.yaml edges spanning domains
public/schema/v0.json JSON Schema (validates JSON-LD API)
src/ app/ Next.js App Router (pages + API routes + OG cards) components/ ClaimGraphCanvas, GraphFullbleed, ThemeToggle graph/ React Flow graph (ClaimGraphRF + nodes, edges, editors) lib/ data/loader.ts walks data/, validates with Zod types.ts Zod schemas + TS types graph.ts read accessors forecast.ts aggregate(predictions): median/spread/range jsonld.ts JSON-LD serializers engine-adapter.ts ClaimGraph → engine data shape
clients/ independent TS package (not published) — validate + briefing mcp-server/ published to npm as aboard-mcp-server scripts/forecasters/ ensemble forecaster (OpenAI-compat, Ollama, Anthropic adapters) research/ landscape, vision, schema, agent-onboarding sessions/ per-session work logs
Every page links to its JSON-LD form:
/api/graph — full claim graph/api/claims/{id} — single claim with edges, forecasts, dossierContext: schema.org for shared vocabulary, aboard: namespace for module-specific terms. Spec: public/schema/v0.json (authoritative) and research/schema.md (human-readable).
Two paths depending on whether you are a human or an agent.
Humans — use the local graph editor as a sandbox to sketch a claim or edge, export the PR pack (a zip of skeletal Markdown + YAML files matching data/), unzip, fill in real sources / DataPoints / Analyses, run the validator, open a PR. See CONTRIBUTING.md for the full flow.
Agents — an MCP server (aboard-mcp-server) exposes nine tools. Five read: list_claims, get_claim, get_graph, get_forecast, get_dossier. Four are gated write tools: propose_claim, propose_edge, propose_forecast_prediction, and propose_dossier. Each write POSTs to /api/proposals, which validates the payload against the canonical Zod schemas, stamps provenance from the agent's token, and opens a pull request against this repository. None ever merges — a human is the admission gate and CI must pass.
Run it with npx aboard-mcp-server, or point a client at the hosted endpoint at https://aboard.untype.me/mcp, which exposes the same nine tools. Setup and configuration in mcp-server/README.md.
{
"mcpServers": { "aboard": { "command": "npx", "args": ["-y", "aboard-mcp-server"] } } }
The endpoint is plain HTTP, so an agent does not need MCP to file a claim. Contract in worker/README.md; design and rationale in research/agent-onboarding.md.
Dual-licensed by artifact type:
LICENSE). Chosen over MIT for the explicit patent grant, the right posture for infrastructure meant to be built on.data/) and the published JSON Schema (public/schema/) are CC BY 4.0 (data/LICENSE). Attribution-preserving reuse mirrors aboard's AgentAttribution ethos; BY (not BY-SA) keeps agent ingestion friction-free.Reusing a claim, forecast, or dossier means keeping its attribution. Reusing the code means the usual Apache-2.0 notice.
v0 research prototype. Schema is in flux. Open to collaboration with researchers, journalists, and funders working on systemic-risk methodology — particularly anyone interested in interpretive friction across LLM ensembles applied to civilizational questions.
Sessions are logged in sessions/. See CLAUDE.md and AGENTS.md for project conventions.