package.json•4.17 kB
{
"name": "tally-mcp",
"version": "1.0.0",
"description": "MCP (Model Context Protocol) server for Tally.so form management and automation",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"engines": {
"node": ">=18.0.0"
},
"scripts": {
"build": "tsc",
"build:worker": "tsc src/worker.ts --outDir dist --target ES2022 --module ES2022 --moduleResolution node --esModuleInterop true --allowSyntheticDefaultImports true --strict true --skipLibCheck true",
"dev": "tsx watch src/index.ts",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage",
"test:e2e": "playwright test",
"test:e2e:headed": "playwright test --headed",
"test:e2e:debug": "playwright test --debug",
"test:e2e:ui": "playwright test --ui",
"test:e2e:report": "playwright show-report test-results/e2e/playwright-report",
"test:regression": "ts-node src/regression/cli.ts",
"test:performance": "artillery run performance/artillery.yml",
"test:stress": "artillery run performance/stress-test.yml",
"start": "node dist/index.js",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
"format": "prettier --write \"src/**/*.ts\" \"__tests__/**/*.ts\"",
"clean": "rm -rf dist",
"inspector": "npm run build && npx @modelcontextprotocol/inspector node dist/index.js",
"inspector:dev": "npx @modelcontextprotocol/inspector node_modules/.bin/ts-node src/index.ts",
"inspector:test": "node scripts/test-inspector.js",
"deploy:cloudflare": "wrangler deploy",
"validate:config": "ts-node -r dotenv/config scripts/validate-config.ts",
"security:test": "ts-node -r dotenv/config src/security-testing/cli.ts",
"security:owasp": "ts-node -r dotenv/config src/security-testing/cli.ts --suite=owasp-zap",
"security:snyk": "ts-node -r dotenv/config src/security-testing/cli.ts --suite=snyk",
"security:custom": "ts-node -r dotenv/config src/security-testing/cli.ts --suite=custom",
"postinstall": "node scripts/create-toml-types.js"
},
"keywords": [
"mcp",
"model-context-protocol",
"tally",
"forms",
"automation"
],
"author": "",
"license": "ISC",
"dependencies": {
"@godaddy/terminus": "^4.12.1",
"@modelcontextprotocol/sdk": "^1.12.1",
"@opentelemetry/api": "1.9.0",
"@opentelemetry/exporter-trace-otlp-http": "0.51.0",
"@opentelemetry/resources": "1.24.1",
"@opentelemetry/sdk-node": "0.51.0",
"@opentelemetry/sdk-trace-base": "1.25.1",
"@opentelemetry/sdk-trace-node": "1.24.1",
"@opentelemetry/semantic-conventions": "1.25.1",
"@sentry/node": "8.18.0",
"@sentry/opentelemetry": "8.18.0",
"@sentry/profiling-node": "8.18.0",
"@types/cors": "^2.8.18",
"@types/dompurify": "^3.0.5",
"@types/helmet": "^0.0.48",
"@types/redis": "^4.0.10",
"axios": "^1.9.0",
"chalk": "^4.1.2",
"cors": "^2.8.5",
"dotenv": "^16.5.0",
"express": "^5.1.0",
"express-rate-limit": "^7.5.0",
"helmet": "^8.1.0",
"isomorphic-dompurify": "^2.25.0",
"jsonwebtoken": "^9.0.2",
"papaparse": "^5.5.3",
"prom-client": "^15.1.3",
"redis": "^5.5.6",
"toml": "^3.0.0",
"typescript": "^5.8.3",
"uuid": "^11.1.0",
"zod": "^3.25.51"
},
"devDependencies": {
"@faker-js/faker": "^9.8.0",
"@modelcontextprotocol/inspector": "^0.14.0",
"@playwright/test": "^1.53.0",
"@types/eventsource": "^1.1.15",
"@types/express": "^5.0.2",
"@types/jest": "^29.5.12",
"@types/jsonwebtoken": "^9.0.9",
"@types/node": "^22.15.29",
"@types/node-fetch": "^2.6.12",
"@types/papaparse": "^5.3.16",
"@types/supertest": "^6.0.3",
"@types/uuid": "^10.0.0",
"artillery": "^2.0.21",
"eventsource": "^2.0.2",
"jest": "^29.7.0",
"jest-junit": "^16.0.0",
"node-fetch": "^3.3.2",
"nodemon": "^3.1.10",
"playwright": "^1.53.0",
"snyk": "^1.1295.0",
"supertest": "^7.1.1",
"ts-jest": "^29.1.2",
"ts-node": "^10.9.2",
"tsx": "^4.16.2",
"wrangler": "^4.19.2",
"zaproxy": "^0.2.0"
},
"overrides": {
"@opentelemetry/api": "1.9.0"
}
}