{
	"name": "@vheins/local-memory-mcp",
	"version": "0.41.1",
	"description": "MCP Local Memory Service for coding copilot agents",
	"mcpName": "io.github.vheins/local-memory-mcp",
	"type": "module",
	"workspaces": [
		"src/dashboard/ui"
	],
	"main": "dist/mcp/server.js",
	"exports": {
		".": {
			"import": "./dist/mcp/server.js",
			"default": "./dist/mcp/server.js"
		},
		"./dashboard": {
			"import": "./dist/dashboard/server.js",
			"default": "./dist/dashboard/server.js"
		}
	},
	"bin": {
		"local-memory-mcp": "bin/mcp-memory-server.js",
		"mcp-memory-server": "bin/mcp-memory-server.js",
		"mcp-memory-dashboard": "bin/mcp-memory-dashboard.js"
	},
	"files": [
		"dist",
		"bin",
		"storage/.gitkeep",
		"dist/prompts",
		"dist/prompts/server"
	],
	"repository": {
		"type": "git",
		"url": "git+https://github.com/vheins/local-memory-mcp.git"
	},
	"bugs": {
		"url": "https://github.com/vheins/local-memory-mcp/issues"
	},
	"homepage": "https://github.com/vheins/local-memory-mcp#readme",
	"author": "Muhammad Rheza Alfin <m.rheza.alfin@gmail.com>",
	"license": "MIT",
	"scripts": {
		"build": "rm -rf dist && npm run dashboard:build && tsup --config tsup.config.ts && bash scripts/copy-grammar-wasm.sh && mkdir -p bin && cp -r src/mcp/prompts/definitions dist/prompts/ && cp -r src/mcp/prompts/server dist/prompts/ && node scripts/gen-bins.mjs && shx chmod +x dist/mcp/server.js dist/dashboard/server.js bin/mcp-memory-server.js bin/mcp-memory-dashboard.js",
		"dashboard:build": "vite build --config src/dashboard/ui/vite.config.ts",
		"dashboard:dev": "vite dev --config src/dashboard/ui/vite.config.ts",
		"prepublishOnly": "npm run build",
		"dev": "tsx watch src/mcp/server.ts",
		"start": "node dist/mcp/server.js",
		"start:mcp": "node dist/mcp/server.js",
		"dashboard": "node dist/dashboard/server.js",
		"both": "node dist/mcp/server.js & SERVER_PID=$!; node dist/dashboard/server.js & DASH_PID=$!; trap 'kill $SERVER_PID $DASH_PID 2>/dev/null' EXIT INT TERM; wait",
		"test": "vitest --run",
		"test:e2e": "vitest --run --project e2e",
		"test:integration": "vitest --run --project integration",
		"test:perf": "vitest --run --project perf",
		"test:unit": "vitest --run --project unit",
		"test:watch": "vitest",
		"type-check": "tsc --noEmit && tsc -p tsconfig.test.json && svelte-check --tsconfig ./src/dashboard/ui/tsconfig.json",
		"lint": "eslint . --ext .ts,.svelte",
		"lint:fix": "eslint . --ext .ts,.svelte --fix",
		"format": "prettier --write \"src/**/*.{ts,js,svelte}\"",
		"publish:npm": "npm publish --access public"
	},
	"dependencies": {
		"@modelcontextprotocol/client": "^2.0.0-beta.2",
		"@modelcontextprotocol/server": "^2.0.0-beta.2",
		"@types/proper-lockfile": "^4.1.4",
		"@xenova/transformers": "^2.17.2",
		"better-sqlite3": "^12.9.0",
		"chart.js": "^4.5.1",
		"compromise": "^14.15.1",
		"compromise-dates": "^3.8.0",
		"dompurify": "^3.4.13",
		"esbuild": "0.28.1",
		"express": "^5.2.1",
		"fast-glob": "^3.3.3",
		"gray-matter": "^4.0.3",
		"ignore": "^7.0.6",
		"marked": "^18.0.0",
		"micromatch": "^4.0.8",
		"proper-lockfile": "^4.1.2",
		"qs": "^6.15.0",
		"sweetalert2": "^11.26.25",
		"tree-sitter-c": "^0.24.1",
		"tree-sitter-cpp": "^0.23.4",
		"tree-sitter-dart": "^1.0.0",
		"tree-sitter-go": "^0.25.0",
		"tree-sitter-java": "^0.23.5",
		"tree-sitter-javascript": "^0.25.0",
		"tree-sitter-kotlin": "^0.3.8",
		"tree-sitter-php": "^0.24.2",
		"tree-sitter-python": "^0.25.0",
		"tree-sitter-ruby": "^0.23.1",
		"tree-sitter-rust": "^0.24.0",
		"tree-sitter-swift": "^0.7.1",
		"tree-sitter-typescript": "^0.23.2",
		"tree-sitter-vue": "^0.2.1",
		"web-tree-sitter": "^0.26.11",
		"zod": "^4.3.5"
	},
	"devDependencies": {
		"@eslint/js": "^10.0.1",
		"@fast-check/vitest": "^0.3.0",
		"@sveltejs/vite-plugin-svelte": "^7.0.0",
		"@types/better-sqlite3": "^7.6.13",
		"@types/dompurify": "^3.0.5",
		"@types/express": "^5.0.6",
		"@types/marked": "^5.0.2",
		"@types/node": "^22.19.7",
		"@typescript-eslint/eslint-plugin": "^8.58.1",
		"@typescript-eslint/parser": "^8.58.1",
		"@vitest/coverage-v8": "^4.1.7",
		"eslint": "^10.2.0",
		"eslint-config-prettier": "^10.1.8",
		"eslint-plugin-prettier": "^5.5.5",
		"eslint-plugin-svelte": "^3.17.0",
		"fast-check": "^4.6.0",
		"globals": "^17.5.0",
		"jsdom": "^30.0.0",
		"prettier": "^3.8.2",
		"prettier-plugin-svelte": "^3.5.1",
		"shx": "^0.4.0",
		"svelte": "^5.55.9",
		"svelte-check": "^4.4.6",
		"svelte-eslint-parser": "^1.6.0",
		"tsup": "^8.5.1",
		"tsx": "^4.21.0",
		"typescript": "^5.7.3",
		"typescript-eslint": "^8.58.1",
		"vite": "^8.0.6",
		"vitest": "^4.1.7"
	},
	"overrides": {
		"protobufjs": "^7.6.5",
		"brace-expansion": "^5.0.9",
		"sharp": "^0.35.0",
		"esbuild": "0.28.1",
		"tree-sitter": "^0.22.4",
		"js-yaml": "^3.15.1"
	},
	"allowScripts": {
		"better-sqlite3": true,
		"esbuild@0.28.1": true,
		"protobufjs@7.6.4": true,
		"sharp": true,
		"tree-sitter@0.22.4": true,
		"tree-sitter-c@0.24.1": true,
		"tree-sitter-c@0.23.6": true,
		"tree-sitter-cpp@0.23.4": true,
		"tree-sitter-cli@0.23.2": true,
		"tree-sitter-dart@1.0.0": true,
		"tree-sitter-go@0.25.0": true,
		"tree-sitter-java@0.23.5": true,
		"tree-sitter-javascript@0.25.0": true,
		"tree-sitter-javascript@0.23.1": true,
		"tree-sitter-kotlin@0.3.8": true,
		"tree-sitter-rust@0.24.0": true,
		"tree-sitter-php@0.24.2": true,
		"tree-sitter-ruby@0.23.1": true,
		"tree-sitter-python@0.25.0": true,
		"tree-sitter-typescript@0.23.2": true,
		"tree-sitter-vue@0.2.1": true,
		"tree-sitter-swift@0.7.1": true
	}
}
