{
  "name": "@portel/ncp",
  "version": "2.3.1",
  "mcpName": "io.github.portel-dev/ncp",
  "description": "Natural Context Provider (NCP) - 1 MCP to rule them all. Your MCPs, supercharged. Find any tool instantly, load on demand, run on schedule, ready for any client. Smart loading saves tokens and energy.",
  "main": "dist/index.js",
  "module": "dist/index.js",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.js"
    }
  },
  "bin": {
    "ncp": "dist/index.js",
    "ncp-mcp": "dist/index-mcp.js"
  },
  "type": "module",
  "scripts": {
    "extract-schemas": "tsx scripts/extract-schemas.ts",
    "copy-schemas": "mkdir -p dist/internal-mcps && cp src/internal-mcps/*.schema.json dist/internal-mcps/ 2>/dev/null || true",
    "build": "npm run extract-schemas && tsc && npm run copy-schemas && chmod +x dist/index.js dist/index-mcp.js",
    "postinstall": "npm run build:if-dev",
    "build:if-dev": "[ -d node_modules/typescript ] && npm run build || echo 'Build skipped (production install)'",
    "start": "node dist/index.js",
    "dev": "npm run build && npm run start",
    "docs:sync": "node scripts/sync-docs-site.mjs",
    "docs:dev": "npm run docs:sync && vitepress dev docs-site",
    "docs:build": "npm run docs:sync && vitepress build docs-site && node scripts/fix-docs-site-build.mjs",
    "docs:preview": "vitepress preview docs-site",
    "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --detectOpenHandles --forceExit",
    "test:coverage": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage --detectOpenHandles --forceExit",
    "test:watch": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --watch",
    "test:critical": "cross-env NODE_OPTIONS=--experimental-vm-modules jest tests/mcp-server-protocol.test.ts tests/mcp-timeout-scenarios.test.ts --verbose --detectOpenHandles --forceExit",
    "test:e2e": "npm run build && cross-env NODE_OPTIONS=--experimental-vm-modules jest tests/e2e --detectOpenHandles --forceExit --runInBand",
    "test:e2e:internal-mcps": "npm run build && cross-env NODE_OPTIONS=--experimental-vm-modules jest tests/e2e/internal-mcps-e2e.test.ts --verbose --detectOpenHandles --forceExit",
    "test:e2e:cli": "npm run build && cross-env NODE_OPTIONS=--experimental-vm-modules jest tests/e2e/cli-integration.test.ts --verbose --detectOpenHandles --forceExit --runInBand",
    "test:integration": "npm run build && node tests/integration/mcp-client-simulation.test.cjs",
    "test:integration:dxt": "npm run build && node tests/integration/mcp-dxt-entry-point.test.cjs",
    "test:integration:mcpb": "npm run test:integration:dxt",
    "test:integration:intelligence": "npm run build && node tests/integration/test-intelligence-basic.cjs",
    "test:extension": "npm run build && node tests/integration/extension-mode-client.test.cjs",
    "test:cli": "bash tests/cli-help-validation.sh",
    "test:mcpb": "if [ -f scripts/test-dxt-package.sh ]; then bash scripts/test-dxt-package.sh; else echo 'MCPB test script not found, skipping'; fi",
    "test:dxt": "npm run test:mcpb",
    "test:pre-publish": "npm run test:critical && npm run test:integration && npm run test:integration:dxt",
    "test:ci": "npm run test:critical && npm run test:e2e && npm run test:integration && npm run test:integration:dxt && npm run test:mcpb",
    "test:package": "node scripts/test-package-locally.cjs",
    "test:features": "bash scripts/test-features.sh",
    "test:client-registry": "node scripts/test-client-registry.js",
    "test:registry-security": "node scripts/test-registry-security.js",
    "test:http-auth": "node scripts/test-http-auth.js",
    "verify-clients": "npm run build && node scripts/verify-client-configs.js",
    "build:mcpb": "bash scripts/build-dxt-clean.sh",
    "build:dxt": "npm run build:mcpb",
    "build:mcpb:patched": "npm run build:mcpb && ./scripts/patch-dxt-zip.sh",
    "build:dxt:patched": "npm run build:mcpb:patched",
    "build:mcpb:signed": "npm run build:mcpb:patched && npx @anthropic-ai/mcpb sign ncp.mcpb --self-signed && npm run test:mcpb",
    "build:dxt:signed": "npm run build:mcpb:signed",
    "verify:mcpb": "npm run test:mcpb",
    "verify:dxt": "npm run verify:mcpb",
    "build:mcpb:prod": "npm run build:mcpb && npx @anthropic-ai/mcpb sign ncp.mcpb --cert cert.pem --key key.pem && npm run test:mcpb",
    "build:dxt:prod": "npm run build:mcpb:prod",
    "stats": "node scripts/check-dxt-downloads.js",
    "check:root": "node scripts/check-root-clutter.js",
    "prepack": "npm run build && npm run test:pre-publish",
    "prepublishOnly": "npm run build && npm run test:pre-publish && npm run check:root && node scripts/sync-server-version.cjs",
    "release": "npm run check:root && release-it",
    "release:dry": "npm run check:root && release-it --dry-run"
  },
  "keywords": [
    "mcp",
    "model-context-protocol",
    "mcp-router",
    "mcp-server",
    "mcp-tool-discovery",
    "claude-desktop",
    "cursor",
    "vscode",
    "code-mode",
    "scheduler",
    "skills",
    "photon-runtime",
    "ai-orchestration",
    "tool-discovery"
  ],
  "author": "Portel",
  "license": "Elastic-2.0",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/portel-dev/ncp.git"
  },
  "homepage": "https://portel-dev.github.io/ncp/",
  "bugs": {
    "url": "https://github.com/portel-dev/ncp/issues"
  },
  "types": "dist/index.d.ts",
  "engines": {
    "node": ">=22.0.0",
    "bun": ">=1.0.0"
  },
  "files": [
    "dist",
    "LICENSE",
    "README.md",
    "server.json",
    "assets",
    "package.json"
  ],
  "files:comments": "Explicit list of files to include in the package",
  "dependencies": {
    "@anthropic-ai/sdk": "^0.67.0",
    "@modelcontextprotocol/sdk": "^1.18.0",
    "@napi-rs/keyring": "^1.2.0",
    "@portel/photon-core": "^2.9.4",
    "@types/prompts": "^2.4.9",
    "@xenova/transformers": "^2.17.2",
    "adm-zip": "^0.5.16",
    "asciichart": "^1.5.25",
    "chalk": "^5.3.0",
    "chokidar": "^5.0.0",
    "cli-graph": "^3.2.2",
    "cli-highlight": "^2.1.11",
    "clipboardy": "^4.0.0",
    "commander": "^14.0.1",
    "env-paths": "^3.0.0",
    "human-signals": "^8.0.1",
    "inquirer": "^12.9.6",
    "isolated-vm": "^6.0.2",
    "js-yaml": "^4.1.1",
    "json-colorizer": "^3.0.1",
    "marked": "^15.0.12",
    "marked-terminal": "^7.3.0",
    "pdf-lib": "^1.17.1",
    "prettyjson": "^1.2.5",
    "prompts": "^2.4.2",
    "tsx": "^4.20.6",
    "uuid": "^11.0.5",
    "yaml": "^2.8.1"
  },
  "devDependencies": {
    "@agent-infra/mcp-server-browser": "^1.1.10",
    "@amap/amap-maps-mcp-server": "^0.0.8",
    "@anthropic-ai/mcpb": "^2.1.2",
    "@apify/actors-mcp-server": "^0.4.15",
    "@benborla29/mcp-server-mysql": "^2.0.5",
    "@currents/mcp": "^2.0.0",
    "@heroku/mcp-server": "^1.0.7",
    "@hubspot/mcp-server": "^0.4.0",
    "@modelcontextprotocol/server-filesystem": "^2025.8.21",
    "@modelcontextprotocol/server-sequential-thinking": "^2025.7.1",
    "@notionhq/notion-mcp-server": "^1.9.0",
    "@release-it/conventional-changelog": "^10.0.1",
    "@supabase/mcp-server-supabase": "^0.5.5",
    "@types/adm-zip": "^0.5.7",
    "@types/express": "^5.0.3",
    "@types/jest": "^30.0.0",
    "@types/js-yaml": "^4.0.9",
    "@types/marked-terminal": "^6.1.1",
    "@types/node": "^22.0.0",
    "@types/prettyjson": "^0.0.33",
    "@types/uuid": "^10.0.0",
    "@upstash/context7-mcp": "^1.0.17",
    "@winor30/mcp-server-datadog": "^1.6.0",
    "cross-env": "^10.1.0",
    "csv-stringify": "^6.6.0",
    "jest": "^30.1.3",
    "mcp-evals": "^2.0.1",
    "mcp-hello-world": "^1.1.2",
    "mcp-server": "^0.0.9",
    "mcp-server-kubernetes": "^3.3.0",
    "release-it": "^19.0.4",
    "rss-parser": "^3.13.0",
    "ts-jest": "^29.4.2",
    "typescript": "^5.9.0",
    "vitepress": "^1.6.4"
  }
}
