sigaa-ifsc-mcp
Accesses the IFSC Moodle instance via the official Moodle Mobile app API, providing tools to list courses, browse sections and items, fetch and download materials, search content, read deadlines and calendar events, view grades, tasks and quizzes, manage forums, messages and notifications, and submit assignments with confirmation.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sigaa-ifsc-mcpquais são minhas notas e faltas neste semestre?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
sigaa-ifsc-mcp
Servidor MCP para consultar o portal do discente do SIGAA do IFSC: perfil, turmas, notas, frequência, tarefas, notícias e avaliações.
A navegação e a extração de dados foram portadas da biblioteca sigaa-api, de Geovane Schmitz.
Projeto não oficial, sem vínculo com o IFSC.
Autenticação
O login do SIGAA tem um CAPTCHA (Cloudflare Turnstile), então este servidor não digita a sua senha nem resolve o CAPTCHA. Quem loga é você, numa janela do navegador que o próprio servidor abre:
Você pede algo ao Claude (por exemplo, "quais são minhas notas?").
Se não houver sessão válida, o servidor abre uma janela do Edge (no Windows) ou do Chromium na tela de login do SIGAA.
Você entra normalmente. Quando o portal do discente abre, o servidor captura o cookie
JSESSIONID, fecha a janela e responde ao que você pediu.
O perfil desse navegador fica salvo em ~/.sigaa-mcp/browser-profile. Se você
deixar o navegador lembrar a senha, os próximos logins são só clicar em "Entrar".
Para logar sem esperar uma consulta, use a ferramenta login_navegador ou o
comando sigaa-mcp login. Para desligar a janela automática, use
SIGAA_AUTO_LOGIN=0.
Alternativa: colar o cookie. Entre em https://sig.ifsc.edu.br/sigaa no seu
navegador, abra as ferramentas de desenvolvedor (F12) > Application >
Cookies > https://sig.ifsc.edu.br, copie o valor de JSESSIONID e chame
definir_cookie, ou rode:
sigaa-mcp cookie SEU_JSESSIONIDO cliente MCP precisa esperar enquanto você loga. No Claude Code, se a ferramenta der timeout antes de você terminar, aumente
MCP_TOOL_TIMEOUT(em milissegundos).
Manter a sessão viva
A sessão do SIGAA expira por inatividade. Enquanto o servidor estiver rodando,
ele acessa o portal a cada 10 minutos (SIGAA_KEEPALIVE_MIN) para a sessão não
cair. Para manter a sessão ativa também com o cliente MCP fechado, deixe isto
rodando num terminal:
sigaa-mcp keepaliveO keepalive não evita que a sessão termine se o SIGAA reiniciar ou impuser um tempo máximo de sessão. Quando ela cair, as ferramentas avisam e explicam como reconectar.
O cookie fica salvo em ~/.sigaa-mcp/session.json. Ele dá acesso à sua conta
enquanto a sessão estiver ativa: não compartilhe esse arquivo.
Related MCP server: sigaa-ufrpe
Instalação
Cole no terminal o comando do seu sistema. O instalador coloca o uv (se
faltar), instala o servidor, prepara o navegador do login por janela e registra
o servidor no Claude Code e no Claude Desktop, se estiverem instalados.
Linux (inclusive Arch) e macOS
curl -fsSL https://raw.githubusercontent.com/heitorsDev/sigaa-ifsc-mcp/main/install.sh | bashWindows (PowerShell)
irm https://raw.githubusercontent.com/heitorsDev/sigaa-ifsc-mcp/main/install.ps1 | iexRodar o mesmo comando de novo atualiza para a versão mais recente.
No Arch, o instalador usa o pacman (pede sudo) para instalar o uv e, se não
houver Chromium/Chrome, o chromium. No Windows, o login usa o Edge. Nos outros
casos, ele usa o Chrome/Chromium do sistema ou baixa o do Playwright.
Variáveis opcionais do instalador: SIGAA_MCP_REF (branch ou tag),
SIGAA_MCP_NAME (nome do servidor, padrão sigaa) e SIGAA_BROWSER_PATH.
Instalação manual
uv tool install "sigaa-ifsc-mcp @ https://github.com/heitorsDev/sigaa-ifsc-mcp/archive/main.zip"
claude mcp add --scope user sigaa -- sigaa-mcpPara o Claude Desktop (claude_desktop_config.json), use o caminho completo
mostrado por uv tool dir --bin:
{
"mcpServers": {
"sigaa": { "command": "/caminho/para/sigaa-mcp", "args": [] }
}
}Fora do Windows, sem Chrome/Chromium no sistema, rode sigaa-mcp install-browser.
Ferramentas
Ferramenta | O que faz |
| Valida e salva o |
| Abre o navegador para logar e captura o cookie (acontece sozinho quando a sessão expira) |
| Diz se a sessão é válida |
| Apaga o cookie salvo |
| Nome, matrícula, curso, status, período atual |
| Tarefas, questionários e avaliações próximas do portal |
| Turmas do semestre (ou de todos os períodos) |
| Grade da semana (aulas por dia, horário, sala), montada a partir do comprovante de matrícula |
| Histórico escolar: salva o PDF e devolve o texto |
| Boletim do semestre |
| Documentos: salva e devolve o texto |
| Lista ou abre qualquer item do menu do portal (Ensino, Pesquisa, Extensão...) |
| Consulta turmas de todo o IFSC |
| Capacidade, matriculados, professores e vagas de uma turma |
| Consulta disciplinas (componentes curriculares) |
| Prazos do calendário acadêmico mais recente |
| Notas por unidade e avaliação |
| Faltas por aula, total e máximo permitido |
| Tarefas, prazos e se já foram enviadas |
| Calendário de provas da turma |
| Notícias da turma, com o texto |
| Tópicos de aula com conteúdo e materiais (arquivos, tarefas, links) |
| Arquivos da seção Arquivos da turma |
| Baixa um arquivo da turma ou de um tópico para |
| Entrega uma tarefa com arquivo e/ou comentário |
| Texto de qualquer seção da turma (Plano de Ensino, Participantes, Referências...) |
| Texto de uma página do SIGAA com URL fixa |
| Texto da última página aberta |
| Links da página atual, com índice |
| Segue um link; se for arquivo, salva em |
| Formulários da página atual: campos, arquivos e botões |
| Preenche e envia um formulário, inclusive com arquivos |
turma aceita o código ou um trecho do nome da disciplina, sem acentos.
Moodle
O servidor também acessa o Moodle do IFSC pela
API oficial do app Moodle Mobile. O instalador pergunta usuário e senha do
Moodle no terminal e troca por um token de API; a senha não é salva, só o
token (em ~/.sigaa-mcp/moodle.json). Para refazer o login:
sigaa-mcp moodle-loginOs cursos de antes de 2026 ficam em outro site (moodle4.ifsc.edu.br). Para
acessá-los, rode sigaa-mcp moodle-login --antigo e use site="antigo" nas
ferramentas.
Os cursos do Moodle são criados a partir das turmas do SIGAA: o idnumber é
COMPONENTE<id da turma> e o nome curto começa com o código do componente.
moodle_cursos devolve esses dois campos, e curso aceita o código do
componente (ex.: CAB22402).
Ferramenta | O que faz |
| Verifica o token |
| Cursos (todos, em andamento, passados, futuros) com progresso e ligação ao SIGAA |
| Busca cursos de todo o IFSC pelo nome |
| Seções e itens do curso, com arquivos e links embutidos |
| Todos os materiais numa lista: arquivos e links (YouTube, Drive, PDFs) de páginas, pastas e rótulos |
| Busca nos nomes, textos e links dos materiais |
| Texto de página, rótulo ou pasta (com TeX); PDF baixado e lido |
| Baixa um arquivo (PDFs voltam com o texto) |
| Baixa todos os arquivos do curso, por seção |
| Prazos atrasados e próximos de todos os cursos |
| Eventos do calendário no mês |
| Sem curso: nota de cada curso. Com curso: itens com peso, nota, %, média e feedback |
| Tarefas, regras de envio, status, nota e comentários |
| Entrega com arquivos e/ou texto; |
| Questionários, tentativas e melhor nota (não inicia tentativas) |
| Fóruns, tópicos e mensagens |
| Avisos de todos os cursos em andamento |
| Cria tópico ou responde, com |
| Conversas e mensagens (não marca como lidas) |
| Envia mensagem numa conversa |
| Notificações recentes |
| Conclusão de atividades e emblemas |
| Chama uma função de leitura da API do Moodle |
Todas aceitam site ("atual" ou "antigo"). Entregar tarefa, postar em
fórum e mandar mensagem só acontecem com confirmar=true; antes disso a
ferramenta devolve uma prévia para você aprovar.
Envios
enviar_tarefa e enviar_formulario mudam dados no SIGAA em seu nome. Por
isso, sem confirmar=true elas só mostram uma prévia do que seria enviado.
O Claude deve mostrar essa prévia e pedir a sua aprovação antes de confirmar.
O formulário de entrega de tarefa ainda não foi visto aberto: quando o
explorei, nenhuma tarefa estava no prazo. enviar_tarefa procura o campo de
arquivo, o de comentário e o botão "Enviar" por heurística. Se falhar, a
navegação genérica (formularios_pagina + enviar_formulario) cobre o caso.
Variáveis de ambiente
Variável | Padrão | |
|
| Endereço do Moodle |
| Token da API do Moodle (tem prioridade sobre o arquivo salvo) | |
|
| Moodle com os cursos anteriores a 2026 |
| No instalador, não pergunta o login do Moodle | |
|
| Abre a janela de login quando a sessão expira; |
| Cookie de sessão (tem prioridade sobre o arquivo salvo) | |
|
| Intervalo do keepalive; |
|
| Onde ficam o cookie e o perfil do navegador |
|
| Limite de texto por página devolvida |
|
| Onde os arquivos baixados são salvos |
|
| Tamanho máximo de arquivo enviado |
|
| Segundos esperando o login por janela |
|
| Navegador do login por janela; vazio usa o Chromium do Playwright |
| Executável de um Chrome/Chromium do sistema para o login por janela |
Limitações
A grade de horários do SIGAA do IFSC só existe no comprovante de matrícula, e turmas de horário flexível não aparecem desenhadas nela.
grade_horariosmonta a grade decodificando os códigos de horário (24M34= seg e qua, manhã, 3ª e 4ª aulas), respeitando o período de validade de cada padrão.A área pública do SIGAA (
/sigaa/public) exige CAPTCHA mesmo para quem está logado, então o servidor não a usa. As buscas partem do portal do discente.A biblioteca (SophiA) é um sistema separado, fora do SIGAA, e não está coberta.
Se você tiver mais de um vínculo (por exemplo, dois cursos), o servidor usa o vínculo escolhido na sessão do navegador.
O HTML do SIGAA muda com o tempo; se uma ferramenta parar de funcionar,
secao_turmaeabrir_paginaainda devolvem o texto cru da página.
This server cannot be deployed
Maintenance
Related MCP Connectors
PLATO (Pusan National University LMS) MCP server via Moodle Web Service API + ubboard scraping
Unofficial NTNU course data: search, timetables, grades, course info, and exam logistics.
Search university course materials, your flashcards, quizzes, streak and quota. All tools read-only.
Manage your Canvas coursework with quick access to courses, assignments, and grades. Track upcomin…
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables read-only querying of Moodle as a student, including courses, assignments, grades, forums, and files, using a personal web services token.110MIT
- FlicenseAqualityBmaintenanceEnables deep access to UFRPE's SIGAA system, providing tools for login, retrieving raw HTML, making custom requests, downloading files, and accessing parsed academic data such as grades, classes, and curricula.12-
- AlicenseAqualityCmaintenanceEnables querying courses, assignments, deadlines, and materials from the UNAM Moodle virtual classroom, as well as downloading files and submitting assignments through natural language.8MIT
- AlicenseNot gradedqualityCmaintenanceConnects any MCP-compatible AI assistant to a student's Moscow Technological Institute portal (lms.mti.moscow) over stdio or HTTP. Enables reading schedules, courses, assignments, grades, notifications, messages, curriculum and finance data, and safely submitting coursework with dry-run confirmation.MIT