voa-tiss

Ferramentas para validar documentos TISS e consultar TUSS, operadoras e dados da ANS.

我该使用它吗

质量与安全性

B
描述质量
67%
模式完整度
77%
命名质量
80%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(17)

  • LOWTool 'tiss_validate' description lacks action verb在 tiss_validate 中
  • LOWTool 'tiss_parse_demonstrativo' description lacks action verb在 tiss_parse_demonstrativo 中
  • LOWTool 'tiss_plan_reconciliation' description lacks action verb在 tiss_plan_reconciliation 中
  • LOWTool 'tuss_lookup' description lacks action verb在 tuss_lookup 中
  • LOWTool 'tuss_search' description lacks action verb在 tuss_search 中
  • LOWTool 'tiss_rede' description lacks action verb在 tiss_rede 中
  • LOWTool 'operadora_rede' description lacks action verb在 operadora_rede 中
  • LOWTool 'operadora_perfil' description lacks action verb在 operadora_perfil 中
  • LOWTool 'tiss_sandbox_demonstrativo' description lacks action verb在 tiss_sandbox_demonstrativo 中
  • LOWTool 'tiss_rejection_map' description lacks action verb在 tiss_rejection_map 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~7,228token 数(工具定义)
~2.5 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 5.65%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "tiss": {
      "url": "https://tiss-api.voa.health/mcp"
    }
  }
}

远程端点

https://tiss-api.voa.health/mcpstreamable-http

它能做什么

工具清单

工具(26)

🟢 只读🟡 写入🔴 删除⚪ 未知
⚪tiss_validate(xml, lote, operadora, contexto, data)

Valida XML TISS ou lote em JSON. Quando usar: antes de gerar ou enviar um lote. Quando não usar: para corrigir achados sem aplicar o ciclo validar → tiss_apply_fixes → validar de novo.

输入模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    },
    "lote": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "Schema estrutural disponível em tiss://schemas/lote."
    },
    "operadora": {
      "type": "string",
      "pattern": "^[0-9]{5,6}$"
    },
    "contexto": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "tabela_operadora": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "registro_ans": {
              "type": "string"
            },
            "procedimentos": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "exige_autorizacao": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "vigencia_inicio": {
              "type": "string",
              "format": "date"
            },
            "vigencia_fim": {
              "type": [
                "string",
                "null"
              ],
              "format": "date"
            },
            "max_guias": {
              "type": "integer",
              "minimum": 1
            }
          }
        },
        "carteirinhas": {
          "type": "object"
        },
        "autorizacoes": {
          "type": "object"
        }
      }
    },
    "data": {
      "type": "string",
      "format": "date"
    }
  },
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "valid": {
      "type": "boolean"
    },
    "version": {
      "type": [
        "string",
        "null"
      ]
    },
    "findings": {
      "type": "array",
      "items": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "title": "Finding",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "code",
          "severity",
          "guia",
          "xpath",
          "pointer",
          "message",
          "fix",
          "needs",
          "glosa",
          "rule"
        ],
        "properties": {
          "code": {
            "enum": [
              "audit.autorizacao_ausente",
              "audit.autorizacao_vencida",
              "audit.carteirinha_ausente",
              "audit.carteirinha_inativa",
              "audit.carteirinha_vencida",
              "audit.data_ausente",
              "audit.operadora_divergente",
              "audit.procedimento_ausente",
              "audit.procedimento_fora_da_tabela",
              "audit.tabela_fora_de_vigencia",
              "audit.tabela_sem_procedimentos",
              "audit.valor_nao_positivo",
              "autorizacao.carteirinha",
              "autorizacao.dado_ausente",
              "autorizacao.exige_auditoria",
              "autorizacao.sem_regra",
              "guia.carteirinha_ausente",
              "guia.executante_ausente",
              "guia.sequencial",
              "item.valor_divergente",
              "item.valor_zerado",
              "lote.acima_do_teto",
              "lote.caractere_invalido",
              "lote.estrutura",
              "lote.guia_duplicada",
              "lote.hash_divergente",
              "lote.valor_total_geral",
              "lote.vazio",
              "regra.combinacao_proibida",
              "regra.exige_autorizacao",
              "regra.max_itens",
              "regra.obrigatorio",
              "regra.padrao",
              "regra.valores",
              "tuss.fora_de_vigencia",
              "tuss.inexistente",
              "versao.divergente",
              "versao.nao_detectada",
              "versao.nao_suportada",
              "xml.doctype",
              "xml.encoding",
              "xml.malformado",
              "xsd.atributo",
              "xsd.elemento_ausente",
              "xsd.elemento_inesperado",
              "xsd.enumeracao",
              "xsd.outro",
              "xsd.padrao",
              "xsd.tamanho",
              "xsd.tipo"
            ]
          },
          "severity": {
            "enum": [
              "error",
              "warning"
            ]
          },
          "guia": {
            "type": [
              "string",
              "null"
            ]
          },
          "xpath": {
            "type": [
              "string",
              "null"
            ]
          },
          "pointer": {
            "type": [
              "string",
              "null"
            ]
          },
          "message": {
            "type": "string"
          },
          "fix": {
            "anyOf": [
              {
                "type": "null"
              },
              {
                "type": "array",
                "items": {
                  "type": "object"
                }
              }
            ]
          },
          "needs": {
            "anyOf": [
              {
                "type": "null"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "glosa": {
            "type": [
              "string",
              "null"
            ]
          },
          "rule": {
            "type": [
              "object",
              "null"
            ]
          }
        }
      }
    },
    "decisao": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "tipo",
        "rules",
        "needs"
      ],
      "properties": {
        "tipo": {
          "enum": [
            "aprovar_por_regra",
            "pendente",
            "encaminhar_auditor"
          ]
        },
        "rules": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "id",
              "source",
              "mantenedor"
            ],
            "properties": {
              "id": {
                "type": "string"
              },
              "source": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "url",
                  "titulo",
                  "data",
                  "acesso",
                  "official"
                ],
                "properties": {
                  "url": {
                    "type": "string"
                  },
                  "titulo": {
                    "type": "string"
                  },
                  "data": {
                    "type": "string"
                  },
                  "acesso": {
                    "type": "string"
                  },
                  "official": {
                    "type": "boolean"
                  }
                }
              },
              "mantenedor": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "tipo"
                ],
                "properties": {
                  "tipo": {
                    "enum": [
                      "comunidade",
                      "operadora"
                    ]
                  },
                  "registro_ans": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "needs": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "valid",
    "version",
    "findings"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Report",
  "additionalProperties": false
}
🟢tiss_parse_demonstrativo(xml)

Lê decisões de um demonstrativo. Quando usar: para identificar pagamentos e glosas. Quando não usar: para validar lotes.

输入模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    }
  },
  "required": [
    "xml"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "decisoes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "guia_ref": {
            "type": "string"
          },
          "decision": {
            "enum": [
              "pago",
              "glosado",
              "glosa_parcial"
            ]
          },
          "motivo": {
            "type": "string"
          },
          "guia_operadora": {
            "type": "string"
          },
          "tuss_code": {
            "type": "string"
          },
          "valor_glosa_cents": {
            "type": "integer"
          },
          "valor_liberado_cents": {
            "type": "integer"
          }
        },
        "additionalProperties": true,
        "required": [
          "guia_ref",
          "decision",
          "motivo"
        ]
      }
    }
  },
  "required": [
    "decisoes"
  ],
  "additionalProperties": false
}
⚪tiss_plan_reconciliation(decisoes, guias, id_key, prestador_key, operadora_key, ...)

Propõe vínculos entre decisões e guias. Quando usar: após ler um demonstrativo. Quando não usar: para alterar guias.

输入模式

{
  "type": "object",
  "properties": {
    "decisoes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "guia_ref": {
            "type": "string"
          },
          "decision": {
            "enum": [
              "pago",
              "glosado",
              "glosa_parcial"
            ]
          },
          "motivo": {
            "type": "string"
          },
          "guia_operadora": {
            "type": "string"
          },
          "tuss_code": {
            "type": "string"
          },
          "valor_glosa_cents": {
            "type": "integer"
          },
          "valor_liberado_cents": {
            "type": "integer"
          }
        },
        "additionalProperties": true,
        "required": [
          "guia_ref",
          "decision",
          "motivo"
        ]
      }
    },
    "guias": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "id_key": {
      "type": "string"
    },
    "prestador_key": {
      "type": "string"
    },
    "operadora_key": {
      "type": "string"
    },
    "status_key": {
      "type": "string"
    }
  },
  "required": [
    "decisoes",
    "guias"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "propostas": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "sem_par": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "guia_ref": {
            "type": "string"
          },
          "decision": {
            "enum": [
              "pago",
              "glosado",
              "glosa_parcial"
            ]
          },
          "motivo": {
            "type": "string"
          },
          "guia_operadora": {
            "type": "string"
          },
          "tuss_code": {
            "type": "string"
          },
          "valor_glosa_cents": {
            "type": "integer"
          },
          "valor_liberado_cents": {
            "type": "integer"
          }
        },
        "additionalProperties": true,
        "required": [
          "guia_ref",
          "decision",
          "motivo"
        ]
      }
    },
    "ambiguas": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "guia_ref": {
            "type": "string"
          },
          "decision": {
            "enum": [
              "pago",
              "glosado",
              "glosa_parcial"
            ]
          },
          "motivo": {
            "type": "string"
          },
          "guia_operadora": {
            "type": "string"
          },
          "tuss_code": {
            "type": "string"
          },
          "valor_glosa_cents": {
            "type": "integer"
          },
          "valor_liberado_cents": {
            "type": "integer"
          }
        },
        "additionalProperties": true,
        "required": [
          "guia_ref",
          "decision",
          "motivo"
        ]
      }
    }
  },
  "required": [
    "propostas",
    "sem_par",
    "ambiguas"
  ],
  "additionalProperties": false
}
⚪tuss_lookup(code, tabela, include_expired, data)

Busca um código TUSS exato. Quando usar: para consultar código ou vigência. Quando não usar: para buscar por descrição.

输入模式

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "tabela": {
      "type": "string"
    },
    "include_expired": {
      "type": "boolean"
    },
    "data": {
      "type": "string",
      "format": "date"
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "resultados": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "required": [
    "resultados"
  ],
  "additionalProperties": false
}
🟢tuss_search(text, tabela, include_expired, data, limite)

Busca códigos TUSS por texto. Quando usar: para localizar procedimentos por descrição. Quando não usar: para validar XML.

输入模式

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string"
    },
    "tabela": {
      "type": "string"
    },
    "include_expired": {
      "type": "boolean"
    },
    "data": {
      "type": "string",
      "format": "date"
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 20
    }
  },
  "required": [
    "text"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "resultados": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "required": [
    "resultados"
  ],
  "additionalProperties": false
}
⚪tiss_sadt_missing(values)

Identifica campos obrigatórios SP/SADT ausentes. Quando usar: antes de renderizar uma guia. Quando não usar: para validar um lote.

输入模式

{
  "type": "object",
  "properties": {
    "values": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    }
  },
  "required": [
    "values"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "faltando": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "faltando"
  ],
  "additionalProperties": false
}
⚪tiss_sadt_catalog

Retorna o catálogo SP/SADT. Quando usar: para conhecer campos e domínios. Quando não usar: para preencher uma guia sem dados.

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
⚪tiss_rede(cnpj, cnes, limite)

Consulta as operadoras vinculadas a um CNPJ ou CNES. Quando usar: para identificar vínculos de um estabelecimento. Quando não usar: para buscar o cadastro geral; use operadora_lookup.

输入模式

{
  "type": "object",
  "properties": {
    "cnpj": {
      "type": "string"
    },
    "cnes": {
      "type": "string"
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "default": 200
    }
  },
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "atualizado_em": {
      "type": "string"
    },
    "fonte": {
      "type": "string"
    },
    "total": {
      "type": "integer"
    },
    "operadoras": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "registro_ans": {
            "type": "string"
          },
          "nome": {
            "type": [
              "string",
              "null"
            ]
          },
          "cnes": {
            "type": [
              "string",
              "null"
            ]
          },
          "nome_estabelecimento": {
            "type": "string"
          },
          "tipo_contrato": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "disponibilidade": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "tipo_prestador": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "urgencia_emergencia": {
            "type": "boolean"
          },
          "dt_vinculo_inicio": {
            "type": [
              "string",
              "null"
            ]
          },
          "planos": {
            "type": "integer"
          }
        },
        "additionalProperties": false,
        "required": [
          "registro_ans",
          "nome",
          "cnes",
          "nome_estabelecimento",
          "tipo_contrato",
          "disponibilidade",
          "tipo_prestador",
          "urgencia_emergencia",
          "dt_vinculo_inicio",
          "planos"
        ]
      }
    }
  },
  "required": [
    "atualizado_em",
    "fonte",
    "total",
    "operadoras"
  ],
  "additionalProperties": false
}
⚪operadora_rede(registro, uf, limite)

Consulta os estabelecimentos vinculados a uma operadora. Quando usar: para identificar unidades da rede por UF. Quando não usar: para buscar o cadastro geral; use operadora_lookup.

输入模式

{
  "type": "object",
  "properties": {
    "registro": {
      "type": "string"
    },
    "uf": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "default": 200
    }
  },
  "required": [
    "registro"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "atualizado_em": {
      "type": "string"
    },
    "fonte": {
      "type": "string"
    },
    "registro_ans": {
      "type": "string"
    },
    "total": {
      "type": "integer"
    },
    "por_uf": {
      "type": "object",
      "additionalProperties": {
        "type": "integer"
      }
    },
    "estabelecimentos": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "cnes": {
            "type": [
              "string",
              "null"
            ]
          },
          "cnpj": {
            "type": [
              "string",
              "null"
            ]
          },
          "nome": {
            "type": "string"
          },
          "classe": {
            "type": [
              "string",
              "null"
            ]
          },
          "cd_municipio": {
            "type": [
              "string",
              "null"
            ]
          },
          "uf": {
            "type": "string"
          },
          "tipo_contrato": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "disponibilidade": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "tipo_prestador": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "urgencia_emergencia": {
            "type": "boolean"
          },
          "dt_vinculo_inicio": {
            "type": [
              "string",
              "null"
            ]
          },
          "planos": {
            "type": "integer"
          }
        },
        "additionalProperties": false,
        "required": [
          "cnes",
          "cnpj",
          "nome",
          "classe",
          "cd_municipio",
          "uf",
          "tipo_contrato",
          "disponibilidade",
          "tipo_prestador",
          "urgencia_emergencia",
          "dt_vinculo_inicio",
          "planos"
        ]
      }
    }
  },
  "required": [
    "atualizado_em",
    "fonte",
    "registro_ans",
    "total",
    "por_uf",
    "estabelecimentos"
  ],
  "additionalProperties": false
}
⚪operadora_perfil(registro_ans)

Consulta o cadastro e a série semestral de glosa e pagamento de uma operadora na ANS. Quando usar: para conhecer uma operadora pelo registro ANS. Quando não usar: para buscar operadoras por nome.

输入模式

{
  "type": "object",
  "properties": {
    "registro_ans": {
      "type": "string",
      "pattern": "^[0-9]{5,6}$"
    }
  },
  "required": [
    "registro_ans"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "registro_ans": {
      "type": "string"
    },
    "razao_social": {
      "type": "string"
    },
    "indicadores": {
      "type": "object",
      "properties": {
        "fonte": {
          "type": "object",
          "properties": {},
          "additionalProperties": true
        },
        "serie": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {},
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "fonte",
        "serie"
      ]
    }
  },
  "required": [
    "registro_ans",
    "razao_social",
    "indicadores"
  ],
  "additionalProperties": true
}
⚪tiss_sandbox_enviar_lote(xml, cenario, tentativa, registro_ans)

Envia um lote à operadora simulada. Quando usar: para testar integração local. Quando não usar: para transmitir dados reais.

输入模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    },
    "cenario": {
      "enum": [
        "aprovado",
        "duplicidade",
        "carteirinha_vencida",
        "sem_autorizacao",
        "falha_transitoria",
        "falha_permanente"
      ]
    },
    "tentativa": {
      "type": "integer",
      "minimum": 1
    },
    "registro_ans": {
      "type": "string",
      "pattern": "^[0-9]{5,6}$"
    }
  },
  "required": [
    "xml"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "aceito": {
      "type": "boolean"
    },
    "protocolo": {
      "type": [
        "string",
        "null"
      ]
    },
    "numero_protocolo": {
      "type": [
        "string",
        "null"
      ]
    },
    "numero_lote": {
      "type": [
        "string",
        "null"
      ]
    },
    "cenario": {
      "type": "string"
    },
    "resumo": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "findings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "required": [
    "aceito",
    "protocolo",
    "numero_protocolo",
    "numero_lote",
    "cenario",
    "findings"
  ],
  "additionalProperties": true
}
⚪tiss_sandbox_demonstrativo(protocolo)

Gera o demonstrativo de um protocolo simulado. Quando usar: após enviar um lote. Quando não usar: com protocolo de outra operadora.

输入模式

{
  "type": "object",
  "properties": {
    "protocolo": {
      "type": "string"
    }
  },
  "required": [
    "protocolo"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "protocolo": {
      "type": "string"
    },
    "xml": {
      "type": "string"
    }
  },
  "required": [
    "protocolo",
    "xml"
  ],
  "additionalProperties": false
}
⚪tiss_build(lote)

Gera o XML TISS 4.03.00 de um lote em JSON, com hash do epílogo. Consulte tiss://schemas/lote para o esquema estrutural. Quando usar: depois de validar o lote em JSON sem erros. Quando não usar: para corrigir achados; use tiss_apply_fixes.

输入模式

{
  "type": "object",
  "properties": {
    "lote": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "Schema estrutural disponível em tiss://schemas/lote."
    }
  },
  "required": [
    "lote"
  ],
  "additionalProperties": true
}

输出模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    },
    "hash": {
      "type": "string"
    }
  },
  "required": [
    "xml",
    "hash"
  ],
  "additionalProperties": false
}
⚪tiss_hash(xml)

Calcula o hash do epílogo de um XML TISS. Quando usar: para conferir a integridade do XML. Quando não usar: para validar o conteúdo; use tiss_validate.

输入模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    }
  },
  "required": [
    "xml"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "hash": {
      "type": "string"
    }
  },
  "required": [
    "hash"
  ],
  "additionalProperties": false
}
⚪tiss_audit(lote, contexto, data, operadora)

Audita um lote JSON com regras locais e contexto da operadora. Quando usar: para identificar inconsistências administrativas. Quando não usar: para aplicar correções; use tiss_apply_fixes.

输入模式

{
  "type": "object",
  "properties": {
    "lote": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "contexto": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "tabela_operadora": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "registro_ans": {
              "type": "string"
            },
            "procedimentos": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "exige_autorizacao": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "vigencia_inicio": {
              "type": "string",
              "format": "date"
            },
            "vigencia_fim": {
              "type": [
                "string",
                "null"
              ],
              "format": "date"
            },
            "max_guias": {
              "type": "integer",
              "minimum": 1
            }
          }
        },
        "carteirinhas": {
          "type": "object"
        },
        "autorizacoes": {
          "type": "object"
        }
      }
    },
    "data": {
      "type": "string",
      "format": "date"
    },
    "operadora": {
      "type": [
        "string",
        "object"
      ],
      "pattern": "^[0-9]{5,6}$"
    }
  },
  "required": [
    "lote"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "valid": {
      "type": "boolean"
    },
    "version": {
      "type": [
        "string",
        "null"
      ]
    },
    "findings": {
      "type": "array",
      "items": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "title": "Finding",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "code",
          "severity",
          "guia",
          "xpath",
          "pointer",
          "message",
          "fix",
          "needs",
          "glosa",
          "rule"
        ],
        "properties": {
          "code": {
            "enum": [
              "audit.autorizacao_ausente",
              "audit.autorizacao_vencida",
              "audit.carteirinha_ausente",
              "audit.carteirinha_inativa",
              "audit.carteirinha_vencida",
              "audit.data_ausente",
              "audit.operadora_divergente",
              "audit.procedimento_ausente",
              "audit.procedimento_fora_da_tabela",
              "audit.tabela_fora_de_vigencia",
              "audit.tabela_sem_procedimentos",
              "audit.valor_nao_positivo",
              "autorizacao.carteirinha",
              "autorizacao.dado_ausente",
              "autorizacao.exige_auditoria",
              "autorizacao.sem_regra",
              "guia.carteirinha_ausente",
              "guia.executante_ausente",
              "guia.sequencial",
              "item.valor_divergente",
              "item.valor_zerado",
              "lote.acima_do_teto",
              "lote.caractere_invalido",
              "lote.estrutura",
              "lote.guia_duplicada",
              "lote.hash_divergente",
              "lote.valor_total_geral",
              "lote.vazio",
              "regra.combinacao_proibida",
              "regra.exige_autorizacao",
              "regra.max_itens",
              "regra.obrigatorio",
              "regra.padrao",
              "regra.valores",
              "tuss.fora_de_vigencia",
              "tuss.inexistente",
              "versao.divergente",
              "versao.nao_detectada",
              "versao.nao_suportada",
              "xml.doctype",
              "xml.encoding",
              "xml.malformado",
              "xsd.atributo",
              "xsd.elemento_ausente",
              "xsd.elemento_inesperado",
              "xsd.enumeracao",
              "xsd.outro",
              "xsd.padrao",
              "xsd.tamanho",
              "xsd.tipo"
            ]
          },
          "severity": {
            "enum": [
              "error",
              "warning"
            ]
          },
          "guia": {
            "type": [
              "string",
              "null"
            ]
          },
          "xpath": {
            "type": [
              "string",
              "null"
            ]
          },
          "pointer": {
            "type": [
              "string",
              "null"
            ]
          },
          "message": {
            "type": "string"
          },
          "fix": {
            "anyOf": [
              {
                "type": "null"
              },
              {
                "type": "array",
                "items": {
                  "type": "object"
                }
              }
            ]
          },
          "needs": {
            "anyOf": [
              {
                "type": "null"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "glosa": {
            "type": [
              "string",
              "null"
            ]
          },
          "rule": {
            "type": [
              "object",
              "null"
            ]
          }
        }
      }
    },
    "decisao": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "tipo",
        "rules",
        "needs"
      ],
      "properties": {
        "tipo": {
          "enum": [
            "aprovar_por_regra",
            "pendente",
            "encaminhar_auditor"
          ]
        },
        "rules": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "id",
              "source",
              "mantenedor"
            ],
            "properties": {
              "id": {
                "type": "string"
              },
              "source": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "url",
                  "titulo",
                  "data",
                  "acesso",
                  "official"
                ],
                "properties": {
                  "url": {
                    "type": "string"
                  },
                  "titulo": {
                    "type": "string"
                  },
                  "data": {
                    "type": "string"
                  },
                  "acesso": {
                    "type": "string"
                  },
                  "official": {
                    "type": "boolean"
                  }
                }
              },
              "mantenedor": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "tipo"
                ],
                "properties": {
                  "tipo": {
                    "enum": [
                      "comunidade",
                      "operadora"
                    ]
                  },
                  "registro_ans": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "needs": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "valid",
    "version",
    "findings"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Report",
  "additionalProperties": false
}
⚪tiss_rejection_map(lotes, contexto, operadora, regras, segredo_pseudonimo, ...)

Agrega achados por prestador e mês, sem expor dados das guias; CPF é pseudonimizado. Quando usar: para analisar rejeições por prestador. Quando não usar: para consultar guias individuais ou corrigir lotes.

输入模式

{
  "type": "object",
  "properties": {
    "lotes": {
      "type": "array",
      "items": {
        "type": [
          "string",
          "object"
        ]
      },
      "minItems": 1,
      "maxItems": 100
    },
    "contexto": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "tabela_operadora": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "registro_ans": {
              "type": "string"
            },
            "procedimentos": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "exige_autorizacao": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "vigencia_inicio": {
              "type": "string",
              "format": "date"
            },
            "vigencia_fim": {
              "type": [
                "string",
                "null"
              ],
              "format": "date"
            },
            "max_guias": {
              "type": "integer",
              "minimum": 1
            }
          }
        },
        "carteirinhas": {
          "type": "object"
        },
        "autorizacoes": {
          "type": "object"
        }
      }
    },
    "operadora": {
      "type": "string",
      "pattern": "^[0-9]{5,6}$"
    },
    "regras": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "segredo_pseudonimo": {
      "type": "string",
      "minLength": 16
    },
    "data": {
      "type": "string",
      "format": "date"
    }
  },
  "required": [
    "lotes"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "versao": {
      "const": "1"
    },
    "lotes": {
      "type": "integer",
      "minimum": 0
    },
    "guias": {
      "type": "integer",
      "minimum": 0
    },
    "ignorados": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0
      }
    },
    "prestadores": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "prestador",
          "mes",
          "guias",
          "guias_com_achado",
          "valor_total",
          "valor_afetado"
        ],
        "properties": {
          "prestador": {
            "type": "string",
            "pattern": "^(codigo:.+|cnpj:\\d{14}|cpf:hmac:[0-9a-f]{64})$"
          },
          "mes": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^\\d{4}-\\d{2}$"
          },
          "guias": {
            "type": "integer",
            "minimum": 0
          },
          "guias_com_achado": {
            "type": "integer",
            "minimum": 0
          },
          "valor_total": {
            "type": "string",
            "pattern": "^-?\\d+\\.\\d{2}$"
          },
          "valor_afetado": {
            "type": "string",
            "pattern": "^-?\\d+\\.\\d{2}$"
          }
        }
      }
    },
    "linhas": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "prestador",
          "mes",
          "codigo",
          "glosa",
          "rule_id",
          "guias",
          "valor_afetado"
        ],
        "properties": {
          "prestador": {
            "type": "string",
            "pattern": "^(codigo:.+|cnpj:\\d{14}|cpf:hmac:[0-9a-f]{64})$"
          },
          "mes": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^\\d{4}-\\d{2}$"
          },
          "codigo": {
            "type": "string"
          },
          "glosa": {
            "type": [
              "string",
              "null"
            ]
          },
          "rule_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "guias": {
            "type": "integer",
            "minimum": 0
          },
          "valor_afetado": {
            "type": "string",
            "pattern": "^-?\\d+\\.\\d{2}$"
          }
        }
      }
    }
  },
  "required": [
    "versao",
    "lotes",
    "guias",
    "ignorados",
    "prestadores",
    "linhas"
  ],
  "additionalProperties": false
}
🟡tiss_apply_fixes(lote, report)

Aplica correções JSON Patch de um relatório ao lote. Quando usar: depois de tiss_validate ou tiss_audit com achados corrigíveis. Quando não usar: para inventar dados ausentes; peça-os ao usuário.

输入模式

{
  "type": "object",
  "properties": {
    "lote": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "report": {
      "type": "object",
      "properties": {
        "findings": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {},
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": true,
      "required": [
        "findings"
      ]
    }
  },
  "required": [
    "lote",
    "report"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "lote": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    }
  },
  "required": [
    "lote"
  ],
  "additionalProperties": false
}
🟢glosa_explain(codigo)

Explica um código da Tabela 38 da ANS. Quando usar: ao interpretar uma glosa recebida. Quando não usar: para validar ou corrigir o lote.

输入模式

{
  "type": "object",
  "properties": {
    "codigo": {
      "type": "string",
      "pattern": "^[0-9]{4}$"
    }
  },
  "required": [
    "codigo"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "codigo": {
      "type": "string"
    },
    "descricao": {
      "type": "string"
    },
    "grupo": {
      "type": "string"
    },
    "fonte": {
      "type": "object",
      "properties": {
        "data": {
          "type": "string"
        },
        "titulo": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "additionalProperties": true,
      "required": [
        "data",
        "titulo",
        "url"
      ]
    },
    "orientacao": {
      "type": "object",
      "properties": {
        "fonte": {
          "type": "string"
        },
        "texto": {
          "type": "string"
        }
      },
      "additionalProperties": true,
      "required": [
        "fonte",
        "texto"
      ]
    }
  },
  "required": [
    "codigo",
    "descricao",
    "grupo",
    "fonte",
    "orientacao"
  ],
  "additionalProperties": true
}
⚪tiss_dominio(tabela, codigo, texto, include_expired, data, ...)

Consulta tabelas e códigos de domínio TISS. Quando usar: para localizar um código ou termo de domínio. Quando não usar: para buscar procedimentos TUSS; use tuss_search.

输入模式

{
  "type": "object",
  "properties": {
    "tabela": {
      "type": "string"
    },
    "codigo": {
      "type": "string"
    },
    "texto": {
      "type": "string"
    },
    "include_expired": {
      "type": "boolean"
    },
    "data": {
      "type": "string",
      "format": "date"
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 20
    }
  },
  "additionalProperties": false,
  "dependentRequired": {
    "codigo": [
      "tabela"
    ]
  },
  "not": {
    "required": [
      "codigo",
      "texto"
    ]
  }
}

输出模式

{
  "type": "object",
  "properties": {
    "tabelas": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "resultados": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "additionalProperties": false
}
⚪operadora_lookup(texto, limite)

Busca operadoras ativas pelo nome, registro, CNPJ ou localidade. Quando usar: para localizar uma operadora na base pública. Quando não usar: para consultar vínculos hospitalares; use tiss_rede.

输入模式

{
  "type": "object",
  "properties": {
    "texto": {
      "type": "string"
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "required": [
    "texto"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "resultados": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "required": [
    "resultados"
  ],
  "additionalProperties": false
}
⚪tiss_referencia(codigo, uf, tabela, modalidade, porte, ...)

Consulta valores unitários de referência D-TISS da ANS por procedimento TUSS. Quando usar: para comparar valores informados por UF, modalidade, porte e semestre. Quando não usar: para glosa ou preço contratado de uma operadora; use as ferramentas de operadoras.

输入模式

{
  "type": "object",
  "properties": {
    "codigo": {
      "type": "string",
      "pattern": "^[0-9]{1,10}$"
    },
    "uf": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "tabela": {
      "type": "string",
      "pattern": "^[0-9]{2}$"
    },
    "modalidade": {
      "type": "string"
    },
    "porte": {
      "type": "string"
    },
    "semestre": {
      "type": "string",
      "pattern": "^[0-9]{4}-[12]$"
    }
  },
  "required": [
    "codigo",
    "uf"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "referencia": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": true
    },
    "semestre": {
      "type": "string"
    },
    "fonte": {
      "type": "string"
    },
    "atualizado_em": {
      "type": "string"
    },
    "aviso": {
      "type": [
        "string",
        "null"
      ]
    },
    "minimo_n": {
      "type": "integer"
    }
  },
  "required": [
    "referencia",
    "semestre",
    "fonte",
    "atualizado_em",
    "aviso",
    "minimo_n"
  ],
  "additionalProperties": false
}
⚪tiss_autorizacao_build(mensagem)

Gera XML TISS 4.03.00 para solicitação ou resposta de autorização SP/SADT.

输入模式

{
  "type": "object",
  "properties": {
    "mensagem": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    }
  },
  "required": [
    "mensagem"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    },
    "hash": {
      "type": "string"
    }
  },
  "required": [
    "xml",
    "hash"
  ],
  "additionalProperties": false
}
🟢tiss_autorizacao_parse(xml)

Interpreta solicitações e respostas de autorização SP/SADT.

输入模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    }
  },
  "required": [
    "xml"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "mensagem": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    }
  },
  "required": [
    "mensagem"
  ],
  "additionalProperties": false
}
🟢tiss_autorizacao_check(solicitacao, xml, contexto)

Valida uma solicitação SP/SADT e retorna uma decisão explicável.

输入模式

{
  "type": "object",
  "properties": {
    "solicitacao": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "xml": {
      "type": "string"
    },
    "contexto": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    }
  },
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
⚪tiss_sandbox_autorizacao(solicitacao, xml, cenario)

Gera uma resposta SP/SADT sintética nos cenários disponíveis.

输入模式

{
  "type": "object",
  "properties": {
    "solicitacao": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "xml": {
      "type": "string"
    },
    "cenario": {
      "enum": [
        "aprovado",
        "pendente",
        "negado"
      ]
    }
  },
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "xml": {
      "type": "string"
    }
  },
  "required": [
    "xml"
  ],
  "additionalProperties": false
}
⚪buscar_docs(texto, limite)

Busca trechos da documentação local da biblioteca. Quando usar: para encontrar instruções e referências da API. Quando não usar: para consultar dados clínicos ou códigos específicos.

输入模式

{
  "type": "object",
  "properties": {
    "texto": {
      "type": "string"
    },
    "limite": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 3
    }
  },
  "required": [
    "texto"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "resultados": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "uri": {
            "type": "string"
          },
          "titulo": {
            "type": "string"
          },
          "trecho": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "required": [
          "uri",
          "titulo",
          "trecho"
        ]
      }
    }
  },
  "required": [
    "resultados"
  ],
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本26 个工具