package.json•3.71 kB
{
"name": "smartsuite-api-shim",
"version": "1.0.0",
"description": "SmartSuite API Shim MCP Server - Configuration-driven TypeScript API wrapper with mandatory safe mutation patterns",
"main": "build/index.js",
"type": "module",
"engines": {
"node": ">=18.0.0"
},
"_approval_token": "CRITICAL-ENGINEER-20250117-ci-env-fix",
"scripts": {
"build": "tsc --project tsconfig.build.json",
"dev": "tsx watch src/index.ts",
"start": "node build/src/index.js",
"clean": "rimraf build",
"prebuild": "npm run clean",
"postbuild": "npm run copy-assets && npm run validate-build",
"copy-assets": "copyfiles \"config/**/*.yaml\" \"config/**/*.yml\" \"src/knowledge/**/*.json\" build/",
"validate-build": "dotenv -e .env.ci -- node build/src/index.js",
"test": "vitest",
"test:watch": "vitest --watch",
"test:coverage": "vitest --coverage",
"test:unit": "vitest run --coverage --exclude '**/module-resolution.test.ts' --exclude '**/event-store-supabase.test.ts'",
"test:integration": "vitest run --coverage test/module-resolution.test.ts src/knowledge-platform/events/event-store-supabase.test.ts",
"test:ci": "npm run test:unit",
"lint": "eslint src test --ext .ts || echo 'No TypeScript files to lint yet'",
"lint:fix": "eslint src test --ext .ts --fix || echo 'No TypeScript files to fix yet'",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
"format:check": "prettier --check \"src/**/*.ts\" \"test/**/*.ts\"",
"typecheck": "tsc --noEmit",
"quality-gates": "npm run lint && npm run typecheck && npm run test:ci",
"validate-all": "npm run quality-gates && npm run build",
"prepare": "husky install",
"codegen": "tsx scripts/generate-types.ts",
"bootstrap": "tsx scripts/bootstrap.ts",
"discover-fields": "tsx scripts/discover-fields.ts",
"health-check": "tsx scripts/health-check.ts"
},
"keywords": [
"smartsuite",
"api",
"shim",
"mcp",
"typescript",
"cqrs",
"automation",
"workflow"
],
"author": "EAV Creative Solutions",
"license": "MIT",
"dependencies": {
"@modelcontextprotocol/sdk": "^0.4.0",
"@supabase/supabase-js": "^2.57.4",
"dotenv": "^16.3.1",
"fs-extra": "^11.2.0",
"lru-cache": "^11.2.1",
"node-cron": "^3.0.3",
"p-queue": "^8.0.1",
"uuid": "^13.0.0",
"winston": "^3.11.0",
"yaml": "^2.3.4",
"zod": "^3.25.76"
},
"devDependencies": {
"@types/fs-extra": "^11.0.4",
"@types/js-yaml": "^4.0.9",
"@types/node": "^20.10.0",
"@types/node-cron": "^3.0.11",
"@typescript-eslint/eslint-plugin": "^8.44.0",
"@typescript-eslint/parser": "^8.44.0",
"@typescript-eslint/typescript-estree": "^8.44.0",
"@vitest/coverage-v8": "^3.2.4",
"better-npm-audit": "^3.11.0",
"copyfiles": "^2.4.1",
"dotenv-cli": "^10.0.0",
"eslint": "^9.35.0",
"eslint-plugin-import": "^2.29.0",
"eslint-plugin-promise": "^6.1.1",
"husky": "^8.0.3",
"js-yaml": "^4.1.0",
"lint-staged": "^15.1.0",
"prettier": "^3.1.0",
"rimraf": "^5.0.5",
"tsx": "^4.6.0",
"typescript": "^5.9.2",
"vite-tsconfig-paths": "^5.1.4",
"vitest": "^3.2.4"
},
"lint-staged": {
"*.{ts,js}": [
"eslint --fix",
"prettier --write"
],
"*.{json,md}": [
"prettier --write"
]
},
"husky": {
"hooks": {
"pre-commit": "lint-staged",
"pre-push": "npm run quality-gates"
}
},
"repository": {
"type": "git",
"url": "local"
},
"files": [
"build",
"src",
"config",
"docs/api",
"README.md",
"LICENSE"
],
"volta": {
"node": "20.10.0",
"npm": "10.2.0"
}
}