{
  "name": "getlib-mcp",
  "version": "1.3.1",
  "type": "module",
  "description": "GetLib MCP - powerful modular self-hostable library docs MCP server and dashboard (Context7 alternative)",
  "license": "SSPL-1.0",
  "author": "D1ZZY4",
  "repository": {
    "type": "git",
    "url": "https://github.com/D1ZZY4/GetLib-MCP.git"
  },
  "homepage": "https://github.com/D1ZZY4/GetLib-MCP#readme",
  "bugs": {
    "url": "https://github.com/D1ZZY4/GetLib-MCP/issues"
  },
  "keywords": [
    "mcp",
    "model-context-protocol",
    "context7-alternative",
    "library-docs",
    "documentation",
    "claude",
    "cursor",
    "ai",
    "devtools"
  ],
  "main": "./dist/index.js",
  "bin": {
    "getlib-mcp": "./dist/index.js"
  },
  "exports": {
    ".": "./dist/index.js",
    "./package.json": "./package.json"
  },
  "files": [
    "dist",
    "README.md",
    "LICENSE"
  ],
  "engines": {
    "node": ">=20"
  },
  "packageManager": "bun@1.4.2",
  "scripts": {
    "dev": "next dev -H 0.0.0.0 -p 3000",
    "mcp": "bun src/server/mcp/stdio-entry.ts",
    "build:mcp": "bun scripts/mcp-build.ts",
    "db:push": "bun scripts/db-push.ts",
    "clean:test": "bun scripts/clean-test.ts",
    "prepublishOnly": "bun run build:mcp",
    "build": "next build",
    "start": "next start -H 0.0.0.0 -p 3000",
    "typecheck": "tsc --noEmit",
    "check:no-em-dash": "rg -lP \"\\x{2014}\" --glob '!node_modules/**' --glob '!.next/**' --glob '!.git/**' --glob '!bun.lock' --glob '!AGENTS.md' . && echo 'EM DASH FOUND' && exit 1 || (rg -lP '\\\\u2014|&#8212;|&mdash;' src --glob '*.ts' --glob '*.tsx' --glob '*.css' && echo 'EM DASH CIRCUMVENTION FOUND' && exit 1 || echo 'no-em-dash: clean')",
    "check:boundaries": "bun scripts/check-boundaries.ts",
    "lint": "bun run typecheck && bun run check:no-em-dash && bun run check:boundaries",
    "validate": "bun run typecheck && bun run check:no-em-dash && bun run check:boundaries && bun run test && bun run build",
    "test": "GET_LIB_MODE=development NODE_ENV=test VERCEL_ENV= VERCEL_URL= GETLIB_AUTHENTICATION_ENABLE=false GETLIB_DEFAULT_ACCOUNT= GETLIB_DEFAULT_PASS= GETLIB_SESSION_SECRET= GETLIB_DATABASE_MODE= GETLIB_SUPABASE_URL= GETLIB_SUPABASE_ANON_KEY= GETLIB_SUPABASE_PUBLISHABLE_KEY= GETLIB_SUPABASE_SERVICE_KEY= SUPABASE_URL= SUPABASE_ANON_KEY= SUPABASE_PUBLISHABLE_KEY= SUPABASE_SERVICE_ROLE_KEY= NEXT_PUBLIC_SUPABASE_ANON_KEY= GETLIB_ALLOWED_HOSTS= GETLIB_CACHE_DIR= GETLIB_CONCURRENCY= GETLIB_NO_WATERMARK= GETLIB_GITHUB_TOKEN= GETLIB_TOKEN_LIMIT= GETLIB_MAX_TOKEN_LIMIT= GETLIB_CACHE_TTL_MS= GETLIB_FETCH_TIMEOUT_MS= GETLIB_DEEP_FETCH_MAX_PAGES= GETLIB_DEEP_FETCH_RELEVANCE_THRESHOLD= GETLIB_DEEP_FETCH_TIMEOUT_MS= GETLIB_MAX_CONCURRENT_FETCHES= GETLIB_TOOL_TIMEOUT_MS= GETLIB_SWR_STALE_TTL_MS= GETLIB_CIRCUIT_BREAKER_THRESHOLD= GETLIB_CIRCUIT_BREAKER_RESET_MS= GETLIB_LOG_FORMAT= GETLIB_LOG_LEVEL= bun test"
  },
  "dependencies": {
    "@heroui/react": "^3.2.4",
    "@heroui/styles": "^3.2.4",
    "@modelcontextprotocol/sdk": "^1.17.5",
    "@supabase/supabase-js": "^2.116.0",
    "@tailwindcss/postcss": "^4.3.3",
    "next": "^16.3.4",
    "next-themes": "^0.4.6",
    "react": "^19.2.0",
    "react-dom": "^19.2.0",
    "recharts": "^3.10.1",
    "undici": "^8.10.2",
    "zod": "^4.5.4"
  },
  "devDependencies": {
    "@types/node": "^26.5.0",
    "@types/react": "^19.2.0",
    "@types/react-dom": "^19.2.0",
    "bun-types": "^1.4.2",
    "tailwindcss": "^4.1.13",
    "typescript": "^5.9.2"
  }
}
