htb-mcp
Enables assistants to interact with Hack The Box by wrapping HTB API operations as MCP tools for querying and operating HTB resources.
README
htb-mcp
htb-mcp is an MCP server for Hack The Box.
It wraps HTB API operations as MCP tools so assistants can query and operate HTB directly.
Features
- MCP over
stdio(works with common local MCP clients) - Structured JSON responses from all tools
- Environment-based auth/config (no credential files required)
- API-focused actions for users, machines, challenges, VPN metadata, prolabs, seasons, badges, sherlocks, pwnbox
Requirements
- Python
3.10+ - Hack The Box App Token
Create your HTB App Token in:
https://app.hackthebox.com/account-settings
Installation
cd /path/to/htb-mcp
python3.10 -m venv .venv
source .venv/bin/activate
pip install -e .
For development:
pip install -e ".[dev]"
Environment Variables
Required:
HTB_APP_TOKEN: HTB App Token
Optional:
HTB_API_BASE_URL: defaulthttps://labs.hackthebox.com/api/HTB_USER_AGENT: defaulthtb-mcp/<version>HTB_VERIFY_SSL:true|false|1|0|yes|no(defaulttrue)HTB_HTTP_PROXYHTB_HTTPS_PROXY
MCP Configuration
Option A: installed command (htb-mcp)
{
"mcpServers": {
"htb": {
"command": "htb-mcp",
"env": {
"HTB_APP_TOKEN": "YOUR_HTB_APP_TOKEN"
}
}
}
}
Option B: run module directly from source
{
"mcpServers": {
"htb": {
"command": "python3.10",
"args": ["-m", "htb_mcp"],
"env": {
"PYTHONPATH": "/absolute/path/to/htb-mcp/src",
"HTB_APP_TOKEN": "YOUR_HTB_APP_TOKEN"
}
}
}
}
Running Manually
HTB_APP_TOKEN=YOUR_HTB_APP_TOKEN htb-mcp
Response Envelope
All tool responses follow one envelope:
Success:
{
"ok": true,
"data": {}
}
Error:
{
"ok": false,
"error": {
"type": "ErrorType",
"message": "Human readable message",
"details": {}
}
}
Tool Catalog
User:
htb_user_gethtb_user_activityhtb_user_respect
Machine:
htb_machine_listhtb_machine_gethtb_machine_activehtb_machine_starthtb_machine_stophtb_machine_resethtb_machine_extendhtb_machine_submit_flaghtb_machine_rate_flag
Challenge:
htb_challenge_listhtb_challenge_searchhtb_challenge_gethtb_challenge_submithtb_challenge_instance_starthtb_challenge_instance_stophtb_challenge_instance_status
Prolabs and Certificates:
htb_prolabs_listhtb_prolabs_gethtb_prolabs_submithtb_certificate_list
VPN:
htb_vpn_servers_listhtb_vpn_accessible_listhtb_vpn_switchhtb_vpn_active_connections
Pwnbox:
htb_pwnbox_statushtb_pwnbox_terminate
Sherlocks:
htb_sherlock_categorieshtb_sherlock_list
Badges:
htb_badges_list
Seasons:
htb_season_listhtb_season_detailshtb_season_current_machines
Development
Run tests:
PYTHONPATH=src python3.10 -m pytest -q
Quick syntax check:
PYTHONPATH=src python3.10 -m py_compile src/htb_mcp/*.py src/htb_mcp/htbapi/*.py
Project Layout
htb-mcp/
src/htb_mcp/
server.py
tools.py
config.py
client_factory.py
serialization.py
htbapi/
tests/
Notes
- This project depends on HTB API behavior and can be affected by HTB-side changes.
- Keep your
HTB_APP_TOKENsecret.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.