cursorrules — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited cursorrules (Rules) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server that provides comprehensive access to the ZapSign API for electronic document signing and management.
npm install mcp-server-zapsigngit clone https://github.com/ZapSign/api-mcp.git
cd api-mcpnpm installcp .env.example .env.env:# Server Configuration
PORT=3001
HOST=localhost
NODE_ENV=development
# Server Information
SERVER_NAME=mcp-server-zapsign
SERVER_VERSION=1.0.0
# ZapSign API Configuration
ZAPSIGN_API_KEY=your_zapsign_api_key_here
ZAPSIGN_BASE_URL=https://api.zapsign.com.br
ZAPSIGN_API_VERSION=v1
# Logging Configuration
LOG_LEVEL=info
# Features Configuration
ENABLE_METRICS=false
ENABLE_RATE_LIMITING=true
MAX_REQUESTS_PER_MINUTE=100#### STDIO Mode (Default)
npm start#### SSE Mode (HTTP Server)
npm run start:sse#### Development Mode
npm run dev/health endpoint when running in SSE mode# Clone the repository
git clone https://github.com/ZapSign/api-mcp.git
cd api-mcp
# Copy environment file
cp .env.example .env
# Edit environment variables (set DOMAIN_NAME and CERTBOT_EMAIL)
nano .env
# Set up Traefik directories
chmod +x setup-traefik.sh
./setup-traefik.sh
# Start with Traefik (automatic SSL)
docker-compose up -d# Start with development Docker Compose (no SSL)
docker-compose -f docker-compose.dev.yml up -d# Use production compose file with Nginx
docker-compose -f docker-compose.prod.yml up -d
# Setup SSL certificates manually
chmod +x nginx/setup-ssl.sh
./nginx/setup-ssl.shFor detailed EC2 deployment instructions, see EC2 Deployment Guide.
docker-compose.yml)services:
mcp-zapsign-server: # Production server on port 3001
mcp-zapsign-server-dev: # Development server on port 3002docker-compose.prod.yml)services:
nginx-proxy: # HTTPS reverse proxy (ports 80, 443)
mcp-zapsign-server: # Production server (internal port 3001)
certbot: # Let's Encrypt SSL certificate managercreate_document_from_upload - Create document from uploaded filecreate_document_from_template - Create document from templateget_document_details - Get document informationlist_documents - List all documentsupdate_document - Update document propertiesdelete_document - Delete a documentadd_extra_document - Add extra document to envelopeplace_signatures - Position signatures on documentlist_templates - List available templatesget_template_details - Get template informationcreate_template - Create new templateupdate_template - Update template propertiesdelete_template - Delete a templateadd_signer - Add signer to documentupdate_signer - Update signer informationget_signer_details - Get signer informationdelete_signer - Remove signer from documentsign_in_batch - Batch signing operationscreate_person_background_check - Check person backgroundcreate_company_background_check - Check company backgroundget_background_check_status - Get check statuscreate_webhook - Create webhook for notificationsdelete_webhook - Remove webhookmanage_webhook_headers - Configure webhook headersadd_timestamp - Add timestamp to documentThis server implements all ZapSign API endpoints as documented at:
| Variable | Description | Default | Required |
|---|---|---|---|
PORT | Server port | 3001 | No |
HOST | Server host | localhost | No |
ZAPSIGN_API_KEY | Main ZapSign API key | - | Yes |
| ZAPSIGN_BASE_URL | ZapSign API base URL | https://api.zapsign.com.br | No | | LOG_LEVEL | Logging level | info | No | | ENABLE_RATE_LIMITING | Enable rate limiting | true | No |
error: Only error messageswarn: Warning and error messagesinfo: Information, warning, and error messagesdebug: All messages including debug informationmcp-zapsign-server/
├── lib/
│ ├── config.js # Configuration management
│ ├── logger.js # Logging infrastructure
│ ├── tools.js # Tool discovery
│ └── services/
│ ├── zapsignApi.js # ZapSign API client
│ ├── auth.js # Authentication service
│ └── validation.js # Input validation
├── tools/
│ └── zapsign-workspace/
│ └── api/ # Individual tool implementations
├── mcpServer.js # Main server file
├── package.json
└── README.mdtools/zapsign-workspace/api/const executeFunction = async (args) => {
// Tool implementation
};
const apiTool = {
function: executeFunction,
definition: {
type: 'function',
function: {
name: 'tool_name',
description: 'Tool description',
parameters: {
// Parameter schema
}
}
}
};
export { apiTool };tools/paths.js# Run tests
npm test
# Run with coverage
npm run test:coverage
# Run specific test file
npm test -- --testNamePattern="Tool Name"The server provides comprehensive error handling:
When running in SSE mode, the server provides a health check endpoint:
curl http://localhost:3001/healthResponse includes:
All operations are logged with structured data:
tools/paths.jsEnable debug logging:
LOG_LEVEL=debug npm startMIT License - see LICENSE file for details
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.