package.json•4.27 kB
{
"name": "@daghis/teamcity-mcp",
"version": "1.10.3",
"description": "Model Control Protocol server for TeamCity CI/CD integration with AI coding assistants",
"mcpName": "io.github.daghis/teamcity",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"bin": {
"teamcity-mcp": "dist/index.js"
},
"engines": {
"node": ">=20.10.0 <21"
},
"scripts": {
"dev": "node ./node_modules/tsx/dist/cli.mjs watch src/index.ts",
"dev:interactive": "bash scripts/interact.sh",
"build": "node scripts/build.cjs",
"build:bundle": "CODECOV_BUNDLE=true npm run build",
"build:tsc": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
"start": "node dist/index.js",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage --runInBand",
"test:coverage:ci": "jest -c jest.ci.config.js --coverage --runInBand",
"test:unit": "jest tests/unit",
"test:integration": "node scripts/verify-integration-env.cjs && jest tests/integration",
"test:ci": "jest --coverage --ci --reporters=default --reporters=jest-junit",
"lint": "sh -c \"node ./node_modules/eslint/bin/eslint.js 'src/**/*.{ts,tsx}' 'tests/**/*.test.{ts,tsx,js}' --fix --no-error-on-unmatched-pattern\"",
"lint:check": "node ./node_modules/eslint/bin/eslint.js 'src/**/*.{ts,tsx}' 'tests/**/*.test.{ts,tsx,js}' --no-error-on-unmatched-pattern",
"format": "node ./node_modules/prettier/bin/prettier.cjs --write 'src/**/*.{ts,tsx,json,md}' 'tests/**/*.{ts,tsx,js,json,md}'",
"format:check": "node ./node_modules/prettier/bin/prettier.cjs --check 'src/**/*.{ts,tsx,json,md}' 'tests/**/*.{ts,tsx,js,json,md}'",
"typecheck": "node ./node_modules/typescript/bin/tsc --noEmit -p tsconfig.build.json",
"typecheck:all": "node ./node_modules/typescript/bin/tsc --noEmit",
"check": "npm run typecheck && npm run lint:check && npm run format:check",
"clean": "rm -rf dist coverage",
"fetch:swagger": "node ./node_modules/tsx/dist/cli.mjs scripts/fetch-swagger-spec.ts",
"generate:client": "npm exec -y @openapitools/openapi-generator-cli@2.23.1 -- generate -c openapi-generator-config.json",
"update:client": "npm run fetch:swagger -- --force && npm run generate:client",
"e2e": "node ./node_modules/tsx/dist/cli.mjs tests/e2e/index.ts",
"e2e:build": "npm run build && node dist/e2e/index.js",
"e2e:setup": "node ./node_modules/tsx/dist/cli.mjs tests/e2e/setup-playground.ts",
"e2e:cleanup": "node ./node_modules/tsx/dist/cli.mjs tests/e2e/cleanup.ts",
"generate:notices": "node scripts/generate-third-party-notices.cjs"
},
"keywords": [
"mcp",
"teamcity",
"ci",
"cd",
"ai",
"claude",
"cursor",
"windsurf",
"devops"
],
"author": "",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/Daghis/teamcity-mcp.git"
},
"dependencies": {
"@modelcontextprotocol/sdk": "^1.18.0",
"ajv": "^8.17.1",
"ajv-formats": "^3.0.1",
"axios": "^1.12.1",
"dotenv": "^17.2.2",
"express": "^5.1.0",
"inversify": "^7.9.1",
"morgan": "^1.10.0",
"reflect-metadata": "^0.2.2",
"tslib": "^2.8.1",
"winston": "^3.11.0",
"zod": "^4.1.11"
},
"devDependencies": {
"@codecov/bundler-plugin-core": "^1.9.1",
"@eslint/compat": "^1.4.0",
"@esbuild-plugins/tsconfig-paths": "^0.1.2",
"@trivago/prettier-plugin-sort-imports": "^5.2.2",
"@types/ajv": "^1.0.4",
"@types/express": "^5.0.3",
"@types/jest": "^30.0.0",
"@types/js-yaml": "^4.0.9",
"@types/morgan": "^1.9.9",
"@types/node": "^24.3.1",
"@typescript-eslint/eslint-plugin": "^8.44.1",
"@typescript-eslint/parser": "^8.44.1",
"axios-retry": "^4.5.0",
"esbuild": "^0.25.9",
"eslint": "^9.36.0",
"eslint-config-prettier": "^10.1.8",
"eslint-import-resolver-typescript": "^4.4.4",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-prettier": "^5.0.1",
"jest": "^30.1.3",
"jest-junit": "^16.0.0",
"js-yaml": "^4.1.0",
"prettier": "^3.1.0",
"ts-jest": "^29.4.1",
"tsc-alias": "^1.8.8",
"tsconfig-paths": "^4.2.0",
"tsx": "^4.6.0",
"typescript": "^5.3.2"
},
"overrides": {
"axios": "^1.12.1"
}
}