Skip to main content
Glama
portel-dev

NCP - Natural Context Provider

by portel-dev
package.json7.07 kB
{ "name": "@portel/ncp", "version": "1.8.0", "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", "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": "[ -f scripts/test-dxt-package.sh ] && bash scripts/test-dxt-package.sh || echo 'MCPB test script not found, skipping'", "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", "prepack": "npm run build && npm run test:pre-publish", "prepublishOnly": "npm run build && npm run test:pre-publish && node scripts/sync-server-version.cjs", "release": "release-it", "release:dry": "release-it --dry-run" }, "keywords": [ "mcp", "model-context-protocol", "ai-orchestration", "tool-discovery" ], "author": "Portel", "license": "Elastic-2.0", "repository": { "type": "git", "url": "git+https://github.com/portel-dev/ncp.git" }, "homepage": "https://github.com/portel-dev/ncp#readme", "bugs": { "url": "https://github.com/portel-dev/ncp/issues" }, "types": "dist/index.d.ts", "engines": { "node": ">=18.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": "^1.0.2", "@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", "js-yaml": "^4.1.1", "json-colorizer": "^3.0.1", "marked": "^15.0.12", "marked-terminal": "^7.3.0", "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.2.23", "@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": "^20.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", "jest": "^30.1.3", "mcp-evals": "^2.0.1", "mcp-hello-world": "^1.1.2", "mcp-server": "^0.0.9", "mcp-server-kubernetes": "^2.9.6", "release-it": "^19.0.4", "ts-jest": "^29.4.2", "typescript": "^5.0.0" } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/portel-dev/ncp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server