Ticket Generator Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Ticket Generator Mcp (Agent Skill) 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 AI agents with access to the Ticket Generator APIs for managing tickets and events.
This MCP server acts as a bridge between AI agents and the Ticket Generator APIs, allowing AI assistants to:
npm install npm run dev:http ngrok http 3000 {
"mcpServers": {
"ticket-generator": {
"url": "https://your-ngrok-url.ngrok-free.app/mcp",
"headers": {
"Authorization": "your_ticket_generator_api_key"
}
}
}
}Important: In HTTP transport mode, the API key is passed securely via the Authorization header from your MCP client configuration. It is:
In stdio transport mode, the API key is read from the TG_API_KEY environment variable.
This MCP server supports two transport modes: HTTP (for development and production deployments) and stdio (for local CLI usage). In HTTP mode the API key is securely passed from your MCP client configuration via the Authorization header. In stdio mode the key is read from the TG_API_KEY environment variable.
npm run dev:httpThis will start the server on http://localhost:3000
ngrok http 3000https://abc123.ngrok-free.app) {
"mcpServers": {
"ticket-generator": {
"url": "https://abc123.ngrok-free.app/mcp",
"headers": {
"Authorization": "your_ticket_generator_api_key"
}
}
}
}For production deployment, follow these steps:
export MCP_TRANSPORT=httpNote: The server listens on0.0.0.0:3000(hardcoded inserver.js).
CORS_ORIGINS — comma-separated allowed origins (e.g., https://yourapp.com)RATE_WINDOW_MS — rate-limit window in ms (default: 60000)RATE_MAX — max requests per IP per window (default: 60)JSON_LIMIT — JSON body limit (default: 200kb)LOG_FORMAT — morgan log format (default: combined) npm start {
"mcpServers": {
"ticket-generator": {
"url": "https://your-production-domain.com/mcp",
"headers": {
"Authorization": "your_ticket_generator_api_key"
}
}
}
}GET /health — Health check endpointPOST /mcp — MCP initialization and tool call handlingGET /mcp — Server-to-client notifications via streamingDELETE /mcp — Session terminationThe MCP server provides the following tools for AI agents:
#### 1. get_ticket_data Generates a ticket ID and its QR Code image (base64 PNG) for a given event. Optionally pass a ticket category and image width.
Parameters:
eventId (required): The Ticket Generator Event ID for which the ticket should be createdwidth (required): QR image width/height in pixels (square). Allowed range: 300–1500. Default: 300ticketCategoryId (optional): Ticket Category ID. If the event has only one category, this can be omitted#### 2. get_ticket_url Returns a URL to the rendered QR Code ticket for the specified event (and optional category). You can optionally override up to 5 variable fields on the ticket design.
Parameters:
eventId (required): Ticket Generator Event IDticketCategoryId (optional): Ticket Category ID. Omit if the event has a single categoryvariables (optional): Array of up to 5 variable field overrides, each with:value (required): Value for this variable (e.g., "Mark", "A2")header (optional): Header/label for this variable (e.g., "Name", "Seat"). Leave empty to use the default label defined in the design#### 3. send_ticket Sends a generated ticket to a recipient via Email, SMS, or WhatsApp. You can include subject, body, and sender details, along with up to 5 custom variable fields.
Parameters:
eventId (required): Ticket Generator Event IDticketCategoryId (optional): Ticket Category ID. Omit if the event has a single categoryemail (optional): Email address of the recipient (ticket will be sent here)phoneNumber (optional): Recipient's phone number for SMS deliverywhatsApp (optional): Set true to send ticket via WhatsApp (requires phoneNumber)whatsAppConsent (optional): Whether the recipient has consented to receive WhatsApp messages (required if whatsApp is true)subject (optional): Subject line of the email (if email is provided)body (optional): Message body (HTML or plain text) for the email/SMS/WhatsApp messagefromName (optional): The sender name shown to the recipientvariables (optional): Array of up to 5 variable fields to personalize the ticket, each with:value (required): Value corresponding to the header (e.g., "A12", "Mark")header (optional): Variable header label (e.g., "Seat", "Name"). Optional if default is set in design#### 4. get_events_details Returns the details (name, description, start date, end date, location, ticket categories, etc.) of all active events associated with your account.
Parameters:
Add this server to your Claude Desktop configuration file (claude_desktop_config.json):
{
"mcpServers": {
"ticket-generator": {
"url": "https://your-server-url.com/mcp",
"headers": {
"Authorization": "your_ticket_generator_api_key"
}
}
}
}For local development with ngrok:
{
"mcpServers": {
"ticket-generator": {
"url": "https://abc123.ngrok-free.app/mcp",
"headers": {
"Authorization": "your_ticket_generator_api_key"
}
}
}
}Add the server to your Cursor MCP configuration:
{
"mcpServers": {
"ticket-generator": {
"url": "https://your-server-url.com/mcp",
"headers": {
"Authorization": "your_ticket_generator_api_key"
}
}
}
}Any MCP-compatible client can connect to this server using HTTP transport. Configure it with:
https://your-domain.com/mcp)This MCP server integrates with the following Ticket Generator API endpoints (base URL: https://apis.ticket-generator.com/client/v1):
For detailed information about the Ticket Generator APIs, visit: https://apis.ticket-generator.com/client/api-docs/
The MCP server includes comprehensive error handling:
ticket-generator-mcp/
├── server.js # Main MCP server implementation
├── package.json # Node.js dependencies and scripts
├── ecosystem.config.cjs # PM2 configuration for production
├── Dockerfile # Docker container configuration
├── deploy.sh # ECR build/push + ECS deployment script
├── task-definition.json # AWS ECS Fargate task definition template
├── nginx.conf # Nginx reverse proxy configuration
├── DEPLOYMENT.md # AWS Fargate/ECS deployment guide
├── NGINX-SETUP.md # Nginx setup options
├── PM2-GUIDE.md # PM2 usage guide
└── README.md # This fileTo add new tools to the MCP server:
getToolDefinitions() functionhandleToolCall() functionmakeTGRequest helper function npm install npm run dev:http ngrok http 3000ISC
For issues related to:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.