Saltar al contenido
Logo de Mostly Right

Servidor MCP de Mostly Right

Qué servidores MCP son de Mostly Right, del registro oficial y encontrados preguntando a su propio dominio, si responden y qué ofrecen. Un programa comprobó cada dato; nada está copiado de la página del producto.

leído el 2026-10-26

← Volver a Mostly Right

De quién es el servidor
  • Nombre en el registromd.mostlyright/datasetsverificado en el registro MCP

El nombre en el registro está bajo mostlyright.md. El registro solo permite usar ese espacio de nombres a quien demuestra control del dominio por DNS o HTTP.

Cuando le preguntamoscomprobado el 2026-10-26
  • Estadorespondecomprobado el 2026-10-26
  • Herramientas80
  • El servidor se llamamostlyright
  • Versión del servidor2.0.0
  • Versión del protocolo2025-06-18

El 2026-10-26 el servidor respondió a initialize y tools/list sin iniciar sesión. Primera respuesta en 80 ms.

¿Debe un agente conectarlo?Aún no está claro
  • Aún no se ha juzgado si sus herramientas hacen el trabajo del producto.
  • Comprobado 1 de los 7 días necesarios para juzgar su fiabilidad.

Una vez conectado

  • Para "Turn a plain question into a usable dataset", la primera llamada probable es catalog_search.
  • create_dataset, update_dataset, set_dataset_visibility, cancel_run, write_note cambian datos sin iniciar sesión: cualquiera con la dirección puede llamarlas.
  • Sus definiciones ocupan unos 34395 tokens de contexto: activa solo las herramientas que necesita la tarea.
  • Parámetros sin tipo o sin descripción en 76 de 80 herramientas: revisa los argumentos antes de llamar.

Lo dicen reglas a partir de las mediciones de arriba. La primera llamada probable la elige un modelo de la lista de herramientas; lee su descripción antes de fiarte.

Medido cada díacomprobaciones diarias: 1, la primera el 2026-10-26
  • Nota INITE MCPtras una semanala nota necesita 7 comprobaciones diarias: 1 hasta ahora
  • Respondiómidiendo1 de las 7 comprobaciones diarias necesarias para mostrar el porcentaje
  • Mediana de la primera respuesta127 ms
  • Espacio en el contexto del agente≈ 34.395 tokenslas definiciones de todas sus herramientas (80), que el agente lleva en cada turno
  • Definiciones de herramientasB · 84 de 100
  • Resultados tipados0 de 80 herramientasdeclaran outputSchema: el resultado llega tipado y se lee de una vez
  • Parámetros sin descripción: en 76 de 80

Qué puede hacer un agente con él

  • no está claro · Browse community datasets by topic
  • puede · Turn a plain question into a usable dataset
  • no está claro · Schedule refreshes and checks on datasets

Cada caso de uso del producto se le preguntó a Jev junto con la lista de herramientas de este servidor: ¿puede un agente hacerlo con estas herramientas?

Conviene revisar

  • Herramientas que cambian datos, en un servidor que responde sin iniciar sesión: create_dataset, update_dataset, set_dataset_visibility, cancel_run, write_note

Un programa comprueba el servidor una vez al día: initialize y tools/list, sin modelo. Los tokens son la longitud de las definiciones, a unos cuatro caracteres por token. La nota promedia seis comprobaciones del nombre, la descripción, el esquema y las anotaciones de cada herramienta; dice lo bien descritas que están, no si funcionan. La nota pondera solo lo medido: si responde (25%), si hace el trabajo del producto (25%), definiciones (20%), contexto (10%), uso (10%) y lo fácil que es conectarse (10%). Lo que no se midió queda fuera, y una instrucción oculta limita la nota a 40. El estado de los servidores MCP de los proveedores: método y números →

Herramientas que ofrece80 herramientas · leído el 2026-10-26
  • search_datasets

    Full-text search over every public dataset on Mostly Right. No account needed. Example: {"query": "hourly airport weather observations", "limit": 10}. Returns {datasets: [{id, slug, title, summary, topics, publisher, published_at…

  • get_dataset

    One dataset's overview: title, summary, topics, publisher, publication and update dates, canonical page URL, star and table counts, and every table with its id, title, license, immutable version_id, column count, column names and the…

  • list_tables

    The tables in one dataset, without the full column schemas — the cheap call when you only need table ids and titles. Example: {"dataset_slug": "kden-metar-hourly"}. Returns {dataset_slug, tables: [{id, slug, title, license, version_id…

  • get_table_schema

    One public table's columns (name, type, and any published profile such as null counts, distinct counts or ranges), its immutable version_id, and its capabilities: whether anonymous sampling, keyed querying and Parquet download are…

  • sample_rows

    The publisher's materialized preview of a public table — real rows, no account, no query cost. Private workspace tables are not available here; use query_run on a successful build instead. To sample a source before anything is built, use…

  • get_download_instructions

    The exact URL, HTTP method and header for downloading one table's current immutable Parquet snapshot, plus whether the publisher enabled it. Example: {"table_id": "0f2f6bfa-4a63-4f75-9a0b-1a7d9c5b2e10"}. Bytes are never streamed through…

  • get_access_instructions

    What this server does anonymously, what needs an account, the two API key classes and what each unlocks, the OAuth option, the signup URL, and the numbered steps from 'no account' to 'querying rows'. Optionally pass {"dataset_slug"…

  • search

    Search every public dataset on Mostly Right and return up to 20 matches as {results: [{id, title, url}]}, where `id` is the dataset slug and `url` its canonical page. No account needed. Example: {"query": "hourly airport weather…

  • fetch

    The full public document for one dataset as Markdown: summary, facts, access instructions, and every table with its columns, types, descriptions and units. No account needed. Example: {"id": "kden-metar-hourly"} — the `id` is a slug from…

  • query_table

    A bounded, structured query over one table's current version. NO SQL: send columns, filters, order_by, aggregates, group_by and limit as JSON. Example: {"table_id": "0f2f...", "columns": ["observed_at", "air_temp_f"], "filters"…

  • search_table

    Ranked search over one public table's rows, the same search its dataset page runs: words, prefixes, typos and spelling correction, served from the table's search package. NOT a catalogue search (search_datasets finds datasets) and not…

  • catalog_search

    Search a sealed snapshot of public data sources for feeds that might answer a question — the first move when you need a source and do not already know one. Example: {"question": "county unemployment rate monthly", "limit": 10, "format"…

  • list_connected_datasets

    The public datasets the authenticated workspace has used so far. Takes no arguments. query_table is not limited to this list: a key reads any public dataset (connecting it on first use) and the workspace's own tables; an OAuth connection…

  • connect_dataset

    Connects one public dataset to the authenticated workspace so its tables become queryable and downloadable. This is the gate every keyed read passes. Example: {"dataset_slug": "kden-metar-hourly"}. Idempotent: connecting an…

  • create_dataset

    Creates an empty dataset in your workspace and returns its ids. A dataset is the container a recipe binds to; it exists before it has a description, a recipe or a single row, which is the point — the page opens on it and fills in. The…

  • update_dataset

    A changed nonblank description generates a factual dataset name and topic tags, except a name or tags someone chose in an earlier update, which stay. The name given at create_dataset is a working title and does not count as chosen. Send…

  • generate_cover

    Generates the dataset's branded 1200×630 cover and attaches it: the page, the Community tile and the share card all wear it. Every dataset gets exactly one, generated once its description is written. Call it only for a dataset that has no…

  • set_dataset_visibility

    Changes who can read a dataset: private (this workspace only), link (anyone holding an unlisted address, which this returns) or public (listed on Mostly Right for anyone). The same change as Share on the dataset's page and `mr-data…

  • archive_dataset

    Retires a whole dataset: every reader loses access, its public page and unlisted link are withdrawn, and its name is free for a new dataset. Nothing it built is deleted, but ONLY Mostly Right support can restore it. The same act as the…

  • list_my_datasets

    Every dataset this workspace owns, most recently updated first — not the public catalog. Use it to find the dataset_id for a dataset you or a colleague created earlier. Example: {"limit": 25}. Returns {workspace_id, datasets…

  • get_my_dataset

    One workspace dataset in build terms: name, description, status, each table with its build state, promotion state and live version, the latest run, and any run held waiting for a confirmation. Example: {"dataset_id": "…"}. Returns…

  • list_dataset_events

    The dataset's own durable log, newest first: created, renamed or re-described, a recipe registered, each run queued, held, started, progressing and finished, a cover attached, a table's state changing, a table renamed or archived, a…

  • list_recipes

    Lists immutable recipe coordinates in this workspace, optionally for one table_id from get_my_dataset. current_only defaults to true; false includes older revisions. Returns {recipes: [{recipe_id, recipe_digest, dataset_id, table_id…

  • get_recipe

    Reads the actual immutable registered recipe, including sources, SQL and checks. Use list_recipes for current table revisions, or recipe_id from get_run for the exact executed revision. Returns {recipe_id, recipe_digest, dataset_id…

  • register_recipe

    Registers the JSON recipe that says where the data comes from, how it is shaped and what must be true of it. The server canonicalizes the document and computes its digest — you cannot and must not state one. Identical bytes register once…

  • explain_recipe

    Checks a recipe document without registering, writing or running anything — the same evaluator that admits refreshes, plus the fast-path features the harness's `recipe explain` reports. Example: {"recipe": { …the whole recipe document……

  • forecast_recipe

    Says what one full or refresh run of a registered recipe would ask of its sources, before anything is started: per-source request ceilings, runtime at the ceiling, platform spend, and the projected bytes and cost. Warnings name what would…

  • test_recipe

    Starts a recipe preflight: a bounded rehearsal of a full run that fetches at most max_pages_per_source pages of each listing (default 1, max 5) and max_upstream_rows rows of each per-row source (default 25), runs the transform and the…

  • propose_revision

    Registers a proposed revision and returns its immutable recipe coordinates plus a review link. It then starts EXACTLY ONE run: a replay of the named successful run's retained inputs, which reads no upstream source and never becomes live…

  • replay_run

    Runs a registered recipe revision against the retained raw inputs of a named successful run of the same table. No upstream acquisition is performed. Replay must be enabled and the inputs must still be retained. Returns {run_id, status…

  • start_run

    Runs a registered recipe. THIS IS THE TOOL THAT DOES THE REAL WORK: it reads the sources and can run for a long time. Start builds in full mode: full runs use one progressive acquisition with an inspection checkpoint after about five…

  • confirm_run

    Authorizes a held run and starts it. The numbers are the ones already stored on the run — you cannot restate them, which is the point: what is authorized is the server's own projection. Example: {"run_id": "…", "expected_version": 3}…

  • approve_full_run

    Compatibility for an existing legacy full run paired with a bounded preview, in awaiting_sample_approval. New full builds use progressive acquisition and never need this tool for their inspection checkpoint. Call it ONLY once the legacy…

  • cancel_run

    Stops a run that is queued, held at the confirmation gate, or running. A run cancelled at the gate never ran. Example: {"run_id": "…"}. Returns the run receipt with status cancelled. A run that already finished cannot be cancelled and…

  • get_run

    One run's current state: status, mode, the clamps it ran under, rows delivered and whether a clamp truncated them, how many pages a many-page source reached, the table and table version it sealed, the failure code and stage when it…

  • run_events

    Opens the run's event stream, collects up to max_events, and returns as soon as the run reaches a terminal event or wait_seconds elapses — whichever comes first. This is how you watch a build without polling. Example: {"run_id": "…"…

  • list_runs

    The workspace's own runs, newest first, optionally narrowed to one dataset, one status or one mode. Example: {"dataset_id": "…", "status": "failed", "limit": 20}. Returns {runs: [{run_id, status, mode, dataset_id, table_id, created_at…

  • compare_runs

    Reads two runs and says what changed between them: status, mode, rows, bytes, truncated, covered_window, table_version_id, outcome, failure code and stage, created and completed times, and each declared check whose result moved. Use it to…

  • query_run

    Runs one read-only SQL statement over the parquet a run sealed, available as the relation run_table (not the recipe table name), and waits for the answer. THIS IS HOW YOU CHECK THE DATA IS RIGHT after a successful run: count the rows…

  • sample_table

    Reads up to limit rows (default $DEFAULT_SEARCH_READ_ROWS, at most $MAX_SEARCH_SAMPLE_ROWS) of one sealed table version, projected to columns (default: every declared column, up to 64). Use it before writing a search spec or a plan, to…

  • list_column_values

    The most frequent non-null values of one declared column of a sealed table version, each with the number of rows holding it, most frequent first. prefix keeps the values whose text starts with it, ignoring case. Use it to choose…

  • preview_table_search

    Runs one query (words, planned under the revision's spec as explain plans them) or one explicit table-search-plan.v2 plan as a SCAN of the sealed version: the plan's predicates and order as filters, its text as a case-insensitive…

  • run_artifacts

    The files a run sealed: the parquet, the column profile, the receipt, the preview. Works on a running, succeeded or failed run — a failed run's partial output is listed too. Example: {"run_id": "…"}. Returns {artifacts: [{artifact_id…

  • get_artifact_download

    Mints a short-lived signed URL for one sealed artifact. Fetch it yourself with a plain GET and no headers; it expires. Example: {"run_id": "…", "artifact_id": "…"}. Returns {url, expires_at, media_type, digest, size_bytes, kind}. Cite the…

  • write_note

    Appends one cell to a run's or a dataset's decision record — why a source was chosen, what a check found, what you changed and why. The record is append-only and is what a reader sees beside the data. Write one for every decision worth…

  • list_notes

    Lists the cells of a run's or a dataset's decision record, newest first: the heading, the body, the phase, any typed blocks (source, decision, clarification) and whether a later revision superseded it. Read it before writing a note, so a…

  • list_table_parts

    Lists the parts (parquet files) one table version is made of: each part's index, part_id (its content digest), artifact_id, the run that sealed it, its row count, its size, its partition, and the lowest and highest value it holds per…

  • verify_run

    Checks the table one succeeded run sealed against its own manifest. Without deep it reads the manifest, checks it hashes to the digest it was sealed with and names this run's table version, and checks every part the run sealed is among…

  • promote_table

    Promotion makes the table's newest passing version the version everyone reads, and starts the recurring refresh that keeps it current. Example: {"table_id": "…", "confirm": true}. It refuses without confirm: true. Only call it when the…

  • reschedule_table

    Sets a live table's refresh schedule, or replaces the one it has, without starting a run or fetching anything. A table that went live on its first run has NO schedule yet (get_table shows schedule null, the chat shows "No refresh…

  • demote_table

    Withdraws a table's live pointer and detaches its refresh schedule: readers stop being served it and it stops refreshing. Nothing built is deleted, and promote_table later revives the same table. A live table must be demoted before…

  • refresh_table

    Runs the refresh the table's schedule would run, now: forward from where its last successful run reached, under its own recipe and the ordinary size and spend gates. It never rereads every source; a table whose recipe cannot refresh…

  • resync_table

    Rereads every source of a live table as one progressive full run of its current recipe, the deliberate escape hatch when a source cannot advance incrementally (refresh_table answered incremental_unavailable, or the person asked to rebuild…

  • archive_table

    Retires one table from its dataset: it leaves the dataset's table list and frees its name for a new table. The versions it built are not deleted. The service confirms the archive with the table's current stored name itself, so you never…

  • rename_table

    Changes one table's name within its dataset. Nothing is rebuilt, re-served or republished, and the table keeps its id, versions and schedule; every reader of the dataset sees the new name. The old name is released, so another table may…

  • get_table

    One table as the builder sees it: whether it is promoted, which version is live, the refresh schedule and what the platform has learned about its rhythm, when it last refreshed and why it last failed. Example: {"table_id": "…"}. Returns…

  • diagnose_table

    Reads one table's current promotion pointers and latest recorded failure. When that failure names a run, it also reads that run and its declared recipe sources, so the diagnosis still works when a failed run never sealed a version…

  • list_source_credentials

    Lists named secret metadata and saved workspace connections without secret values. Pass dataset_id to check dataset grants. Follow connections.next_offset with connection_offset to read another bounded page. Returns credentials…

  • list_models

    Lists the small models this deployment serves to recipes, by task: classify (label each row of a text column with yes/no or choice questions), extract (pull named, verbatim-grounded fields out of page or document text) and match (link the…

  • suggest_enrichments

    Reads the run's columns, then a bounded sample of its text columns (up to max_rows rows, default 50, each value cut to its first few thousand characters; metered like query_run, the column read is not charged) and names, column by column…

Las primeras 60 de 80, en el orden del servidor.

Cómo conectar

Añade el servidor a la configuración de tu cliente MCP. Claude Desktop, Cursor y la mayoría de los demás clientes leen este formato:

{
  "mcpServers": {
    "datasets": {
      "type": "http",
      "url": "https://mostlyright.md/api/mcp"
    }
  }
}

Añadirlo

Claude Code, en una terminal

claude mcp add --transport http mostlyright https://mostlyright.md/api/mcp

Añadir a CursorAñadir a VS Code

claude.ai, ChatGPT y otros clientes: añade https://mostlyright.md/api/mcp como conector personalizado en los ajustes.

Cada línea es algo que un programa encontró al buscar: la entrada del registro, la respuesta del propio servidor, una especificación que se puede leer. Si falta una línea, es que no la encontramos, no que no exista.