package.json•2.57 kB
{
"name": "ls-ssh-mcp",
"version": "2.1.0",
"type": "module",
"description": "SSH connection management for Claude Code with MCP integration",
"main": "dist/index.js",
"scripts": {
"build": "tsc && cp -r static dist/",
"build:client": "tsc static/terminal-input-handler.ts --target ES2017 --lib ES2017,DOM --outDir static --skipLibCheck --removeComments false",
"start": "node dist/src/mcp-server.js",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage",
"test:e2e": "jest --testPathPattern=e2e",
"test:unit": "jest --testPathPattern=test --testPathIgnorePatterns=e2e",
"test:regression": "jest --testPathPattern=regression-prevention",
"lint": "eslint src/ tests/ --ext .ts",
"lint:fix": "eslint src/ tests/ --ext .ts --fix",
"dev": "ts-node src/index.ts",
"clean": "rm -rf dist",
"prebuild": "npm run clean",
"ci-validate": "./scripts/ci-validation.sh",
"precommit": "npm run ci-validate"
},
"dependencies": {
"@modelcontextprotocol/sdk": "^1.17.4",
"@types/express": "^5.0.3",
"@types/ws": "^8.18.1",
"axios": "^1.12.2",
"express": "^5.1.0",
"node-fetch": "^3.3.2",
"puppeteer": "^24.20.0",
"ssh2": "^1.15.0"
},
"devDependencies": {
"@types/axios": "^0.9.36",
"@types/chai": "^5.2.2",
"@types/jest": "^29.5.5",
"@types/jsdom": "^21.1.7",
"@types/node": "^20.19.11",
"@types/ssh2": "^1.11.0",
"@typescript-eslint/eslint-plugin": "^6.7.2",
"@typescript-eslint/parser": "^6.7.2",
"chai": "^6.0.1",
"eslint": "^8.49.0",
"jest": "^29.7.0",
"jsdom": "^26.1.0",
"ts-jest": "^29.1.1",
"ts-node": "^10.9.1",
"typescript": "^5.2.2",
"ws": "^8.18.3"
},
"jest": {
"preset": "ts-jest",
"testEnvironment": "node",
"roots": [
"<rootDir>/src",
"<rootDir>/tests"
],
"testMatch": [
"**/__tests__/**/*.ts",
"**/?(*.)+(spec|test).ts"
],
"moduleNameMapper": {
"^(\\.{1,2}/.*)\\.js$": "$1"
},
"extensionsToTreatAsEsm": [
".ts"
],
"transform": {
"^.+\\.ts$": [
"ts-jest",
{
"useESM": true
}
]
},
"collectCoverageFrom": [
"src/**/*.ts",
"!src/**/*.d.ts"
],
"testTimeout": 30000,
"forceExit": true,
"detectOpenHandles": true,
"maxConcurrency": 1,
"workerIdleMemoryLimit": "512MB",
"bail": 1
},
"keywords": [
"ssh",
"mcp",
"claude",
"connection"
],
"author": "",
"license": "MIT"
}