{
  "name": "@automattic/mcp-wordpress-remote",
  "version": "0.3.1",
  "description": "MCP WordPress Remote proxy server",
  "engines": {
    "node": ">=18.0.0"
  },
  "keywords": [
    "mcp",
    "wordpress",
    "remote",
    "proxy"
  ],
  "author": "Automattic Inc.",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/Automattic/mcp-wordpress-remote.git"
  },
  "type": "module",
  "files": [
    "dist",
    "README.md",
    "LICENSE"
  ],
  "main": "dist/proxy.js",
  "exports": {
    ".": {
      "import": "./dist/proxy.js",
      "types": "./dist/proxy.d.ts"
    },
    "./lib": {
      "import": "./dist/lib.js",
      "types": "./dist/lib.d.ts"
    }
  },
  "bin": {
    "mcp-wordpress-remote": "./dist/proxy.js"
  },
  "scripts": {
    "build": "tsup",
    "build:watch": "tsup --watch",
    "check": "prettier --check . && tsc",
    "start": "NODE_ENV=development tsup --watch",
    "dev": "NODE_ENV=development node dist/proxy.js",
    "test": "jest",
    "test:watch": "jest --watch",
    "test:unit": "jest --testPathPattern=unit",
    "test:integration": "jest --testPathPattern=integration",
    "test:e2e": "playwright test",
    "test:coverage": "jest --coverage",
    "test:ci": "jest --ci --coverage --watchAll=false",
    "security:audit": "npm audit --audit-level moderate",
    "security:fix": "npm audit fix",
    "deps:update": "npm update",
    "deps:check": "npm outdated",
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  },
  "dependencies": {
    "@modelcontextprotocol/sdk": "^1.8.0",
    "@tootallnate/quickjs-emscripten": "^0.23.0",
    "eventsource-parser": "^3.0.1",
    "express": "^4.18.2",
    "https-proxy-agent": "^7.0.6",
    "node-fetch": "^3.3.2",
    "open": "^10.0.0",
    "pac-resolver": "^7.0.1",
    "socks-proxy-agent": "^8.0.5"
  },
  "devDependencies": {
    "@playwright/test": "^1.54.2",
    "@types/express": "^4.17.21",
    "@types/jest": "^29.5.12",
    "@types/mockdate": "^2.0.0",
    "@types/node": "^18.19.0",
    "@types/supertest": "^6.0.3",
    "@types/tmp": "^0.2.6",
    "jest": "^29.7.0",
    "mockdate": "^3.0.5",
    "nock": "^14.0.9",
    "playwright": "^1.54.2",
    "prettier": "^3.2.5",
    "supertest": "^7.1.4",
    "tmp": "^0.2.5",
    "ts-jest": "^29.1.2",
    "tsup": "^8.0.2",
    "typescript": "^5.3.3"
  },
  "tsup": {
    "entry": [
      "src/proxy.ts",
      "src/lib.ts"
    ],
    "format": [
      "esm"
    ],
    "dts": true,
    "clean": true,
    "outDir": "dist",
    "splitting": false,
    "noExternal": [
      "@modelcontextprotocol/sdk",
      "eventsource-parser",
      "express",
      "node-fetch",
      "open"
    ],
    "external": [
      "node:*",
      "@tootallnate/quickjs-emscripten",
      "pac-resolver",
      "socks-proxy-agent",
      "https-proxy-agent"
    ],
    "minify": false,
    "sourcemap": false,
    "target": "node18",
    "platform": "node",
    "banner": {
      "js": "import { createRequire } from 'module'; const require = createRequire(import.meta.url);"
    }
  },
  "jest": {
    "testEnvironment": "node",
    "testMatch": [
      "**/__tests__/**/*.ts",
      "**/?(*.)+(spec|test).ts"
    ],
    "testPathIgnorePatterns": [
      "<rootDir>/node_modules/",
      "<rootDir>/dist/",
      "<rootDir>/tests/e2e/"
    ],
    "moduleFileExtensions": [
      "ts",
      "js",
      "json",
      "node"
    ],
    "extensionsToTreatAsEsm": [
      ".ts"
    ],
    "preset": "ts-jest/presets/default-esm",
    "transform": {
      "^.+\\.ts$": [
        "ts-jest",
        {
          "useESM": true
        }
      ]
    },
    "moduleNameMapper": {
      "^(\\.{1,2}/.*)\\.js$": "$1",
      "^open$": "<rootDir>/tests/__mocks__/open.ts"
    },
    "setupFilesAfterEnv": [
      "<rootDir>/tests/setup.ts"
    ],
    "collectCoverageFrom": [
      "src/**/*.ts",
      "!src/**/*.d.ts",
      "!src/**/*.test.ts",
      "!src/**/*.spec.ts"
    ],
    "coverageDirectory": "coverage",
    "coverageReporters": [
      "text",
      "lcov",
      "html"
    ],
    "coverageThreshold": {
      "global": {
        "branches": 80,
        "functions": 85,
        "lines": 85,
        "statements": 85
      }
    },
    "testTimeout": 30000
  }
}
