SpellChecker
Um corretor ortográfico rápido e multilíngue para Modelos de Linguagem de Grande Escala.
Documentação
SpellChecker MCP Server
Um servidor rápido e multilíngue do Model Context Protocol (MCP) que fornece recursos de verificação ortográfica para Modelos de Linguagem de Grande Porte. Este servidor permite que LLMs verifiquem a ortografia em textos, arquivos e projetos inteiros com análise ciente de sintaxe para arquivos de código.
Recursos
- Suporte a vários idiomas: 15+ idiomas, incluindo inglês, espanhol, francês, alemão, português, italiano, holandês, polonês, russo, ucraniano, sueco, dinamarquês e norueguês
- Verificação ciente de sintaxe: Verifica inteligentemente apenas comentários, strings e documentação em arquivos de código
- Verificação de arquivos e pastas: Verifique arquivos individuais ou diretórios inteiros de projetos
- Ativação modular de idiomas: Ative apenas os idiomas que você precisa
- Verificação ortográfica rápida: Alimentado por nspell para processamento eficiente
- Gerenciamento de dicionário personalizado: Adicione palavras a dicionários pessoais
- Análise inteligente de código: Entende HTML, JavaScript, TypeScript, Python e mais
- Compatível com MCP: Funciona com qualquer cliente compatível com MCP
Instalação
Como um Servidor MCP
- Clone o repositório:
git clone https://github.com/yourusername/spellchecker-mcp-server.git
cd spellchecker-mcp-server
- Instale as dependências e compile:
yarn install
yarn build
O script pós-instalação baixará automaticamente os arquivos de dicionário necessários.
Usando com Claude Desktop
Adicione o servidor ao seu arquivo de configuração do Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"spellchecker": {
"command": "node",
"args": ["/path/to/spellchecker-mcp-server/dist/index.js"],
"env": {
"SPELLCHECKER_LANGUAGES": "en-US,es,fr"
}
}
}
}
Configurando Idiomas
Você pode configurar quais idiomas ativar de três maneiras:
-
Variável de ambiente (recomendada para Claude Desktop):
SPELLCHECKER_LANGUAGES="en-US,es,fr" node dist/index.js -
Arquivo de configuração:
SPELLCHECKER_CONFIG="/path/to/spellchecker.config.json" node dist/index.js -
Edite o padrão em
src/config.tsantes de compilar
Usando com Outros Clientes MCP
O servidor roda em stdio e pode ser integrado a qualquer cliente compatível com MCP:
node /path/to/spellchecker-mcp-server/dist/index.js
Ferramentas Disponíveis
check_spelling
Verifica texto em busca de erros ortográficos e retorna erros com sugestões.
Parâmetros:
text(obrigatório): O texto a ser verificadolanguage(opcional): Código do idioma (padrão: "en-US")includeLineNumbers(opcional): Incluir posições de linha/coluna (padrão: false)
Exemplo:
{
"text": "This is a tset of the speling checker",
"language": "en-US",
"includeLineNumbers": true
}
is_correct
Verifica se uma única palavra está escrita corretamente.
Parâmetros:
word(obrigatório): A palavra a ser verificadalanguage(opcional): Código do idioma (padrão: "en-US")
get_suggestions
Obtém sugestões de ortografia para uma palavra.
Parâmetros:
word(obrigatório): A palavra para obter sugestõeslanguage(opcional): Código do idioma (padrão: "en-US")limit(opcional): Número máximo de sugestões a retornar (padrão: 5)
add_to_dictionary
Adiciona uma palavra ao dicionário pessoal de um idioma.
Parâmetros:
word(obrigatório): A palavra a ser adicionadalanguage(opcional): Código do idioma (padrão: "en-US")
list_languages
Lista todos os idiomas disponíveis para verificação ortográfica.
check_file
Verifica a ortografia em um único arquivo com análise ciente de sintaxe.
Parâmetros:
filePath(obrigatório): Caminho para o arquivo a ser verificadolanguage(opcional): Código do idioma (padrão: "en-US")syntaxAware(opcional): Ativar análise ciente de sintaxe (padrão: true)
Exemplo:
{
"filePath": "/path/to/app.tsx",
"language": "en-US",
"syntaxAware": true
}
check_folder
Verifica a ortografia em todos os arquivos dentro de uma pasta.
Parâmetros:
folderPath(obrigatório): Caminho para a pasta a ser verificadalanguage(opcional): Código do idioma (padrão: "en-US")recursive(opcional): Verificar subpastas (padrão: true)fileTypes(opcional): Matriz de extensões de arquivo a verificarsyntaxAware(opcional): Ativar análise ciente de sintaxe (padrão: true)
Exemplo:
{
"folderPath": "/path/to/project",
"language": "en-US",
"recursive": true,
"fileTypes": [".js", ".tsx", ".md"],
"syntaxAware": true
}
Idiomas Suportados
O servidor suporta 15+ idiomas. Ative apenas o que você precisa:
en-US- Inglês (Estados Unidos)en-GB- Inglês (Reino Unido)es- Espanholfr- Francêsde- Alemãopt- Portuguêspt-BR- Português (Brasil)it- Italianonl- Holandêspl- Polonêsru- Russouk- Ucranianosv- Suecoda- Dinamarquêsnb- Norueguês Bokmål
Recursos de Análise Ciente de Sintaxe
Quando syntaxAware está ativado, o verificador ortográfico analisa inteligentemente:
- Comentários: Comentários de linha única e múltiplas linhas em todos os principais idiomas
- Literais de string: Verifica apenas strings que parecem texto legível por humanos
- Conteúdo JSX/TSX: Texto entre tags JSX
- Documentação: Docstrings, comentários JSDoc, etc.
- Markdown: Ignora blocos de código e código inline
- HTML/XML: Verifica conteúdo de texto e comentários
O verificador ignora automaticamente:
- Nomes de variáveis e identificadores
- Palavras-chave de programação
- URLs e caminhos de arquivo
- Cores hexadecimais e números
- Código entre crases em Markdown
Desenvolvimento
Pré-requisitos
- Node.js >= 16.0.0
- Gerenciador de pacotes Yarn
Configuração
# Install dependencies
yarn install
# Run in development mode
yarn dev
# Build for production
yarn build
# Type check
yarn typecheck
Usando Comandos Just
Se você tiver just instalado:
# Show available commands
just
# Fresh install
just fresh
# Run development server
just dev
# Update dictionaries
just dictionaries
Arquitetura
O servidor usa:
- @modelcontextprotocol/sdk: Implementação do protocolo MCP
- nspell: Verificador ortográfico compatível com Hunspell
- glob: Correspondência de padrões de arquivo para varredura de diretórios
- TypeScript: Desenvolvimento com segurança de tipos
- Arquivos de dicionário: Do projeto wooorm/dictionaries
Arquivo de Configuração
Crie um arquivo spellchecker.config.json:
{
"languages": ["en-US", "es", "fr"],
"defaultLanguage": "en-US",
"scanOptions": {
"syntaxAware": true,
"recursive": true,
"fileTypes": [
".txt", ".md", ".mdx",
".js", ".jsx", ".ts", ".tsx",
".py", ".java", ".go"
],
"ignorePaths": [
"node_modules",
".git",
"dist",
"build"
]
}
}
Contribuindo
Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.
- Faça um fork do repositório
- Crie sua branch de recurso (
git checkout -b feature/AmazingFeature) - Faça commit das suas alterações (
git commit -m 'Add some AmazingFeature') - Envie para a branch (
git push origin feature/AmazingFeature) - Abra um Pull Request
Licença
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.
Agradecimentos
- Arquivos de dicionário de wooorm/dictionaries
- Construído sobre o Model Context Protocol
Solução de Problemas
Dicionários não carregando
Se você vir o erro "No dictionaries loaded":
yarn run postinstall
# or
just dictionaries
Servidor não iniciando
Certifique-se de ter compilado o projeto:
yarn build
Idioma não disponível
Verifique os idiomas disponíveis com a ferramenta list_languages ou certifique-se de que os arquivos de dicionário existam na pasta dictionaries/.