{
  "name": "@ooples/token-optimizer-mcp",
  "version": "5.3.6",
  "mcpName": "io.github.ooples/token-optimizer-mcp",
  "description": "Intelligent context window optimization for Claude Code - store content externally via caching and compression, freeing up your context window for what matters",
  "main": "dist/server/index.js",
  "types": "dist/server/index.d.ts",
  "bin": {
    "token-optimizer-mcp": "./dist/server/index.js",
    "token-optimizer-daemon": "./dist/server/daemon.js",
    "token-optimizer-install": "./scripts/install-cli.mjs",
    "token-optimizer-doctor": "./scripts/doctor.mjs"
  },
  "files": [
    "dist/**/*",
    "cli-wrapper.mjs",
    "hooks/**/*",
    "install-hooks.ps1",
    "install-hooks.sh",
    "README.md",
    "LICENSE",
    "CHANGELOG.md",
    "CLI_WRAPPER_README.md",
    "hooks-core/**/*",
    "integrations/**/*",
    "plugin/**/*",
    "scripts/**/*"
  ],
  "scripts": {
    "postinstall": "node scripts/postinstall.cjs",
    "checksums": "node scripts/checksums.mjs",
    "screenshots": "node scripts/capture-screenshots.mjs",
    "uninstall-hooks": "node scripts/uninstall.mjs",
    "doctor": "node scripts/doctor.mjs",
    "build": "tsc && npm run copy:assets",
    "copy:assets": "node -e \"const{cpSync,mkdirSync}=require('fs');cpSync('src/dashboard/public','dist/dashboard/public',{recursive:true});mkdirSync('dist/dashboard/public/vendor',{recursive:true});cpSync('node_modules/chart.js/dist/chart.umd.js','dist/dashboard/public/vendor/chart.umd.min.js')\"",
    "start": "node dist/server/index.js",
    "dev": "tsc --watch",
    "clean": "rm -rf dist",
    "prepublishOnly": "npm run clean && npm run build",
    "test": "node --experimental-vm-modules node_modules/jest/bin/jest.js",
    "test:watch": "node --experimental-vm-modules node_modules/jest/bin/jest.js --watch",
    "test:ci": "node --experimental-vm-modules node_modules/jest/bin/jest.js --ci --coverage --maxWorkers=2",
    "test:coverage": "node --experimental-vm-modules node_modules/jest/bin/jest.js --coverage",
    "test:integration": "node --experimental-vm-modules node_modules/jest/bin/jest.js tests/integration",
    "test:unit": "node --experimental-vm-modules node_modules/jest/bin/jest.js tests/unit",
    "test:benchmark": "node --experimental-vm-modules node_modules/jest/bin/jest.js tests/benchmarks",
    "dashboard": "node dist/server/web-server.js",
    "dashboard:dev": "tsc -p tsconfig.dashboard.json && npm run copy:assets && node dist/server/web-server.js",
    "dashboard:build": "tsc -p tsconfig.dashboard.json && npm run copy:assets",
    "lint": "eslint src --ext .ts,.js",
    "lint:fix": "eslint src --ext .ts,.js --fix",
    "format": "prettier --write 'src/**/*.{ts,js,json}'",
    "format:check": "prettier --check 'src/**/*.{ts,js,json}'",
    "validate": "node scripts/validate-package.js",
    "sync:hooks": "node scripts/sync-hook-core.mjs && node scripts/generate-client-entries.mjs && node scripts/generate-client-configs.mjs && node scripts/pin-mcp-version.mjs",
    "sync:hooks:check": "node scripts/sync-hook-core.mjs --check && node scripts/generate-client-entries.mjs --check && node scripts/generate-client-configs.mjs --check && node scripts/pin-mcp-version.mjs --check",
    "verify:ui": "node scripts/verify-wiki-ui.mjs",
    "verify:harvest": "node scripts/verify-harvest-api.mjs",
    "verify:clients": "node scripts/verify-client-configs.mjs",
    "verify:all": "npm run sync:hooks:check && npm run verify:clients && npm run verify:harvest && npm run verify:ui && npm run verify:interactions",
    "verify:interactions": "node scripts/verify-wiki-interactions.mjs",
    "explore:wiki": "node scripts/explore-wiki.mjs"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/ooples/token-optimizer-mcp.git"
  },
  "keywords": [
    "mcp",
    "model-context-protocol",
    "claude",
    "claude-code",
    "token-optimization",
    "caching",
    "compression",
    "ai",
    "llm",
    "context-management",
    "prompt-optimization"
  ],
  "author": "ooples",
  "license": "MIT",
  "type": "module",
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  },
  "exports": {
    ".": {
      "require": "./dist/server/index.js",
      "import": "./dist/server/index.js",
      "types": "./dist/server/index.d.ts"
    }
  },
  "engines": {
    "node": ">=18.0.0",
    "npm": ">=9.0.0"
  },
  "bugs": {
    "url": "https://github.com/ooples/token-optimizer-mcp/issues"
  },
  "homepage": "https://github.com/ooples/token-optimizer-mcp#readme",
  "devDependencies": {
    "@ast-grep/cli": "0.45.0",
    "@commitlint/cli": "^19.6.0",
    "@commitlint/config-conventional": "^19.6.0",
    "@semantic-release/changelog": "^6.0.3",
    "@semantic-release/commit-analyzer": "^13.0.0",
    "@semantic-release/git": "^10.0.1",
    "@semantic-release/github": "^11.0.0",
    "@semantic-release/npm": "^13.1.3",
    "@semantic-release/release-notes-generator": "^14.0.1",
    "@types/better-sqlite3": "^7.6.13",
    "@types/body-parser": "^1.19.6",
    "@types/conventional-commits-parser": "^5.0.1",
    "@types/cors": "^2.8.19",
    "@types/express": "^5.0.3",
    "@types/express-serve-static-core": "^5.1.0",
    "@types/http-errors": "^2.0.5",
    "@types/jest": "^30.0.0",
    "@types/json-schema": "^7.0.15",
    "@types/mime": "^3.0.4",
    "@types/node": "^24.7.2",
    "@types/normalize-package-data": "^2.4.4",
    "@types/qs": "^6.14.0",
    "@types/range-parser": "^1.2.7",
    "@types/send": "^1.2.0",
    "@types/serve-static": "^1.15.9",
    "@types/tar-stream": "^3.1.4",
    "@typescript-eslint/eslint-plugin": "^8.46.1",
    "@typescript-eslint/parser": "^8.46.1",
    "conventional-changelog-conventionalcommits": "^8.0.0",
    "eslint": "^9.38.0",
    "eslint-config-prettier": "^10.1.8",
    "jest": "^30.2.0",
    "npm": "^11.19.0",
    "playwright": "^1.62.1",
    "prettier": "^3.6.2",
    "semantic-release": "^25.0.2",
    "ts-jest": "^29.4.5"
  },
  "dependencies": {
    "@babel/parser": "^7.29.8",
    "@iarna/toml": "^2.2.5",
    "@modelcontextprotocol/sdk": "^1.26.0",
    "@typescript-eslint/typescript-estree": "^8.65.0",
    "async-mutex": "^0.5.0",
    "better-sqlite3": "^12.4.1",
    "chalk": "^4.1.2",
    "chart.js": "4.4.0",
    "cors": "^2.8.5",
    "d3-force": "^3.0.0",
    "diff": "^8.0.2",
    "express": "^5.1.0",
    "express-rate-limit": "^8.5.2",
    "glob": "^11.1.0",
    "graphlib": "^2.1.8",
    "lru-cache": "^11.2.2",
    "tiktoken": "^1.0.22",
    "typescript": "^5.9.3",
    "yaml": "^2.9.0",
    "zod": ">=3.25.0 <5"
  },
  "overrides": {
    "brace-expansion": "5.0.9",
    "js-yaml": "4.3.0",
    "undici": "7.29.0"
  }
}
