{
  "name": "@wallacewen/tapd-mcp-server",
  "version": "1.4.0",
  "description": "Model Context Protocol server for TAPD (Tencent Agile Product Development) - Provides professional weekly report generation and timesheet analysis",
  "type": "module",
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "bin": {
    "tapd-mcp-server": "./dist/index.js"
  },
  "exports": {
    ".": {
      "import": "./dist/index.js",
      "types": "./dist/index.d.ts"
    }
  },
  "files": [
    "dist",
    "README.md",
    "LICENSE",
    "package.json"
  ],
  "engines": {
    "node": ">=18.0.0"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/wallacewen/tapd-mcp-server.git"
  },
  "bugs": {
    "url": "https://github.com/wallacewen/tapd-mcp-server/issues"
  },
  "homepage": "https://github.com/wallacewen/tapd-mcp-server#readme",
  "lint-staged": {
    "*.{ts,tsx}": [
      "prettier --check",
      "eslint"
    ]
  },
  "keywords": [
    "tapd",
    "mcp",
    "model-context-protocol",
    "timesheets",
    "weekly-report",
    "project-management",
    "tencent",
    "agile",
    "development"
  ],
  "author": "Wallace Wen <jiangwen0259@gmail.com>",
  "license": "MIT",
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  },
  "dependencies": {
    "@humanfs/node": "^0.16.6",
    "@modelcontextprotocol/sdk": "^1.8.0",
    "axios": "^1.8.4",
    "cors": "^2.8.5",
    "dotenv": "^16.4.7",
    "express": "^4.21.2",
    "zod": "^3.24.2"
  },
  "devDependencies": {
    "@eslint/js": "^9.23.0",
    "@jest/globals": "^29.7.0",
    "@types/cors": "^2.8.17",
    "@types/express": "^5.0.1",
    "@types/jest": "^29.5.14",
    "@types/node": "^22.14.0",
    "@types/supertest": "^6.0.3",
    "@typescript-eslint/eslint-plugin": "^8.29.0",
    "@typescript-eslint/parser": "^8.29.0",
    "eslint": "^9.23.0",
    "eslint-config-prettier": "^10.1.1",
    "eslint-plugin-prettier": "^5.2.6",
    "husky": "^9.1.7",
    "jest": "^29.7.0",
    "lint-staged": "^15.5.0",
    "nock": "^14.0.2",
    "prettier": "^3.5.3",
    "supertest": "^7.1.0",
    "ts-jest": "^29.3.1",
    "ts-node": "^10.9.2",
    "ts-node-dev": "^2.0.0",
    "typescript": "^5.8.2"
  },
  "scripts": {
    "build": "tsc",
    "postbuild": "chmod +x dist/index.js",
    "ci": "pnpm run format:check && pnpm run lint && pnpm run check-types && pnpm run build && pnpm run test:coverage",
    "start": "node --experimental-specifier-resolution=node dist/index.js",
    "dev": "ts-node-dev --respawn --transpile-only src/index.ts",
    "watch": "tsc -w",
    "test": "NODE_ENV=test NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest --detectOpenHandles --forceExit",
    "test:watch": "NODE_ENV=test NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest --watch --detectOpenHandles --forceExit",
    "test:coverage": "NODE_ENV=test NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest --coverage --detectOpenHandles --forceExit",
    "test:tapd": "ts-node src/test-tapd.ts",
    "lint": "eslint . --ext .ts",
    "lint:fix": "eslint . --ext .ts --fix",
    "format": "prettier --write \"src/**/*.ts\"",
    "format:check": "prettier --check \"src/**/*.ts\"",
    "check-types": "tsc --noEmit",
    "validate": "pnpm run check-types && pnpm run lint && pnpm run test",
    "inspect": "npx @modelcontextprotocol/inspector@latest node dist/index.js",
    "clean": "rm -rf dist"
  }
}