autor-texto-seguro
Enables secure text authoring and privacy-focused document processing through MCP. Provides tools for style analysis, conservative text revision, comparison with author samples, and removal of metadata from DOCX/PDF files.
README
Autor de Texto Seguro — MCP para ChatGPT e Claude
Este projeto implementa um servidor Model Context Protocol (MCP) para conectar ferramentas de revisão autoral e privacidade documental a clientes compatíveis, incluindo Claude e ChatGPT. O servidor não usa um modelo de IA externo, não persiste o texto recebido e não tenta determinar ou ocultar a origem de um texto.
Limite importante: este MCP não implementa evasão de detectores, falsificação de autoria, remoção de supostos “hashes de IA” ou promessa de indetectabilidade. Detectores fazem inferências probabilísticas e arquivos simples não possuem um hash universal de IA que possa ser apagado. A ferramenta de metadados remove apenas propriedades internas do arquivo, não registros externos, logs, histórico de serviços ou inferências estilísticas.
Ferramentas disponíveis
| Ferramenta | Finalidade | Entrada principal |
|---|---|---|
analisar_estilo |
Produz métricas observáveis, como tamanho médio das frases, diversidade lexical, primeira pessoa e pontuação. | texto |
revisar_texto |
Faz normalização mecânica conservadora, como espaços duplicados, linhas excedentes e pontuação repetida. | texto, tom_desejado opcional |
comparar_com_amostra_autoral |
Compara características observáveis de uma amostra fornecida pelo autor com um texto-alvo. | amostra_autoral, texto_alvo |
limpar_metadados_documento |
Remove metadados comuns de DOCX e PDF; aceita também TXT, MD, CSV e JSON sem alteração do conteúdo. | nome_arquivo, arquivo_base64 |
A comparação de estilo serve para ajudar o autor a revisar consistência e adequação da própria voz. Ela não fornece probabilidade de autoria humana, classificação de texto como “humano” ou “IA”, nem garantia de resultado perante qualquer detector.
Instalação
Use Python 3.10 ou superior. Em um ambiente virtual recomendado, execute:
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
Para conferir a instalação:
python3 -m py_compile server.py
pytest -q
Execução local por stdio
O transporte stdio é adequado para clientes que iniciam o processo localmente, como o Claude Desktop. No arquivo de configuração do cliente, utilize o caminho absoluto do Python e do servidor:
{
"mcpServers": {
"autor-texto-seguro": {
"command": "/caminho/absoluto/autor-texto-mcp/.venv/bin/python",
"args": [
"/caminho/absoluto/autor-texto-mcp/server.py",
"--transport",
"stdio"
]
}
}
}
Depois de salvar a configuração, reinicie o cliente e confirme se as quatro ferramentas aparecem. Consulte a documentação do seu cliente para o caminho exato do arquivo de configuração.
Execução remota para ChatGPT e Claude
Para um único endpoint atender os dois ecossistemas, este projeto usa Streamable HTTP no caminho /mcp. O padrão MCP define stdio para subprocessos locais e Streamable HTTP para servidores independentes acessíveis por HTTP.1
Inicie o servidor com um token forte:
export MCP_BEARER_TOKEN='substitua-por-um-token-longo-e-aleatorio'
python3 server.py --transport streamable-http --host 0.0.0.0 --port 8000
Em produção, coloque o processo atrás de HTTPS, por exemplo, com um proxy reverso ou uma plataforma de hospedagem. Não exponha o endpoint HTTP sem autenticação. O endereço que será informado aos clientes terá este formato:
https://seu-dominio.example/mcp
O token deve ser enviado como Authorization: Bearer <token>. Não coloque o token em um repositório público, em uma mensagem compartilhada ou no código-fonte.
ChatGPT
O ChatGPT conecta-se a servidores MCP remotos. Em contas e workspaces que tenham Developer Mode e custom MCP apps disponíveis, o administrador ou usuário autorizado pode abrir as configurações de Apps, criar um app personalizado, informar o endpoint HTTPS, selecionar o mecanismo de autenticação Bearer e escanear as ferramentas. A disponibilidade depende do plano e das permissões do workspace; a documentação oficial informa que a conexão direta com servidores locais não é feita sem um túnel seguro.2
Após a criação, habilite somente as ferramentas necessárias e teste primeiro analisar_estilo e revisar_texto. A documentação oficial recomenda validar servidores personalizados, especialmente quando possuem ações que modificam dados; este projeto é somente de processamento do conteúdo enviado e não possui ferramentas de escrita em sistemas externos.2
Claude
Para o Claude API, o MCP Connector aceita um servidor remoto por URL e permite configurar um token Bearer. A configuração deve usar o endpoint /mcp e habilitar o conjunto de ferramentas desejado. Exemplo conceitual, conforme a estrutura documentada pela Anthropic:3
{
"mcp_servers": [
{
"type": "url",
"url": "https://seu-dominio.example/mcp",
"name": "autor-texto-seguro",
"authorization_token": "SEU_TOKEN"
}
],
"tools": [
{
"type": "mcp_toolset",
"mcp_server_name": "autor-texto-seguro"
}
]
}
O Claude Desktop também pode usar o modo local stdio, quando o próprio aplicativo iniciar o processo. Para a API do Claude, a documentação informa que o servidor precisa estar publicamente acessível por HTTP; servidores locais stdio não são conectados diretamente por esse recurso.3
Segurança e privacidade
O servidor processa os dados na memória durante a chamada e não possui código para gravar textos em banco de dados ou enviá-los a outro modelo. Ainda assim, o operador da infraestrutura deve proteger logs do proxy, métricas, backups e arquivos temporários. Em produção, use HTTPS, token longo e aleatório, limites de tamanho, controle de acesso e rotação de credenciais.
A ferramenta de limpeza recebe arquivos em Base64. Para PDFs, a reconstrução pode não preservar certos recursos avançados e pode invalidar assinaturas digitais; por isso, mantenha o arquivo original e valide o resultado antes de usá-lo. Para DOCX, são removidas propriedades comuns do docProps/core.xml. Para TXT, MD, CSV e JSON, o conteúdo é devolvido sem alteração porque esses formatos não têm, em regra, propriedades internas equivalentes às de DOCX/PDF.
Validação
A suíte local contém cinco testes automatizados:
5 passed
Também foi validada uma chamada real ao endpoint Streamable HTTP, com autenticação Bearer, descoberta das quatro ferramentas e execução de analisar_estilo.
Estrutura
autor-texto-mcp/
├── server.py
├── requirements.txt
├── README.md
├── integration_check.py
└── tests/
├── conftest.py
└── test_server.py
Referências
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.