UNPKG

@aashari/boilerplate-mcp-server

Version:

TypeScript Model Context Protocol (MCP) server boilerplate providing IP lookup tools/resources. Includes CLI support and extensible structure for connecting AI systems (LLMs) to external data sources like ip-api.com. Ideal template for creating new MCP in

137 lines (136 loc) 3.72 kB
{ "name": "@aashari/boilerplate-mcp-server", "version": "1.10.5", "description": "TypeScript Model Context Protocol (MCP) server boilerplate providing IP lookup tools/resources. Includes CLI support and extensible structure for connecting AI systems (LLMs) to external data sources like ip-api.com. Ideal template for creating new MCP integrations via Node.js.", "main": "dist/index.js", "types": "dist/index.d.ts", "_moduleNotes": "Although source code uses ESM syntax, the build output target is CommonJS to align with Node.js compatibility and patterns seen in related MCP servers. tsconfig.json's 'module': 'NodeNext' handles the input syntax, while tsc outputs CJS.", "type": "commonjs", "repository": { "type": "git", "url": "https://github.com/aashari/boilerplate-mcp-server.git" }, "bin": { "mcp-server": "./dist/index.js" }, "scripts": { "build": "tsc", "prepare": "npm run build && node scripts/ensure-executable.js", "postinstall": "node scripts/ensure-executable.js", "test": "jest", "test:coverage": "jest --coverage", "lint": "eslint src --ext .ts --config eslint.config.mjs", "format": "prettier --write 'src/**/*.ts' 'scripts/**/*.js'", "publish:npm": "npm publish", "update:check": "npx npm-check-updates", "update:deps": "npx npm-check-updates -u && npm install --legacy-peer-deps", "update:version": "node scripts/update-version.js", "dev:server": "DEBUG=true npm run build && npx @modelcontextprotocol/inspector -e DEBUG=true node dist/index.js", "dev:cli": "DEBUG=true npm run build && DEBUG=true node dist/index.js", "start:server": "npm run build && npx @modelcontextprotocol/inspector node dist/index.js", "start:cli": "npm run build && node dist/index.js" }, "keywords": [ "mcp", "typescript", "claude", "anthropic", "ai", "boilerplate", "server", "model-context-protocol", "tools", "resources", "tooling", "ai-integration", "mcp-server", "llm", "ai-connector", "external-tools", "cli", "mcp-inspector" ], "author": "", "license": "ISC", "devDependencies": { "@eslint/js": "^9.28.0", "@semantic-release/changelog": "^6.0.3", "@semantic-release/exec": "^7.1.0", "@semantic-release/git": "^10.0.1", "@semantic-release/github": "^11.0.3", "@semantic-release/npm": "^12.0.1", "@types/jest": "^29.5.14", "@types/node": "^22.15.29", "@typescript-eslint/eslint-plugin": "^8.33.0", "@typescript-eslint/parser": "^8.33.0", "eslint": "^9.28.0", "eslint-config-prettier": "^10.1.5", "eslint-plugin-prettier": "^5.4.1", "jest": "^29.7.0", "nodemon": "^3.1.10", "npm-check-updates": "^18.0.1", "prettier": "^3.5.3", "semantic-release": "^24.2.5", "ts-jest": "^29.3.4", "ts-node": "^10.9.2", "typescript": "^5.8.3", "typescript-eslint": "^8.33.0" }, "publishConfig": { "registry": "https://registry.npmjs.org/", "access": "public" }, "dependencies": { "@modelcontextprotocol/sdk": "^1.12.1", "commander": "^14.0.0", "dotenv": "^16.5.0", "zod": "^3.25.47" }, "directories": { "example": "examples" }, "jest": { "preset": "ts-jest", "testEnvironment": "node", "testMatch": [ "**/src/**/*.test.ts" ], "collectCoverageFrom": [ "src/**/*.ts", "!src/**/*.test.ts", "!src/**/*.spec.ts" ], "coveragePathIgnorePatterns": [ "/node_modules/", "/dist/", "/coverage/" ], "coverageReporters": [ "text", "lcov", "json-summary" ], "transform": { "^.+\\.tsx?$": [ "ts-jest", { "useESM": true } ] }, "moduleNameMapper": { "(.*)\\.(js|jsx)$": "$1" }, "extensionsToTreatAsEsm": [ ".ts" ], "moduleFileExtensions": [ "ts", "tsx", "js", "jsx", "json", "node" ] } }