← Browse

@jagdeepsinghdev/mcp-nova

A

MCP server package @nova-mcp/mcp-nova

mcp_servermcp

Install

agr install @jagdeepsinghdev/mcp-nova --target claude

This artifact does not publish files for Claude.

Document

{ "name": "@nova-mcp/mcp-nova", "version": "1.0.3", "description": "Zero-config AI project memory with live file watching and MCP integration", "bin": { "mcp-nova": "./bin/nova-memory-mcp.js" }, "files": [ "bin/nova-memory-mcp.js", "dist/bin/mcp-nova.js", "mcp.json", "README.md", "LICENSE" ], "scripts": { "start": "node dist/bin/nova-memory.js start", "build": "npm run build:ts && npm run build:cli && node scripts/build-mcp.js", "build:ts": "tsc --project tsconfig.build.json && tsc-alias -p tsconfig.build.json", "build:ts:watch": "tsc --project tsconfig.build.json --watch", "build:cli": "node build-cli.js", "build:cli:watch": "node build-cli.js --watch", "build:prod": "NODE_ENV=production npm run build:ts && NODE_ENV=production npm run build:cli", "compile": "tsc --noEmit", "compile:watch": "tsc --noEmit --watch", "clean:ts": "rm -rf dist", "migrate:module": "node scripts/migrate-module.js", "migrate:status": "node scripts/migration-status.js", "test:parallel": "node scripts/test-parallel.js", "lint": "eslint src/ tests/ --ext .ts", "lint:fix": "eslint src/ tests/ --ext .ts --fix", "lint:staged": "lint-staged", "test:integration": "node test-typescript-integration.js", "format": "prettier --write "src//*.ts" "tests//.ts"", "format:check": "prettier --check "src/**/.ts" "tests/**/*.ts"", "typecheck": "tsc --noEmit", "test": "jest", "test:watch": "jest --watch", "test:coverage": "jest --coverage", "test:smart-response": "jest tests/features/smart-response.test.js --coverage", "test:services": "jest tests/services --coverage", "test:all-new": "jest tests/features tests/services --coverage", "test:performance": "jest tests/benchmarks tests/competitive tests/comprehensive tests/performance-issues-validation.test.js tests/critical-performance-issues.test.js --testTimeout=60000", "test:long": "jest --config jest.config.long.js", "test:stress": "jest --config jest.config.long.js tests/long-running/search-stress.test.js", "build:clean": "rimraf build dist", "build:validate": "node scripts/validate-build.js", "build:watch": "npm run build:cli:watch", "dev": "concurrently "npm run build:ts:watch" "npm run build:cli:watch"", "precommit": "npm run lint && npm run format:check", "prepublishOnly": "npm run test && npm run lint && npm run build && npm run clean:publish", "clean:publish": "node -e "const fs=require('fs');const path=require('path');function clean(dir){fs.readdirSync(dir).forEach(f=>{const p=path.join(dir,f);if(fs.statSync(p).isDirectory()){if(f==='test-utils'||f==='test')fs.rmSync(p,{recursive:true});else clean(p)}else if(f.endsWith('.map')||f.endsWith('.tsbuildinfo')||f.startsWith('test-utils')||f.startsWith('test-setup')||f==='nova-memory.js')fs.unlinkSync(p)})}clean('./dist')"", "release": "semantic-release", "release:dry": "semantic-release --dry-run", "security:audit": "npm audit --audit-level=moderate", "security:fix": "npm audit fix", "deps:check": "npm outdated", "deps:update": "npm update && npm audit fix", "ci:full": "npm run lint && npm run test:coverage && npm run build && npm run security:audit", "postinstall": "node scripts/postinstall.js || true", "build:binary": "node scripts/build-binary.js", "build:binary:clean": "rimraf dist-binary", "build:executable": "node scripts/build-executable.js", "pkg:mcp": "pkg bin/nova-memory-mcp.mjs --out-path dist-binary", "pkg:cli": "pkg bin/nova-memory --out-path dist-binary", "mcp:start": "node scripts/auto-start-mcp.js", "mcp:stop": "node scripts/auto-start-mcp.js stop", "mcp:status": "node scripts/auto-start-mcp.js status", "mcp:restart": "node scripts/auto-start-mcp.js restart", "mcp:install-startup": "node scripts/install-windows-startup.js", "mcp:add-to-claude": "node add-to-claude.js", "prepare": "husky" }, "keywords": [ "ai", "memory", "mcp", "claude", "claude-desktop", "claude-code", "cursor", "cursor-ide", "project-memory", "file-watching", "developer-tools", "model-context-protocol", "ai-assistant", "ai-memory", "local-memory", "token-savings", "context-management", "knowledge-graph", "sqlite", "workflow-management", "task-management", "version-tracking", "mcp-server", "mcp-tools", "anthropic", "llm", "llm-tools", "ai-tools", "productivity", "development-tools", "free", "open-source", "mit-license" ], "author": "Nova AI Team", "license": "MIT", "repository": { "type": "git", "url": "https://github.com/jagdeepsinghdev/nova-memory.git" }, "homepage": "https://github.com/jagdeepsinghdev/nova-memory#readme", "bugs": { "url": "https://github.com/jagdeepsinghdev/nova-memory/issues" }, "engines": { "node": ">=16.0.0" }, "dependencies": { "@babel/runtime": "^7.28.3", "@modelcontextprotocol/sdk": "^1.25.1", "@modelcontextprotocol/server-memory": "^2025.4.25", "@xenova/transformers": "^2.17.2", "@zilliz/milvus2-sdk-node": "^2.6.0", "blessed": "^0.1.81", "chalk": "^4.1.2", "chokidar": "^3.5.3", "class-transformer": "^0.5.1", "class-validator": "^0.14.2", "commander": "^11.1.0", "cos-similarity": "^2.0.0", "fs-extra": "^11.2.0", "ink": "^6.0.1", "ink-box": "^2.0.0", "ink-progress-bar": "^3.0.0", "ink-select-input": "^6.2.0", "ink-spinner": "^5.0.0", "ink-table": "^3.1.0", "ink-text-input": "^6.0.0", "inquirer": "^8.2.6", "puppeteer": "^24.14.0", "react": "^19.1.0", "reflect-metadata": "^0.2.2", "sqlite3": "^5.1.7", "uuid": "^9.0.1", "yaml": "^2.3.4", "zod": "^3.25.76" }, "devDependencies": { "@babel/core": "^7.23.7", "@babel/plugin-transform-runtime": "^7.23.7", "@babel/preset-env": "^7.23.7", "@jest/globals": "^29.7.0", "@semantic-release/changelog": "^6.0.3", "@semantic-release/git": "^10.0.1", "@types/jest": "^29.5.0", "@types/node": "^20.0.0", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "^8.50.1", "@typescript-eslint/parser": "^8.50.1", "axios": "^1.10.0", "better-sqlite3": "^12.2.0", "concurrently": "^8.2.2", "esbuild": "^0.25.8", "eslint": "^8.57.1", "husky": "^9.1.7", "javascript-obfuscator": "^0.14.0-beta.3", "jest": "^29.7.0", "lint-staged": "^16.2.7", "nexe": "^5.0.0-beta.4", "pkg": "^4.3.0-beta.4", "prettier": "^3.7.4", "rimraf": "^5.0.5", "semantic-release": "^22.0.12", "supertest": "^6.3.3", "ts-jest": "^29.1.0", "ts-node": "^10.9.0", "tsc-alias": "^1.8.16", "typescript": "^5.3.3" } }

Trustgrade A

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • warnType matchbest-effort: server code not analyzed

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • passLicense

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-bdd3d2379a6c2026-08-06