SSC MCP Server
Servidor MCP para SecurityScorecard, com busca semântica híbrida em todos os 628 endpoints da API.
Documentação
SSC MCP Server
Um servidor Model Context Protocol (MCP) abrangente, construído pela comunidade, que se integra à API SecurityScorecard. Ele roda via stdio, funcionando com qualquer cliente compatível com MCP — Claude Desktop, Claude Code, Cursor, VS Code e outros.
Publicado no npm como
@callmarcus/securityscorecard-mcpe listado no MCP Registry comoio.github.CallMarcus/securityscorecard-mcp.
Aviso: Este é um projeto independente de código aberto, construído pela comunidade. Ele não é afiliado, endossado, patrocinado ou associado à SecurityScorecard, Inc. de forma alguma. Foi construído apenas com base na documentação pública da API da SecurityScorecard. "SecurityScorecard" e todos os nomes, marcas e logotipos relacionados são marcas registradas da SecurityScorecard, Inc. e são usados aqui apenas para fins de identificação. Você deve fornecer suas próprias credenciais de API e cumprir os termos de serviço da SecurityScorecard.
Início Rápido
Pré-requisitos
- Node.js 20+ - Baixar
- Token da API SecurityScorecard - Obtenha no seu painel SecurityScorecard
Opção A — Instalar via npm (recomendado)
Não é necessário clonar nem compilar. O servidor roda via stdio usando npx, então qualquer cliente compatível com MCP pode iniciá-lo. npx -y sempre busca a versão publicada mais recente.
A maioria dos clientes — Claude Desktop, Cursor, Cline, Windsurf e outros — compartilham o mesmo JSON mcpServers. Adicione este bloco à configuração MCP do cliente:
{
"mcpServers": {
"security-scorecard": {
"command": "npx",
"args": ["-y", "@callmarcus/securityscorecard-mcp"],
"env": {
"SECURITY_SCORECARD_API_TOKEN": "your-api-token-here",
"COMPANY_DOMAIN": "example.com"
}
}
}
}
Onde esse arquivo de configuração fica:
| Cliente | Arquivo de configuração |
|---|---|
| Claude Desktop (Windows) | %APPDATA%\Claude\claude_desktop_config.json |
| Claude Desktop (macOS) | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Cursor | ~/.cursor/mcp.json (global) ou .cursor/mcp.json (projeto) |
Substitua as credenciais pelas suas e reinicie o cliente.
Claude Code — adicione via CLI:
claude mcp add security-scorecard \
--env SECURITY_SCORECARD_API_TOKEN=your-api-token-here \
--env COMPANY_DOMAIN=example.com \
-- npx -y @callmarcus/securityscorecard-mcp
No Windows, envolva o launcher em cmd /c: ... -- cmd /c npx -y @callmarcus/securityscorecard-mcp.
VS Code (Copilot) — usa uma chave servers com um type explícito, em .vscode/mcp.json:
{
"servers": {
"security-scorecard": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@callmarcus/securityscorecard-mcp"],
"env": {
"SECURITY_SCORECARD_API_TOKEN": "your-api-token-here",
"COMPANY_DOMAIN": "example.com"
}
}
}
}
Opção B — Executar a partir do código-fonte (para desenvolvimento)
# Clone the repository
git clone https://github.com/CallMarcus/security-scorecard-mcp.git
cd security-scorecard-mcp
# Install dependencies
npm install
# Build (use build:fast to avoid memory issues)
npm run build:fast
Em seguida, aponte seu cliente MCP para a compilação local. Para clientes que usam o formato mcpServers (Claude Desktop, Cursor, …):
{
"mcpServers": {
"security-scorecard": {
"command": "node",
"args": ["/path/to/security-scorecard-mcp/build/index.js"],
"env": {
"SECURITY_SCORECARD_API_TOKEN": "your-api-token-here",
"COMPANY_DOMAIN": "example.com"
}
}
}
}
Importante: Substitua o caminho e as credenciais pelos seus valores reais e reinicie o cliente MCP. (Para Claude Code, execute claude mcp add security-scorecard --env SECURITY_SCORECARD_API_TOKEN=your-api-token-here -- node /path/to/security-scorecard-mcp/build/index.js.)
Ferramentas Disponíveis
O servidor (index.js) fornece 9 ferramentas especializadas:
| Ferramenta | Objetivo |
|---|---|
security_dashboard | Pontuação, classificação e métricas de segurança essenciais |
analyze_security_risks | Priorização de problemas e análise de risco |
create_improvement_plan | Roteiros de remediação acionáveis |
discover_assets | Inventário de ativos com contexto de segurança |
analyze_email_security | Análise de SPF/DMARC/DKIM |
api_discovery | Busca em 517 endpoints de API com pesquisa híbrida semântica/palavras-chave |
analyze_issue_types | Detalhamento granular por tipo de problema |
validate_data_completeness | Verificação de dados entre ferramentas |
query_security_data | Acesso direto à API com descoberta |
Modos de Resposta
Cada ferramenta suporta três modos de resposta para eficiência de tokens:
- minimal - Respostas rápidas (15-50 tokens)
- standard - Visão geral com contexto (200-300 tokens)
- detailed - Análise abrangente (800+ tokens)
Variáveis de Ambiente
| Variável | Obrigatória | Descrição |
|---|---|---|
SECURITY_SCORECARD_API_TOKEN | Sim | Seu token de API |
COMPANY_DOMAIN | Não | Domínio padrão para consultas |
DEBUG_MODE | Não | Defina true para registro detalhado |
Limitação de taxa e cache opcionais:
REQUEST_CACHE_TTL_MS=300000
REQUESTS_PER_INTERVAL=5
REQUEST_INTERVAL_MS=1000
Descoberta de API
O servidor inclui busca híbrida (semântica + palavras-chave) para encontrar endpoints da API SecurityScorecard:
Use api_discovery to search for "email security"
Isso pesquisa 517 endpoints indexados e retorna caminhos correspondentes com pontuações de confiança, parâmetros necessários e exemplos de curl.
Para atualizar a referência da API após alterações:
npm run api:embed # Regenerate semantic embeddings
npm run api:update # Regenerate docs + embeddings
Desenvolvimento
Comandos de Compilação
npm run build:fast # Recommended - uses esbuild (~130ms)
npm run build # TypeScript compiler (may OOM on some systems)
npm test # Run tests
Estrutura do Projeto
src/
index.ts # MCP server (9 tools)
api/client.ts # SecurityScorecard API client
integration/ # API discovery system
docs/api/ # Self-contained API reference
index.jsonl # Endpoint index (517 endpoints)
index-embeddings.json # Semantic search embeddings
build/ # Compiled JavaScript
Testes
npm test # Run test suite
Solução de Problemas
Falha na compilação por falta de memória
Use a compilação rápida:
npm run build:fast
Erros de "Cannot find module"
Reinstale as dependências:
rm -rf node_modules
npm install
npm run build:fast
Busca semântica degrada para apenas palavras-chave (Windows + WSL)
Instale para a plataforma que executa o servidor. O Claude Desktop no Windows
inicia o servidor com node do Windows, então se npm install rodou sob WSL,
os módulos nativos (onnxruntime-node, sharp) só têm binários Linux —
a camada de embeddings falha ao carregar e api_discovery é degradada silenciosamente para
busca apenas por palavras-chave (os resultados ainda retornam, mas a pontuação de confiança é
mais grosseira). Execute npm install && npm run build:fast a partir do PowerShell ou cmd no
diretório do repositório — ou mantenha dois clones, um por plataforma.
Seu cliente não vê o servidor
- Verifique o local do arquivo de configuração do seu cliente (veja Início Rápido)
- Para instalação a partir do código-fonte, confirme se o caminho para
build/index.jsestá correto - Reinicie o cliente completamente
- Faça uma verificação de sanidade: o servidor deve iniciar sozinho:
npx -y @callmarcus/securityscorecard-mcp(deve abrir e aguardar silenciosamente no stdio)
A API retorna 401 Unauthorized
Seu token de API é inválido ou expirou. Obtenha um novo no painel da SecurityScorecard.
Licença
MIT