O que glicoengenharia faz?
Visão Geral
A glicosilação é a modificação pós-traducional (PTM) mais comum e complexa, afetando mais de 50% de todas as proteínas humanas. Os glicanos regulam o dobramento, estabilidade, reconhecimento imune, interações com receptores e farmacocinética de proteínas terapêuticas. A glicoengenharia envolve a modificação racional dos padrões de glicosilação para melhorar a eficácia terapêutica, estabilidade ou evasão imune.
Dois principais tipos de glicosilação:
- N-glicosilação: Ligada à asparagina (N) no sequon N-X-[S/T] onde X ≠ Prolina; ocorre no RE/Golgi
- O-glicosilação: Ligada à serina (S) ou treonina (T); sem motivo de consenso estrito; iniciação principalmente por GalNAc
Quando Usar Esta Habilidade
Use esta habilidade quando:
- Engenharia de anticorpos: Otimizar a glicosilação do Fc para ADCC, CDC ou imunogenicidade reduzida
- Projeto de proteínas terapêuticas: Identificar sítios de glicosilação que afetam meia-vida, estabilidade ou imunogenicidade
- Projeto de antígenos vacinais: Projetar blindagens de glicanos para focar respostas imunes em epítopos conservados
- Caracterização de biossimilares: Comparar padrões de glicanos entre referência e biossimilar
- Análise de alvos farmacológicos: A glicosilação afeta o engajamento de alvos para um receptor?
- Estabilidade proteica: N-glicanos frequentemente estabilizam proteínas; identificar sítios para mutações estabilizadoras
Análise de Sequon de N-Glicosilação
Varredura por Sítios de N-Glicosilação
A N-glicosilação ocorre no sequon N-X-[S/T] onde X ≠ Prolina.
import re
from typing import List, Tuple
def find_n_glycosylation_sequons(sequence: str) -> List[dict]:
"""
Escaneia uma sequência de proteína em busca de sequons canônicos de N-glicosilação.
Motivo: N-X-[S/T], onde X ≠ Prolina.
Args:
sequence: Sequência de aminoácidos em código de uma letra
Returns:
Lista de dicionários com posição (base 1), motivo e contexto
"""
seq = sequence.upper()
results = []
i = 0
while i <= len(seq) - 3:
triplet = seq[i:i+3]
if triplet[0] == 'N' and triplet[1] != 'P' and triplet[2] in {'S', 'T'}:
context = seq[max(0, i-3):i+6] # contexto de ±3 resíduos
results.append({
'position': i + 1, # base 1
'motif': triplet,
'context': context,
'sequon_type': 'NXS' if triplet[2] == 'S' else 'NXT'
})
i += 3
else:
i += 1
return results
def summarize_glycosylation_sites(sequence: str, protein_name: str = "") -> str:
"""Gera um resumo de registro de pesquisa dos sítios de N-glicosilação."""
sequons = find_n_glycosylation_sequons(sequence)
lines = [f"# Análise de Sequon de N-Glicosilação: {protein_name or 'Proteína'}"]
lines.append(f"Comprimento da sequência: {len(sequence)}")
lines.append(f"Total de sequons de N-glicosilação: {len(sequons)}")
if sequons:
lines.append(f"\nSítios N-X-S: {sum(1 for s in sequons if s['sequon_type'] == 'NXS')}")
lines.append(f"Sítios N-X-T: {sum(1 for s in sequons if s['sequon_type'] == 'NXT')}")
lines.append(f"\nDetalhes dos sítios:")
for s in sequons:
lines.append(f" Posição {s['position']}: {s['motif']} (contexto: ...{s['context']}...)")
else:
lines.append("Nenhum sequon canônico de N-glicosilação detectado.")
return "\n".join(lines)
# Exemplo: Região Fc de IgG1
fc_sequence = "APELLGGPSVFLFPPKPKDTLMISRTPEVTCVVVDVSHEDPEVKFNWYVDGVEVHNAKTKPREEQYNSTYRVVSVLTVLHQDWLNGKEYKCKVSNKALPAPIEKTISKAKGQPREPQVYTLPPSREEMTKNQVSLTCLVKGFYPSDIAVEWESNGQPENNYKTTPPVLDSDGSFFLYSKLTVDKSRWQQGNVFSCSVMHEALHNHYTQKSLSLSPGK"
print(summarize_glycosylation_sites(fc_sequence, "IgG1 Fc"))
Mutando Sítios de N-Glicosilação
def eliminate_glycosite(sequence: str, position: int, replacement: str = "Q") -> str:
"""
Elimina um sítio de N-glicosilação substituindo Asn → Gln (conservadora).
Args:
sequence: Sequência da proteína
position: Posição base 1 da Asn a ser mutada
replacement: Aminoácido a substituir (padrão Q = Gln; tamanho similar, não glicosilado)
Returns:
Sequência mutada
"""
seq = list(sequence.upper())
idx = position - 1
assert seq[idx] == 'N', f"Posição {position} é '{seq[idx]}', não 'N'"
seq[idx] = replacement.upper()
return ''.join(seq)
def add_glycosite(sequence: str, position: int, flanking_context: str = "S") -> str:
"""
Introduz um sítio de N-glicosilação mutando um resíduo para Asn,
e garantindo que X ≠ Pro e +2 = S/T.
Args:
position: Posição base 1 para introduzir Asn
flanking_context: 'S' ou 'T' na posição+2 (se modificação necessária)
"""
seq = list(sequence.upper())
idx = position - 1
# Muta para Asn
seq[idx] = 'N'
# Garante que X+1 != Pro (muta para Ala se necessário)
if idx + 1 < len(seq) and seq[idx + 1] == 'P':
seq[idx + 1] = 'A'
# Garante que X+2 = S ou T
if idx + 2 < len(seq) and seq[idx + 2] not in ('S', 'T'):
seq[idx + 2] = flanking_context
return ''.join(seq)
Análise de O-Glicosilação
Predição Heurística de Pontos Críticos de O-Glicosilação
def predict_o_glycosylation_hotspots(
sequence: str,
window: int = 7,
min_st_fraction: float = 0.4,
disallow_proline_next: bool = True
) -> List[dict]:
"""
Pontuação heurística de pontos críticos de O-glicosilação com base na densidade local de S/T.
Não substitui NetOGlyc; use como linha de base rápida.
Regras:
- A O-GalNAc glicosilação se agrupa em segmentos ricos em Ser/Thr
- Marca resíduos Ser/Thr em janelas enriquecidas para S/T
- Evite S/T imediatamente seguido por Pro (motivos TP/SP inibem GalNAc-T)
Args:
window: Tamanho ímpar da janela para densidade local de S/T
min_st_fraction: Fração mínima de S/T na janela para marcar o sítio
"""
if window % 2 == 0:
window = 7
seq = sequence.upper()
half = window // 2
candidates = []
for i, aa in enumerate(seq):
if aa not in ('S', 'T'):
continue
if disallow_proline_next and i + 1 < len(seq) and seq[i+1] == 'P':
continue
start = max(0, i - half)
end = min(len(seq), i + half + 1)
segment = seq[start:end]
st_count = sum(1 for c in segment if c in ('S', 'T'))
frac = st_count / len(segment)
if frac >= min_st_fraction:
candidates.append({
'position': i + 1,
'residue': aa,
'st_fraction': round(frac, 3),
'window': f"{start+1}-{end}",
'segment': segment
})
return candidates
Ferramentas Externas de Glicoengenharia
1. NetOGlyc 4.0 (Predição de O-glicosilação)
Serviço web para predição de alta precisão de sítios O-GalNAc:
- URL: https://services.healthtech.dtu.dk/services/NetOGlyc-4.0/
- Entrada: Sequência de proteína em FASTA
- Saída: Pontuações de probabilidade de O-glicosilação por resíduo
- Método: Rede neural treinada em sítios O-GalNAc experimentalmente verificados
import requests
def submit_netoglycv4(fasta_sequence: str) -> str:
"""
Submete sequência ao serviço web NetOGlyc 4.0.
Retorna a URL do job para recuperação dos resultados.
Nota: Usa o serviço web DTU Health Tech. Resultados levam ~1-5 min.
"""
url = "https://services.healthtech.dtu.dk/cgi-bin/webface2.cgi"
# Submissão NetOGlyc (parâmetros podem variar com a versão do serviço web)
# Recomende usar a interface web diretamente para a maioria dos casos de uso
print("Submeta a sequência em: https://services.healthtech.dtu.dk/services/NetOGlyc-4.0/")
return url
# Também: NetNGlyc para predição de N-glicosilação
# URL: https://services.healthtech.dtu.dk/services/NetNGlyc-1.0/
2. GlycoSHIELD (Análise de Blindagem por Glicanos)
O GlycoSHIELD enxerta bibliotecas de conformeros de glicanos pré-simulados em uma estrutura proteica estática e pontua o quanto da superfície proteica os glicanos blindam, sem executar nova DM (Tsai et al., Cell 2024, doi:10.1016/j.cell.2024.01.034):
- URL: https://gitlab.mpcdf.mpg.de/dioscuri-biophysics/glycoshield-md/ (aplicativo web: https://glycoshield.eu)
- Uso: Modelar a blindagem de glicanos em uma glicoproteína e mapear a blindagem por resíduo
- Saída: Conjuntos de PDB/XTC glicosilados por sítio, gráfico de blindagem por resíduo, PDB com blindagem na coluna do fator B
O GlycoSHIELD não está no PyPI — uv pip install glycoshield falha. Ele é distribuído como três scripts sobre
um pequeno pacote glycoshield (precisa de numpy, scipy, matplotlib, MDAnalysis; GlycoSASA.py também precisa
de gmx do GROMACS no PATH). Instale a partir do checkout:
# Instalação (GPL-3.0). As bibliotecas de conformeros de glicanos são baixadas separadamente —
# veja glycan_library_downloader.py e GLYCAN_LIBRARY/ no repositório.
git clone https://gitlab.mpcdf.mpg.de/dioscuri-biophysics/glycoshield-md.git
cd glycoshield-md
uv pip install -e .
# 1. Enxerta conformeros de glicanos em cada sequon listado no arquivo de entrada.
# Uma linha por sítio: <chain> <res-1,res,res+1> <1,2,3> <glycan.pdb> <glycan.xtc> <out.pdb> <out.xtc>
python GlycoSHIELD.py --protpdb protein.pdb --inputfile sequons_input \
--threshold 3.5 --mode CG --shuffle-sugar
# 2. Pontuação de blindagem por resíduo nos conjuntos enxertados (raios da sonda em nm)
python GlycoSASA.py --pdblist A_463.pdb,A_492.pdb --xtclist A_463.xtc,A_492.xtc \
--probelist 0.14,0.25 --plottrace
Ilustrativo: as flags vêm das definições argparse dos scripts e do tutorial upstream
(N-caderina EC5 com glicanos Man5); elas não foram executadas aqui. --mode CG verifica colisões apenas
contra átomos Cα e combina com --threshold 3.5; --mode All com --threshold 0.7 é a configuração
all-atom.
3. GlycoWorkbench (Desenho/Análise de Estruturas de Glicanos)
- URL: https://www.eurocarbdb.org/project/glycoworkbench
- Uso: Desenhar estruturas de glicanos, calcular massas, anotar espectros de EM
- Formato: GlycoCT, notação condensada de glicanos IUPAC
4. GlyConnect (Banco de Dados Glicano-Proteína)
- URL: https://glyconnect.expasy.org/
- Uso: Encontrar glicoproteínas e sítios de glicosilação verificados experimentalmente
- Consulta: Por proteína (ID UniProt), estrutura de glicano ou tecido
import requests
def query_glyconnect(uniprot_id: str) -> dict:
"""Consulta GlyConnect para dados de glicosilação de uma proteína."""
url = f"https://glyconnect.expasy.org/api/proteins/uniprot/{uniprot_id}"
response = requests.get(url, headers={"Accept": "application/json"})
if response.status_code == 200:
return response.json()
return {}
# Exemplo: consultar glicosilação de EGFR
eggfr_glyco = query_glyconnect("P00533")
5. UniCarbKB (Banco de Dados de Estruturas de Glicanos)
- URL: https://unicarbkb.org/
- Uso: Navegar por estruturas de glicanos, pesquisar por massa ou composição
- Formato: Notação GlycoCT ou IUPAC
Principais Estratégias de Glicoengenharia
Para Anticorpos Terapêuticos
| Objetivo | Estratégia | Notas |
|---|---|---|
| Aumentar ADCC | Defucosilação no Fc Asn297 | IgG1 afucosilado tem ligação ~50× melhor a FcγRIIIa |
| Reduzir imunogenicidade | Remover glicanos não humanos | Eliminar epítopos α-Gal, NGNA |
| Melhorar meia-vida PK | Sialilação | Glicanos sialilados estendem a meia-vida |
| Reduzir inflamação | Hipersialilação | Mecanismo anti-inflamatório da IVIG |
| Criar blindagem de glicanos | Adicionar N-glicosítios à superfície | Máscara epítopos vulneráveis (design de vacinas) |
Mutações Comuns Usadas
| Mutação | Efeito |
|---|---|
| N297A/Q (IgG1) | Remove glicosilação do Fc (aglicosil) |
| N297D (IgG1) | Remove glicosilação do Fc |
| S298A/E333A/K334A | Aumenta ligação a FcγRIIIa |
| F243L (IgG1) | Aumenta defucosilação |
| T299A | Remove glicosilação do Fc |
Notação de Glicanos
Notação Condensada IUPAC (Abreviações de Monossacarídeos)
| Símbolo | Nome Completo | Tipo |
|---|---|---|
| Glc | Glicose | Hexose |
| GlcNAc | N-Acetilglicosamina | HexNAc |
| Man | Manose | Hexose |
| Gal | Galactose | Hexose |
| Fuc | Fucose | Desoxi-hexose |
| Neu5Ac | Ácido N-Acetilneuramínico (Ácido Siálico) | Ácido siálico |
| GalNAc | N-Acetilgalactosamina | HexNAc |
Estrutura de N-Glicano Complexo
N-glicano biantenário complexo típico:
Neu5Ac-Gal-GlcNAc-Man\
Man-GlcNAc-GlcNAc-[Asn]
Neu5Ac-Gal-GlcNAc-Man/
(±Fucose central no GlcNAc mais interno)
Melhores Práticas
- Comece com NetNGlyc/NetOGlyc para previsão computacional antes da validação experimental
- Verifique com espectrometria de massas: Glicoproteômica (Byonic, Mascot) para perfil de glicanos sítio-específico
- Considere o contexto do sítio: Nem todos os sequons previstos são realmente glicosilados (acessibilidade, tipo celular, conformação proteica)
- Para anticorpos: O glicano N297 do Fc é crítico — sempre caracterize este sítio primeiro
- Use GlyConnect para verificar se sua proteína de interesse possui dados de glicosilação experimentalmente verificados
Recursos Adicionais
- GlyTouCan (repositório de estruturas de glicanos): https://glytoucan.org/
- GlyConnect: https://glyconnect.expasy.org/
- CFG Functional Glycomics: http://www.functionalglycomics.org/
- Servidores DTU Health Tech (NetNGlyc, NetOGlyc): https://services.healthtech.dtu.dk/
- GlycoWorkbench: https://glycoworkbench.software.informer.com/
- Revisão: Apweiler R et al. (1999) Biochim Biophys Acta. PMID: 10564035
- Revisão de glicoengenharia terapêutica: Jefferis R (2009) Nature Reviews Drug Discovery. PMID: 19448661