protogrid

Search / world.sniff/sniff-mcp

sniff-mcp

R0· no sign-in

Canine genomics for agents: breed allele frequencies, AI pathogenicity + OMIA clinical disease layer

v1.1.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality65needs work
Trust87of 100
Uptime, 30 days85%
Latency p50700 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "sniff-mcp": {
      "type": "http",
      "url": "https://mcp.sniff.world/mcp/"
    }
  }
}
claude mcp add --transport http sniff-mcp https://mcp.sniff.world/mcp/
[mcp_servers.sniff-mcp]
url = "https://mcp.sniff.world/mcp/"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "sniff-mcp": {
      "type": "remote",
      "url": "https://mcp.sniff.world/mcp/",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "sniff-mcp": {
      "type": "http",
      "url": "https://mcp.sniff.world/mcp/"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=sniff-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLnNuaWZmLndvcmxkL21jcC8ifQ%3D%3D"
}
{
  "servers": {
    "sniff-mcp": {
      "type": "http",
      "url": "https://mcp.sniff.world/mcp/"
    }
  }
}
{
  "mcpServers": {
    "sniff-mcp": {
      "httpUrl": "https://mcp.sniff.world/mcp/"
    }
  }
}
extensions:
  "sniff-mcp":
    enabled: true
    name: "sniff-mcp"
    type: streamable_http
    uri: "https://mcp.sniff.world/mcp/"
    timeout: 300

Quality 65 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene64 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: search_diseases (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); metadata (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); breed_similarity (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 2,306 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability50 · weight 15
  • pass
    stability.changes5 tool changes in 30 days
  • fail
    stability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

18 tools, about 2,306 tokens to load them all · tool set 8be4ae321827 · tools last changed 2026-10-14 · checked 2026-10-20 17:02 UTC

Tool changes

  • variant_searchchangeddescription, input schema
    before

    Filtered discovery over all 9.67M variants. Predicates (combine freely): esm_max (ESM2 LLR <=), phylop_min (phyloP >=), popmax_min (popmax AF >=), gene_in (list of gene symbols), consequence, impact (HIGH/MODERATE/LOW/MODIFIER). Returns total_count + a capped list (max 200). Note: popmax may be in a wild population (dingo/village) — check popmax_breed.

    after · 93% of words in common

    Filtered discovery over all 9.67M variants. Predicates (combine freely): phylop_min (phyloP >=), popmax_min (popmax AF >=), gene_in (list of gene symbols), consequence, impact (HIGH/MODERATE/LOW/MODIFIER). Returns total_count + a capped list (max 200). Note: popmax may be in a wild population (dingo/village) — check popmax_breed.

  • breed_summarychangeddescriptionmeaning changed
    before

    Breed profile: top damaging common variants (ESM2<=-5 & breed AF>=5%), n_dogs, breed group. Descriptive only — not a health ranking.

    after · 48% of words in common

    Breed profile: n_dogs, breed group, genetic geometry and nearest breeds. Descriptive only — not a health ranking.

  • gene_summarychangeddescription
    before

    Variants in a gene (by gene symbol), ranked by impact then ESM2 damage. Paginated (limit, default 25); returns total_variants. Use af_min to filter by global AF.

    after · 84% of words in common

    Variants in a gene (by gene symbol), ranked by impact then allele frequency. Paginated (limit, default 25); returns total_variants. Use af_min to filter by global AF.

  • variant_lookupchangeddescription
    before

    Single-variant lookup by CanFam4 position: ref/alt, global + popmax AF, consequence, gene, ESM2/Pangolin/phyloP, deleteriousness tier, canonical URL, provenance.

    after · 78% of words in common

    Single-variant lookup by CanFam4 position: ref/alt, global + popmax AF, consequence, gene, Pangolin and phyloP annotations, canonical URL, provenance.

  • ask_variant_contextchangeddescription
    before

    THE headline query. Given a CanFam4 position (e.g. '5:56189113'), return the variant's global + popmax frequency, breed-stratified cross-breed frequencies, ESM2/Pangolin/phyloP pathogenicity, gene context, linked diseases (v1.1), provenance, and deep links — in one call. Pass breed_context to also get that breed's AF + rank. cross_breed_full=True returns all 188 breeds (default: top_n).

    after · 95% of words in common

    THE headline query. Given a CanFam4 position (e.g. '5:56189113'), return the variant's global + popmax frequency, breed-stratified cross-breed frequencies, Pangolin and phyloP annotations, gene context, linked diseases (v1.1), provenance, and deep links — in one call. Pass breed_context to also get that breed's AF + rank. cross_breed_full=True returns all 188 breeds (default: top_n).

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 87 / 100

provenance85
liveness94
freshness65
hygiene100

+repository +dns-namespace +website +reachable +uptime-85% ~updated-111d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.sniff.world/mcp/ streamable-httpnoneyes85%700 ms2025-11-252026-10-20

Tools (18)

askAsk Sniff a natural-language canine-genetics question and get a GROUNDED, CITED answer (or an honest abstain). Covers inherited diseases (OMIA) and their human homologs (the dog<->human disease bridge), breed disease/carrier risk, variant pathogenicity grades (AVCG; Boeykens et al. 2024, curated in OMIA), longevity/life-expectancy (McMillan 2024), temperament (Darwin's Ark/Morrill 2022, with breed-explains-X% caveats), and genetic diversity. The engine answers ONLY from cited Sniff atoms and returns `abstained: true` if it lacks grounded data — it never guesses. Educational, not diagnostic (carrier != affected; advise a vet). Returns {answer, citations:[atom_ids], abstained}. USE THIS for any 'what is X / does breed Y get Z / human equivalent of W' question; use the variant/breed/gene tools for structured lookups by identifier.
ask_the_graphTHE INSTRUMENT — ask a free-form CROSS-SPECIES genetics question and get FILTERED, HONEST HINTS (never a confident guess). It compiles your question into a typed query plan over the dog<->human edge-graph, runs it deterministically, and scores each answer PATH by its weakest edge — returning ranked hints with an evidence TIER (fact / computational / inferred) + citations, or an honest ABSTAIN with a demand signal when the graph can't answer. BEST FOR model-discovery / translational traversal: 'which dog breeds or genes model human <disease>', 'what is the dog ortholog of <gene>', 'what dog disease is phenotypically like <human disease>'. Answers are HYPOTHESIS-GENERATING, not clinical claims: a `fact` hint = an OMIA-curated model-of; a `computational` hint = a conserved 1:1 dog ortholog (a candidate — never 'dogs get this disease'); `inferred` = shared cross-species phenotype. Returns {plan (what it asked the graph), hints:[{answer, tier, score, path (the cited edges), weakest_edge, provenance}], abstain, demand_signal}. Set narrate=true for a gated one-line prose summary per hint (faithful-or-honest-template; it can never fabricate). Use `ask` instead for owner-facing breed/disease/carrier questions; use THIS for human-disease -> dog-model cross-species queries.
ask_variant_contextTHE headline query. Given a CanFam4 position (e.g. '5:56189113'), return the variant's global + popmax frequency, breed-stratified cross-breed frequencies, Pangolin and phyloP annotations, gene context, linked diseases (v1.1), provenance, and deep links — in one call. Pass breed_context to also get that breed's AF + rank. cross_breed_full=True returns all 188 breeds (default: top_n).
breed_similarityGenetic distance between two breeds (top-10-PC Euclidean). Lower = more genetically similar.
breeds_in_atlasList all 188 breeds with breed-stratified frequencies in the atlas.
breed_summaryBreed profile: n_dogs, breed group, genetic geometry and nearest breeds. Descriptive only — not a health ranking.
breed_variant_frequencyBreed-stratified allele frequency. Give a breed (e.g. 'bernese_mountain_dog') plus either a variant position or a gene symbol. Returns AF (+ rank) for the variant, or per-variant AFs in the gene.
disease_bridgeThe fused OMIA disease layer as cited atoms. Give a `disease` (name or 'OMIA:001870-9615') for its genes, inheritance, human homolog (OMIM/Mondo bridge), and variant pathogenicity grade (AVCG, ACMG/AMP 5-tier, curated in OMIA) when graded. Or give a `breed` (e.g. 'doberman_pinscher') for the inherited conditions documented in that breed with carrier frequency + confidence tier + grade. Every atom carries its source + atom_id. Educational, not diagnostic.
disease_linksA canine inherited disease (name or OMIA id) -> its governed OMIA clinical record: mode of inheritance, causal gene(s), curated description (summary / clinical features / molecular genetics / pathology / prevalence), clinical signs as HP/MP phenotype terms (-> Monarch), the human OMIM analog + Mondo id, and the evidence base (peer-reviewed reference count + landmark study) -- plus molecular links (variants/breeds) when the KG carries them. Sourced to OMIA (CC-BY); returns a canonical sniff.world URL. Dog-only. Educational, not diagnostic. For fuzzy candidates use search_diseases.
disease_lookupLook up a canine inherited disease by name or OMIA id -> its governed OMIA clinical record (inheritance, causal gene(s), curated description, clinical signs, human OMIM analog + Mondo id, evidence base). Sourced to OMIA (CC-BY); returns a canonical sniff.world URL. Dog-only. For candidate disambiguation use search_diseases; for a disease's molecular links use disease_links.
genes_indexedTop genes by number of variants in the atlas (discovery aid).
gene_summaryVariants in a gene (by gene symbol), ranked by impact then allele frequency. Paginated (limit, default 25); returns total_variants. Use af_min to filter by global AF.
metadataAtlas metadata: release, DOI, assembly, variant/breed counts, scope banner, and the RPC catalog.
nearest_breedsGenetically nearest breeds to the given breed (top-10-PC Euclidean in canine genetic space). Answers 'what breeds are most genetically similar to X?' via the PCA-256 breed co-embedding.
search_diseasesSearch the canine disease catalogue by free text -> ranked candidates [{omia_id, disease, url, score}]. Use before disease_lookup when the exact name is unknown. Dog-only.
semantic_searchFaceted hybrid + semantic-ranker search over the whole knowledge base (diseases, breeds, Scout discoveries). Use for fuzzy/thematic intent ('drug sensitivity in herding dogs', 'breeds prone to eye disease', 'genetically diverse breeds'). entity_type filters to 'disease'|'breed'|'discovery'. filters is an OData facet expression for cross-dimension queries, e.g. "breed_group eq 'herding' and cohort_n ge 30" or "diversity_tier eq 'severe_bottleneck'" (facets: type, breed, breed_group, gene, evidence_tier, confidence_tier, diversity_tier, cohort_n). Returns ranked entities with snippets, dimension fields, links.
variant_lookupSingle-variant lookup by CanFam4 position: ref/alt, global + popmax AF, consequence, gene, Pangolin and phyloP annotations, canonical URL, provenance.
variant_searchFiltered discovery over all 9.67M variants. Predicates (combine freely): phylop_min (phyloP >=), popmax_min (popmax AF >=), gene_in (list of gene symbols), consequence, impact (HIGH/MODERATE/LOW/MODIFIER). Returns total_count + a capped list (max 200). Note: popmax may be in a wild population (dingo/village) — check popmax_breed.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "world.sniff/sniff-mcp",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.sniff.world/mcp/",
      "type": "streamable-http"
    }
  ],
  "version": "1.1.0",
  "repository": {
    "url": "https://github.com/Sniffscore/sniff-mcp",
    "source": "github"
  },
  "websiteUrl": "https://sniff.world",
  "description": "Canine genomics for agents: breed allele frequencies, AI pathogenicity + OMIA clinical disease layer"
}