raras

Disease Twin — Brazil's rare-disease knowledge graph (10,468) over MCP. Source-grounded, PT-BR.

Should I use this

Quality & Safety

B
Description quality
71%
Schema completeness
74%
Naming quality
99%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (12)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains suspicious base64-like encoded stringin get_literature_relations
  • LOWTool 'get_disease_detail' description lacks action verbin get_disease_detail
  • LOWTool 'find_diseases_by_phenotypes' description lacks action verbin find_diseases_by_phenotypes
  • LOWTool 'get_sus_coverage' description lacks action verbin get_sus_coverage
  • LOWTool 'find_reference_centers' description lacks action verbin find_reference_centers
  • LOWTool 'find_active_trials' description lacks action verbin find_active_trials
  • LOWTool 'find_similar_diseases' description lacks action verbin find_similar_diseases
  • LOWTool 'search_papers_semantic' description lacks action verbin search_papers_semantic
  • LOWTool 'find_papers_for_disease' description lacks action verbin find_papers_for_disease

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~3,828Tokens (tool definitions)
~1.5 KBTypical response size
Significant attention impact (2.99% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "raras": {
      "url": "https://raras.org/api/mcp"
    }
  }
}

Remote endpoints

https://raras.org/api/mcpstreamable-http

What it can do

Tool inventory

Tools (20)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_diseases(query, limit, filter_has_sus_coverage, filter_has_active_trials)

Full-text search em 10.468 doenças raras. Suporta filtros SUS/trials.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "filter_has_sus_coverage": {
      "type": "boolean"
    },
    "filter_has_active_trials": {
      "type": "boolean"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_disease_detail(orphaCode)

Fenótipos HPO, genes, SUS, trials, descrição clínica em PT.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_diseases_by_phenotypes(hpo_ids, limit)

Match por IDs HPO. Use para diagnóstico diferencial.

Input Schema

{
  "type": "object",
  "properties": {
    "hpo_ids": {
      "minItems": 1,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^HP:\\d+$"
      }
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 30
    }
  },
  "required": [
    "hpo_ids"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_phenotypes(query, limit)

Lookup HPO em PT-BR (encoder Araras-HPO-Brasil + léxico leigo) ou EN (vocabulário HPO). Retorna IDs HP: com estado de asserção: termo NEGADO ("nunca desmaiei") NÃO vira fenótipo. Outros idiomas não são cobertos. Limite de taxa: use poucas chamadas por minuto (429 = espere).

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2
    },
    "limit": {
      "default": 15,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "assertion": {
      "type": "string",
      "enum": [
        "PRESENT",
        "NEGATED"
      ]
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "hpoId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "namePt": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "match": {
            "type": "string",
            "enum": [
              "exact",
              "approximate"
            ]
          },
          "via": {
            "type": "string"
          },
          "similarity": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "hpoId",
          "name",
          "namePt",
          "match",
          "via",
          "similarity"
        ],
        "additionalProperties": false
      }
    },
    "note": {
      "type": "string"
    },
    "languages": {
      "type": "string"
    },
    "meta": {}
  },
  "required": [
    "query",
    "assertion",
    "results"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_sus_coverage(orphaCode)

CEAF, SIGTAP, PNTN, nível de integração.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_reference_centers(orphaCode, state, limit)

Centros por doença e/ou UF, com CNES.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "limit": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_active_trials(orphaCode, in_brazil_only, limit)

Trials ativos com filtro Brazil.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    },
    "in_brazil_only": {
      "default": false,
      "type": "boolean"
    },
    "limit": {
      "default": 15,
      "type": "integer",
      "minimum": 1,
      "maximum": 30
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_similar_diseases(orphaCode, limit)

Vector similarity via embeddings SOTA.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_phenotypically_similar(orphaCode, limit)

Doenças com perfil de fenótipos HPO semelhante (simGIC pré-computado, explicável: nº de fenótipos em comum). Complementa find_similar_diseases (semântico).

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 30
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "method": {
      "type": "string"
    },
    "orphaCode": {
      "type": "string"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "orphaCode": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "score": {
            "type": "number"
          },
          "sharedPhenotypes": {
            "type": "number"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "orphaCode",
          "name",
          "score",
          "sharedPhenotypes",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "meta": {}
  },
  "required": [
    "method",
    "orphaCode",
    "results"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_graph_stats

Contagens e métricas do dataset.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_papers_semantic(query, limit, min_score)

Busca vetorial sobre 424k papers do PubMed. Use caso clínico, pergunta ou conjunto de sintomas.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 3
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 30
    },
    "min_score": {
      "default": 0.8,
      "type": "number",
      "minimum": 0,
      "maximum": 1
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_papers_for_disease(orphaCode, limit, min_score)

Literatura relacionada a uma doença via embeddings (:SEMANTIC_MATCH, fallback vetorial).

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 30
    },
    "min_score": {
      "default": 0.8,
      "type": "number",
      "minimum": 0,
      "maximum": 1
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢analyze_clinical_case(case_description, papers_limit, diseases_limit)

Caso clínico → doenças candidatas + literatura relevante em 1 chamada. Apenas informativo, nunca diagnóstico.

Input Schema

{
  "type": "object",
  "properties": {
    "case_description": {
      "type": "string",
      "minLength": 20
    },
    "papers_limit": {
      "default": 5,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "diseases_limit": {
      "default": 5,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "case_description"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_schema

Node labels, relationship types e property keys do grafo. Use antes de cypher_query.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢explain_relation(query, hpo_ids, max_hops)

Raciocínio fundamentado sobre o grafo: dada uma pergunta (ex.: "por que o gene X se associa à doença Y?", "como a droga Z se relaciona a esta doença?"), retorna caminhos de evidência multi-hop (doença↔gene↔via↔droga↔fenótipo) com proveniência citável. Se não houver caminho no grafo, recusa — nunca inventa.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 3
    },
    "hpo_ids": {
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^HP:\\d+$"
      }
    },
    "max_hops": {
      "default": 2,
      "anyOf": [
        {
          "type": "number",
          "const": 2
        },
        {
          "type": "number",
          "const": 3
        }
      ]
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "hasEvidence": {
      "type": "boolean"
    },
    "summary": {
      "type": "object",
      "properties": {
        "diseases": {
          "type": "number"
        },
        "phenotypes": {
          "type": "number"
        },
        "genes": {
          "type": "number"
        },
        "drugs": {
          "type": "number"
        }
      },
      "required": [
        "diseases",
        "phenotypes",
        "genes",
        "drugs"
      ],
      "additionalProperties": false
    },
    "paths": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "score": {
            "type": "number"
          },
          "chain": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "score",
          "chain",
          "sources"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "query",
    "hasEvidence",
    "summary",
    "paths"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_literature_relations(orphaCode, predicate)

Relações tipadas extraídas da literatura biomédica (associate/treat/cause/inhibit/stimulate/prevent) entre a doença e genes/fármacos, com nº de publicações como proveniência. Filtrável por predicado.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    },
    "predicate": {
      "type": "string",
      "enum": [
        "associate",
        "treat",
        "cause",
        "inhibit",
        "stimulate",
        "prevent",
        "positive_correlation",
        "negative_correlation"
      ]
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "relations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "predicate": {
            "type": "string"
          },
          "partner": {
            "type": "string"
          },
          "partnerType": {
            "type": "string"
          },
          "publications": {
            "type": "number"
          },
          "direction": {
            "type": "string"
          }
        },
        "required": [
          "predicate",
          "partner",
          "partnerType",
          "publications",
          "direction"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "orphaCode",
    "source",
    "relations"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_hypotheses(orphaCode)

Candidatos a reposicionamento de fármacos gerados por associação de genes (guilt-by-association): drogas que tratam outras doenças que compartilham genes com esta. HIPÓTESES para investigação, NUNCA recomendações clínicas — cada uma rastreável (via gene X, da doença Y).

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "method": {
      "type": "string"
    },
    "isRecommendation": {
      "type": "boolean"
    },
    "hypotheses": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "drug": {
            "type": "string"
          },
          "viaGenes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "orpha": {
                  "type": "string"
                }
              },
              "required": [
                "name",
                "orpha"
              ],
              "additionalProperties": false
            }
          },
          "geneOverlap": {
            "type": "number"
          }
        },
        "required": [
          "drug",
          "viaGenes",
          "sources",
          "geneOverlap"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "orphaCode",
    "name",
    "method",
    "isRecommendation",
    "hypotheses"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_research_log(orphaCode)

Registro cronológico do que o agente autônomo fez por esta doença: autoria, mineração de literatura, evidência genética, verificação, prospecção de fontes, recomputação de relações. Prova de que o gêmeo digital estuda a doença continuamente.

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "events": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "type": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          }
        },
        "required": [
          "date",
          "type",
          "title",
          "detail"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "orphaCode",
    "name",
    "events"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_recent_updates(days, limit)

Doenças cujo gêmeo digital ganhou evidência nova (autoria, PubTator3, Open Targets, verificação) nos últimos N dias. Faça polling para acompanhar mudanças (substituto stateless de subscriptions).

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "default": 7,
      "type": "integer",
      "minimum": 1,
      "maximum": 90
    },
    "limit": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "sinceDays": {
      "type": "number"
    },
    "updates": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "orphaCode": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "lastUpdated": {
            "type": "string"
          },
          "sources": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "resource": {
            "type": "string"
          }
        },
        "required": [
          "orphaCode",
          "name",
          "lastUpdated",
          "sources",
          "resource"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "sinceDays",
    "updates"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_evidence(orphaCode)

Cross-references de autoridade (Orphanet, MONDO, OMIM, MeSH, GARD, UMLS), status de verificação e PMIDs de uma doença. A base da regra "nunca inventar".

Input Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string",
      "pattern": "^\\d+$"
    }
  },
  "required": [
    "orphaCode"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "orphaCode": {
      "type": "string"
    },
    "name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "xrefs": {
      "type": "object",
      "properties": {
        "orphanet": {
          "type": "string"
        },
        "mondo": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "omim": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "mesh": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "gard": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "umls": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "pubtator3": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "orphanet",
        "mondo",
        "omim",
        "mesh",
        "gard",
        "umls",
        "pubtator3"
      ],
      "additionalProperties": false
    },
    "verification": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string"
        },
        "checkedAt": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "status",
        "checkedAt"
      ],
      "additionalProperties": false
    },
    "diseaseTwin": {
      "type": "object",
      "properties": {
        "authoredAt": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "groundingPct": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "authoredAt",
        "groundingPct"
      ],
      "additionalProperties": false
    },
    "pmids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "neverInvent": {
      "type": "boolean"
    }
  },
  "required": [
    "orphaCode",
    "name",
    "xrefs",
    "verification",
    "diseaseTwin",
    "pmids",
    "neverInvent"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded20 tools
verifiedversion not recorded20 tools
verifiedversion not recorded20 tools
verifiedversion not recorded20 tools
verifiedversion not recorded20 tools
verifiedversion not recorded20 tools