MCP server for SEI (Sistema Eletronico de Informacoes) - mod-wssei v2 REST API
Project description
mcp-seipro
MCP Server do SEI Pro para o SEI (Sistema Eletrônico de Informações) via API REST mod-wssei v2.
Permite ao Claude Code (e qualquer cliente MCP) gerenciar processos, documentos, tramitação, assinatura, blocos, marcadores e acompanhamento em qualquer instância do SEI.
Quick Start (Claude Desktop)
git clone https://github.com/sei-pro/mcp-seipro.git
cd mcp-seipro
python3 setup_claude.py
O script pergunta suas credenciais do SEI, instala o pacote e configura o Claude Desktop automaticamente. Depois é só reiniciar o app.
Instalação manual
pip install mcp-seipro
Requisitos de sistema (para OCR de PDFs escaneados):
tesseract-ocretesseract-ocr-porpoppler-utils(para pdf2image)
Configuração
Variáveis de ambiente
| Variável | Obrigatória | Descrição |
|---|---|---|
SEI_URL |
Sim | URL base da API mod-wssei v2 |
SEI_USUARIO |
Sim | Usuário para autenticação |
SEI_SENHA |
Sim | Senha para autenticação |
SEI_ORGAO |
Sim | Código do órgão |
SEI_CONTEXTO |
Não | Contexto opcional |
SEI_VERIFY_SSL |
Não | true (padrão) ou false |
SEI_OCR_LANG |
Não | Idioma do OCR (padrão: por) |
Registro no Claude Code
Adicione ao .mcp.json do projeto ou ~/.claude.json (global):
{
"mcpServers": {
"sei": {
"command": "mcp-seipro",
"env": {
"SEI_URL": "${SEI_URL}",
"SEI_USUARIO": "${SEI_USUARIO}",
"SEI_SENHA": "${SEI_SENHA}",
"SEI_ORGAO": "${SEI_ORGAO}"
}
}
}
}
Tools disponíveis (64)
Navegação e contexto (4)
| Tool | Descrição | ✅ |
|---|---|---|
sei_listar_unidades |
Lista unidades acessíveis pelo usuário | ✅ |
sei_trocar_unidade |
Troca a unidade ativa | ✅ |
sei_pesquisar_unidades |
Pesquisa unidades por nome/sigla | ✅ |
sei_listar_usuarios |
Lista usuários (filtra por unidade ativa e nome) | ✅ |
Processos — consulta (5)
| Tool | Descrição | ✅ |
|---|---|---|
sei_listar_processos |
Lista caixa da unidade (todas_paginas=true) |
✅ |
sei_pesquisar_processos |
Pesquisa por texto, descrição ou datas | ✅ |
sei_consultar_processo |
Consulta processo pelo protocolo formatado | ✅ |
sei_resumo_processos |
Resumo agrupado por 17 campos | ✅ |
sei_listar_unidades_processo |
Lista unidades onde o processo está aberto | ✅ |
Processos — gestão (14)
| Tool | Descrição | ✅ |
|---|---|---|
sei_criar_processo |
Cria novo processo (público ou restrito) | ✅ |
sei_alterar_processo |
Altera metadados (nível de acesso, especificação) | ✅ |
sei_enviar_processo |
Tramita para outra(s) unidade(s) — aceita sigla | ✅ |
sei_concluir_processo |
Conclui na unidade atual | ✅ |
sei_reabrir_processo |
Reabre processo concluído | ✅ |
sei_receber_processo |
Confirma recebimento na unidade | ✅ |
sei_atribuir_processo |
Atribui a um usuário (aceita nome) | ✅ |
sei_remover_atribuicao |
Remove atribuição de processo | ✅ |
sei_marcar_nao_lido |
Marca processo como não lido na unidade | ✅ |
sei_sobrestar_processo |
Sobresta processo (motivo obrigatório) | ✅ |
sei_remover_sobrestamento |
Remove sobrestamento | ✅ |
sei_pesquisar_tipos_processo |
Pesquisa tipos de processo | ✅ |
sei_pesquisar_hipoteses_legais |
Pesquisa hipóteses legais (restrito/sigiloso) | ✅ |
sei_listar_interessados |
Lista interessados do processo | ✅ |
Documentos — leitura (7)
| Tool | Descrição | ✅ |
|---|---|---|
sei_arvore_processo |
Árvore completa com metadados, volumes e emojis | ✅ |
sei_buscar_documento |
Busca documento pelo número SEI (via Solr) | ✅ |
sei_listar_documentos |
Lista documentos de um processo | ✅ |
sei_ler_documento |
Lê documento (📄 HTML ou 📎 PDF/OCR) em Markdown | ✅ |
sei_baixar_anexo |
Baixa documento externo em base64 (max 10MB) | ✅ |
sei_pesquisar_tipos_documento |
Pesquisa tipos de documento (séries) | ✅ |
sei_listar_assinaturas |
Lista assinaturas de um documento | ✅ |
Documentos — escrita (8)
| Tool | Descrição | ✅ |
|---|---|---|
sei_criar_documento |
Cria documento interno vazio | ✅ |
sei_criar_documento_externo |
Cria documento externo com upload de arquivo | ✅ |
sei_listar_secoes |
Lista seções editáveis de um documento | ✅ |
sei_editar_secao |
Altera conteúdo HTML (preenche somenteLeitura auto) | ✅ |
sei_assinar_documento |
Assinatura eletrônica | ✅ |
sei_cancelar_assinatura |
Tenta cancelar assinatura via edição | ✅ |
sei_gerar_referencia |
Gera hiperlink dinâmico para documento citado | ✅ |
sei_estilos |
Consulta dicionário de 39 estilos CSS do SEI | ✅ |
Ciência e andamento (4)
| Tool | Descrição | ✅ |
|---|---|---|
sei_dar_ciencia |
Dá ciência em documento ou processo | ✅ |
sei_listar_ciencias |
Lista ciências registradas | ✅ |
sei_registrar_andamento |
Registra andamento/atividade no processo | ✅ |
sei_listar_sobrestamentos |
Lista histórico de sobrestamentos | ✅ |
Anotação (1)
| Tool | Descrição | ✅ |
|---|---|---|
sei_criar_anotacao |
Cria anotação (post-it) no processo | ✅ |
Contato (1)
| Tool | Descrição | ✅ |
|---|---|---|
sei_pesquisar_contatos |
Pesquisa contatos cadastrados | ✅ |
Marcador (5)
| Tool | Descrição | ✅ |
|---|---|---|
sei_criar_marcador |
Cria marcador (lista cores se omitida) | ✅ |
sei_excluir_marcador |
Exclui marcador(es) | ✅ |
sei_marcar_processo |
Adiciona marcador a um processo | ✅ |
sei_pesquisar_marcadores |
Lista marcadores disponíveis | ✅ |
sei_consultar_marcador_processo |
Consulta marcadores ativos de um processo | ✅ |
Acompanhamento especial (5)
| Tool | Descrição | ✅ |
|---|---|---|
sei_acompanhar_processo |
Adiciona acompanhamento especial | ✅ |
sei_remover_acompanhamento |
Remove acompanhamento | ✅ |
sei_listar_grupos_acompanhamento |
Lista grupos de acompanhamento | ✅ |
sei_criar_grupo_acompanhamento |
Cria grupo de acompanhamento | ✅ |
sei_excluir_grupo_acompanhamento |
Exclui grupo de acompanhamento | ✅ |
Bloco interno (3)
| Tool | Descrição | ✅ |
|---|---|---|
sei_criar_bloco_interno |
Cria bloco interno | ✅ |
sei_incluir_processo_bloco_interno |
Inclui processo(s) no bloco | ✅ |
sei_retirar_processo_bloco_interno |
Remove processo(s) do bloco | ✅ |
Bloco de assinatura (7)
| Tool | Descrição | ✅ |
|---|---|---|
sei_criar_bloco_assinatura |
Cria bloco (aceita sigla de unidades) | ✅ |
sei_incluir_documento_bloco_assinatura |
Inclui documento(s) no bloco | ✅ |
sei_disponibilizar_bloco_assinatura |
Disponibiliza bloco para assinatura | ✅ |
sei_cancelar_disponibilizacao_bloco |
Cancela disponibilização | ✅ |
sei_pesquisar_blocos_assinatura |
Pesquisa blocos existentes | ✅ |
sei_assinar_bloco |
Assina todos os documentos de um bloco | |
sei_assinar_documentos_bloco |
Assina documentos específicos de um bloco |
Funcionalidades
Resolução automática
| Parâmetro | Aceita | Exemplo |
|---|---|---|
| Documento | Número SEI ou id interno | sei_ler_documento("2843449") |
| Processo | Protocolo ou IdProcedimento | sei_criar_anotacao(processo="50300.018905/2018-67") |
| Unidade | Sigla ou ID | sei_enviar_processo(unidades_destino="SFC") |
| Usuário | Nome ou ID | sei_atribuir_processo(usuario="Karina") |
Leitura universal de documentos
- 📄 Internos (HTML) → Markdown (tabelas limpas, sem colunas vazias)
- 📎 PDFs com texto → Markdown via pdfplumber
- 📎 PDFs escaneados → Markdown via OCR (tesseract, limite 20 páginas)
Upload de documentos
sei_criar_documento_externo aceita caminho local de arquivo:
sei_criar_documento_externo(
processo="50300.018905/2018-67",
id_serie="15", # Nota Técnica
arquivo_path="/caminho/para/documento.pdf",
)
Estilos CSS do SEI
Despachos: Paragrafo_Numerado_Nivel1 (corpo), âncora SEI no destinatário
Notas Técnicas: Item_Nivel1/2/3/4 (≈ H1/H2/H3/H4), Item_Alinea_Letra (a, b, c), Item_Inciso_Romano (I, II, III)
Regra: toda numeração usa classes CSS, nunca texto manual.
Hiperlinks dinâmicos
SEI nº <span contenteditable="false"><a class="ancoraSei" id="lnkSei{id}">NÚMERO</a></span>
Destinatário com âncora
À <span class="ancoraSei interessadoSeiPro" data-id="ID_UNIDADE">SIGLA - Nome</span>
Fluxo de bloco de assinatura
sei_criar_bloco_assinatura(descricao, unidades="SFC") → cria bloco com unidades
sei_incluir_documento_bloco_assinatura(id_bloco, docs) → inclui documentos
sei_disponibilizar_bloco_assinatura(id_bloco) → disponibiliza para assinatura
sei_assinar_bloco(id_bloco, login, senha, cargo) → assina tudo
sei_cancelar_disponibilizacao_bloco(id_bloco) → cancela se necessário
Limitações conhecidas
- Cancelar assinatura: função existe no core do SEI (
DocumentoRN::cancelarAssinaturaInternoControlado) mas não exposta na API REST. Evolução futura: adicionar endpoint no wssei. - Documentos recém-criados: Solr pode levar segundos para indexar.
- Processos sobrestados/concluídos: não aparecem em
sei_listar_processos. - Hipóteses legais (S): sufixo (S) = sigiloso, sem = restrito.
- Upload de arquivo: funciona via multipart/form-data. Requer caminho local do arquivo.
Compatibilidade
- Python >= 3.11
- Qualquer instância do SEI com módulo mod-wssei v2
- Claude Code, Claude Desktop, ou qualquer cliente MCP
Licença
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_seipro-0.1.0.tar.gz.
File metadata
- Download URL: mcp_seipro-0.1.0.tar.gz
- Upload date:
- Size: 898.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26d913c567a6ff3f208036d98de9850a510937a9e472bf715361b567e601da13
|
|
| MD5 |
f68b6fb7a90f188e831505f9008c39c5
|
|
| BLAKE2b-256 |
d56b77875806fc16aaeb41d21308073974db7dcb44596fc60f7188deaee118af
|
File details
Details for the file mcp_seipro-0.1.0-py3-none-any.whl.
File metadata
- Download URL: mcp_seipro-0.1.0-py3-none-any.whl
- Upload date:
- Size: 35.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe9c1a0364c8142f3edb963ce4327045b8d7e12afeabc06e13427b09dfba2e6c
|
|
| MD5 |
6dbe42141ae2ad589ee217daef6078e8
|
|
| BLAKE2b-256 |
cde6b6183a001de6787ca7792551fdebd1291515a2e04d121d39e5a04a5bcc60
|