hypertool-mcp
Dynamically expose tools from proxied servers based on an Agent Persona
Install / Use
claude mcp add toolprint -- npx -y github:toolprint/hypertool-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Development & EngineeringSupported Platforms
Tags
Our assessment of hypertool-mcp
hypertool-mcp scores 46/100 on our quality scale, 4297th of 4,595 Development & Engineering skills we index.
Its MCP Server is 9.8 KB long, written without headings and no code examples: a thorough specification that gives an agent plenty to work with.
It has no GitHub stars yet, so there is no community track record; judge it on its content.
Maintenance, license and trust
- We could not determine when the repository was last updated.
- Our last check on 2026-10-18 found the source still online.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 68/100, with 3 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.
AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
hypertool-mcp compared with similar skills
All 4 of these similar skills score higher than hypertool-mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| hypertool-mcp (this skill)by toolprint | 46 | 0 | — | MCP Server |
| taste-skillby Leonxlnx | 100 | 101.6k | 3d ago | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 101.3k | today | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 77.6k | 1d ago | CLAUDE.md |
| ai-job-searchby ai-job-search-dev | 100 | 64.0k | 2d ago | CLAUDE.md |
Frequently asked questions
- How do I install hypertool-mcp?
- Run
claude mcp add toolprint -- npx -y github:toolprint/hypertool-mcp. The install tabs above show the steps for each supported agent. - Which AI agents does hypertool-mcp work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is hypertool-mcp safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It declares no license and scores 68/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is hypertool-mcp still maintained?
- We could not determine when the repository was last updated.
Skill content
View source on GitHub{ "name": "@toolprint/hypertool-mcp", "version": "0.0.46", "mcpName": "ai.toolprint/hypertool-mcp", "description": "HyperTool MCP proxy server for routing requests between clients and multiple underlying MCP servers", "main": "./dist/index.js", "bin": { "hypertool-mcp": "./dist/bin.js" }, "scripts": { "start": "node dist/bin.js", "start:stdio": "node dist/bin.js --mcp-config mcp.test.json --debug", "start:http": "node dist/bin.js --transport http --port 7001 --mcp-config mcp.test.json --debug", "dev": "npm run build && node dist/bin.js --debug", "smithery:build": "tsc && npx @smithery/cli build src/server.ts --out dist/server.cjs --transport stdio", "smithery:build:container": "npm run docker:build && echo 'Container build completed for Smithery'", "smithery:dev": "tsc && npx @smithery/cli playground --port 3000 -- node dist/server.js --mcp-config mcp.minimal.json --transport http --port 3000", "smithery:dev:container": "npm run docker:build:local && docker run --rm -p 3000:8080 -d --name smithery-test hypertool-mcp:latest && echo 'Container running on http://localhost:3000 - use Smithery playground' && echo 'Stop with: docker stop smithery-test'", "smithery:test": "tsc && npx @smithery/cli playground --port 3001 -- node dist/server.js --mcp-config mcp.minimal.json --transport http --port 3001", "smithery:test:container": "npm run docker:build:local && docker run --rm -p 3001:8080 --name smithery-test-alt hypertool-mcp:latest", "smithery:playground:docker": "npm run smithery:dev:container && sleep 5 && npx @smithery/cli playground --port 3000", "smithery:stop": "docker stop smithery-test smithery-test-alt 2>/dev/null || echo 'No Smithery test containers running'", "inspector:stdio": "tsc && npx @modelcontextprotocol/inspector node dist/server.js --mcp-config mcp.container.json", "inspector:http": "tsc && concurrently "node dist/server.js --mcp-config mcp.container.json --transport http --port 3000" "sleep 2 && npx @modelcontextprotocol/inspector http://localhost:3000/mcp"", "service:start": "tsc && node dist/bin.js service start", "service:start:dev": "tsc && node dist/bin.js service start --profile development", "service:start:prod": "tsc && node dist/bin.js service start --profile production", "service:stop": "tsc && node dist/bin.js service stop", "service:restart": "tsc && node dist/bin.js service restart", "service:status": "tsc && node dist/bin.js service status", "service:logs": "tsc && node dist/bin.js service logs", "service:health": "tsc && node dist/bin.js service health", "test": "vitest run", "test:unit": "vitest run src --exclude='/integration/' --exclude='/*.integration.test.ts' --exclude='/.e2e.test.ts' --exclude='**/.perf.test.ts'", "test:integration": "vitest run src/integration test/integration", "test:e2e": "vitest run test/e2e", "test:perf": "vitest run src//*.perf.test.ts", "test:all": "vitest run", "test:fast": "vitest run src --exclude='/integration/' --exclude='/.perf.test.ts' --reporter=dot", "test:watch": "vitest", "test:watch:unit": "vitest src --exclude='/integration/' --exclude='**/.perf.test.ts'", "test:coverage": "vitest run --coverage", "test:coverage:unit": "vitest run src --exclude='/integration/' --exclude='/.perf.test.ts' --coverage", "test:ui": "vitest --ui", "test:ci": "vitest run --reporter=json --reporter=junit", "test:debug": "node --inspect-brk ./node_modules/.bin/vitest run", "test:backup": "vitest run --grep 'backup|restore|BackupManager'", "test:config": "vitest run src/config src/config-manager", "test:toolset": "vitest run src/toolset", "test:stdio": "vitest run src/integration/stdio-transport.test.ts --reporter=verbose", "test:stdio:debug": "DEBUG= vitest run src/integration/stdio-transport.test.ts --reporter=verbose --testTimeout=60000", "build": "rm -rf dist && tsc && npm run copy-examples && chmod +x dist/bin.js", "copy-examples": "mkdir -p dist/examples && cp -r examples/mcp dist/examples/", "pack:hello-dxt": "cd examples/hello-dxt && npm install && cd ../.. && dxt pack examples/hello-dxt examples/hello-dxt.dxt", "build:watch": "tsc --watch", "lint": "eslint src --ext .ts", "lint:fix": "eslint src --ext .ts --fix", "format": "prettier --write "src//.ts"", "format:check": "prettier --check "src/**/.ts"", "pre-commit": "pre-commit run", "pre-commit:all": "pre-commit run --all-files", "pre-commit:install": "pip install pre-commit && pre-commit install", "changeset": "changeset", "changeset:version": "changeset version", "changeset:publish": "changeset publish", "changeset:status": "changeset status", "prepublishOnly": "npm run format && npm run build && npm run test", "restore": "npm run build && node dist/scripts/restore/restore-all.js", "restore:dry-run": "npm run build && node dist/scripts/restore/restore-all.js --dry-run", "docker:setup": "docker buildx create --name multiarch --use --bootstrap 2>/dev/null || docker buildx use multiarch", "docker:build": "npm run docker:setup && docker buildx bake hypertool-mcp", "docker:build:local": "npm run docker:setup && docker buildx bake hypertool-mcp-local", "docker:build:dev": "npm run docker:setup && docker buildx bake hypertool-mcp-dev", "docker:build:push": "npm run docker:setup && docker buildx bake --set '.output=type=registry' hypertool-mcp", "docker:inspect": "docker buildx imagetools inspect hypertool-mcp:latest", "docker:test": "npm run docker:build:local && docker run --rm -p 8080:8080 -d --name hypertool-test hypertool-mcp:latest && sleep 10 && curl -f http://localhost:8080/health && docker stop hypertool-test", "docker:clean": "docker buildx prune -f && docker system prune -f", "docker:compose:test:up": "docker-compose -f docker-compose.test.yaml up -d", "docker:compose:test:down": "docker-compose -f docker-compose.test.yaml down", "docker:compose:test:build": "docker-compose -f docker-compose.test.yaml build", "docker:compose:test:logs": "docker-compose -f docker-compose.test.yaml logs -f", "docker:compose:test:bake": "docker buildx bake -f docker-compose.test.yaml", "docker:compose:up": "docker-compose up -d", "docker:compose:down": "docker-compose down", "docker:compose:build": "docker-compose build", "docker:compose:logs": "docker-compose logs -f", "docker:compose:bake": "docker buildx bake -f docker-compose.yml", "dev:docker": "npm run build && npm run docker:build:local && npm run docker:compose:up", "dev:docker:test": "npm run build && npm run docker:build:local && npm run docker:compose:test:up", "inspector:docker:production": "npm run docker:build:local && docker-compose up -d && echo '\n🚀 HyperTool MCP running in Docker (production config)\n📊 Server: http://localhost:8080/mcp\n🔍 Run this in another terminal:\n npm run inspector:connect\n' && docker-compose logs -f", "inspector:docker:test": "npm run docker:build:local && docker-compose -f docker-compose.test.yaml up -d && echo '\n🚀 HyperTool MCP running in Docker (test config)\n📊 Server: http://localhost:8080/mcp\n🔍 Run this in another terminal:\n npm run inspector:connect\n' && docker-compose -f docker-compose.test.yaml logs -f", "inspector:connect": "npx @modelcontextprotocol/inspector http://localhost:8080/mcp", "inspector:docker:stop": "docker-compose down && docker-compose -f docker-compose.test.yaml down 2>/dev/null || true", "inspector:docker:quick": "npm run inspector:docker:stop && npm run inspector:docker:production" }, "keywords": [ "mcp", "model-context-protocol", "ai-tools", "toolset", "proxy", "claude", "cursor", "ai-assistant", "dynamic-toolset", "mcp-server", "mcp-client", "mcp-proxy", "toolprint", "hypertool", "smithery" ], "author": "OneGrep, Inc.", "license": "MIT", "repository": { "type": "git", "url": "https://github.com/toolprint/hypertool-mcp" }, "homepage": "https://github.com/toolprint/hypertool-mcp#readme", "bugs": { "url": "https://github.com/toolprint/hypertool-mcp/issues" }, "type": "module", "engines": { "node": ">=16.0.0" }, "files": [ "dist/**/", "README.md", "LICENSE", "SECURITY.md", "CODE_OF_CONDUCT.md", "CONTRIBUTING.md", "CHANGELOG.md", "assets/toolprint.png" ], "publishConfig": { "access": "public", "tag": "beta" }, "devDependencies": { "@changesets/cli": "^2.29.5", "@types/node": "^24.0.12", "@types/ora": "^3.1.0", "@types/pino": "^7.0.4", "@types/tar": "^6.1.13", "@types/unzipper": "^0.10.11", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "^8.36.0", "@typescript-eslint/parser": "^8.36.0", "@vitest/coverage-v8": "^3.2.4", "@vitest/ui": "^3.2.4", "concurrently": "^9.2.0", "eslint": "^9.30.1", "eslint-config-prettier": "^10.1.5", "eslint-plugin-prettier": "^5.5.1", "markdownlint-cli2": "^0.13.0", "nodemon": "^3.1.10", "prettier": "^3.6.2", "ts-node": "^10.9.2", "typescript": "^5.8.3", "vitest": "^3.2.4" }, "dependencies": { "@modelcontextprotocol/sdk": "^1.15.1", "@toolprint/mcp-logger": "^0.0.7", "@types/chalk": "^0.4.31", "@types/express": "^5.0.3", "@types/figlet": "^1.7.0", "@types/inquirer": "^9.0.8", "@types/node-cache": "^4.1.3", "axios": "^1.7.7", "chalk": "^5.4.1", "commander": "^14.0.0", "express": "^5.1.0", "figlet": "^1.8.2", "inquirer": "^12.7.0", "memfs": "^4.24.0", "node-cache": "^5.1.2", "ora": "^8.2.0", "pino": "^9.7.0", "pino-pretty": "^13.1.1", "tar": "^7.4.3", "unzipper": "^0.12.3", "uuid": "^11.0.2", "yaml": "^2.8.0", "zod": "^3.25.76", "zod-to-json-schema": "^3.24.6" } }
Related Skills
taste-skill
101.6kAgent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages
Agent-Reach
101.3kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
77.6kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ai-job-search
64.0kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
