h1-hacker-mcp
Provides read-only access to the authenticated hacker's HackerOne account, allowing an agent to read programs, policies, scope, reports, and payments through the HackerOne Hacker API. It cannot create, update, or submit reports.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@h1-hacker-mcp list my open reports on HackerOne"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
h1-hacker-mcp
Read-only MCP server for the HackerOne Hacker API. An agent can read the programs, policies, scope, reports, and payments the authenticated hacker account can already see. It cannot create, update, or submit reports.
Credentials
Create an API token in HackerOne under Settings → API Token, then set:
export HACKERONE_API_IDENTIFIER="your-api-token-identifier"
export HACKERONE_API_TOKEN="your-api-token"Related MCP server: hackerone-mcp
Cursor
Add this to your MCP config. The process needs the two environment variables above.
{
"mcpServers": {
"h1-hacker": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/h1-hacker-mcp", "h1-hacker-mcp"]
}
}
}Run
uv run h1-hacker-mcpDocker
The image starts the same stdio server. Credentials are read from the environment at run time and are not copied into the image.
docker build -t h1-hacker-mcp .Cursor must keep stdin open and must not allocate a TTY, because a TTY corrupts the MCP stream. -e NAME forwards each variable from the environment that launches Cursor.
{
"mcpServers": {
"h1-hacker": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "HACKERONE_API_IDENTIFIER",
"-e", "HACKERONE_API_TOKEN",
"h1-hacker-mcp"
]
}
}
}Available Tools
15 toolscheck_credentialsARead-onlyIdempotent
Check the stored HackerOne API token by requesting one program.
Inputs: no named parameters. Returns: object
get_balanceARead-onlyIdempotent
Get the authenticated hacker's current payments balance.
Inputs: no named parameters. Returns: object
get_programARead-onlyIdempotent
Get one program, including its policy and declaration flags.
Declaration flags are offers_bounties, open_scope, fast_payments,
gold_standard_safe_harbor, and allows_bounty_splitting. handle is the
program handle from list_programs, such as "security".
Inputs: handle (required). Returns: object
get_reportARead-onlyIdempotent
Get one report the account can view, including activity.
Includes reporter, program, weakness, severity, bounties, swag, activities,
attachment metadata (with expiring download URLs), structured scope, and
summaries. vulnerability_information is present when the hacker owns the
report. This tool does not download attachment bytes.
Inputs: report_id (required). Returns: object
get_report_intentBRead-onlyIdempotent
Get one report-intent draft. This does not submit or update it.
Inputs: report_intent_id (required). Returns: object
list_earningsBRead-onlyIdempotent
List earnings (bounties, retests, and pentests) for the authenticated hacker.
Inputs: page_size, page_number. Returns: object
list_my_reportsARead-onlyIdempotent
List reports submitted by the authenticated hacker.
This page does not include report activity. Call get_report for the full
report. page_number starts at 1. page_size is 1-100.
Inputs: page_size, page_number. Returns: object
list_payoutsBRead-onlyIdempotent
List payouts sent to the authenticated hacker.
Inputs: page_size, page_number. Returns: object
list_programsARead-onlyIdempotent
List programs the hacker account can access.
Program policies are omitted from this list. Call get_program for the policy
and declaration flags. page_number starts at 1. page_size is 1-100.
Inputs: page_size, page_number. Returns: object
list_report_intent_attachmentsARead-onlyIdempotent
List attachment metadata for a report-intent draft, including expiring download URLs.
This does not download file bytes or upload attachments.
Inputs: report_intent_id (required). Returns: object
list_report_intentsARead-onlyIdempotent
List unsubmitted report-intent drafts owned by the authenticated hacker.
This does not submit them.
Inputs: no named parameters. Returns: object
list_scope_exclusionsCRead-onlyIdempotent
List report categories a program excludes from rewards, beyond core ineligible findings.
Inputs: handle (required). Returns: object
list_structured_scopesARead-onlyIdempotent
List a program's structured scope (in-scope and submission-eligible assets).
Each asset includes asset_identifier, asset_type, eligible_for_submission,
eligible_for_bounty, max_severity, and instruction. Limited to 50 requests
per minute. Page offsets cover at most 10,000 rows; pass id_gt (the last
seen scope id) to continue, and prefer that over high page numbers.
created_after and updated_after are ISO-8601 timestamps.
Inputs: handle (required), id_gt, page_size, page_number, +2 more. Returns: object
list_weaknessesBRead-onlyIdempotent
List weakness types a program accepts. page_number starts at 1. page_size is 1-100.
Inputs: handle (required), page_size, page_number. Returns: object
search_hacktivityARead-onlyIdempotent
Search publicly disclosed hacktivity reports.
query is an Apache Lucene query. Filters: severity_rating, asset_type,
substate, cwe, cve_ids, reporter, team, total_awarded_amount, disclosed_at,
has_collaboration, disclosed. Example:
severity_rating:critical AND disclosed_at:>=01-01-1970.
sort is latest_disclosable_activity_at, disclosed_at, total_awarded_amount,
or votes. Prefix with - for descending order. The API default is
-latest_disclosable_activity_at.
Inputs: sort, query, page_size, page_number. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 15 tools
Each tool targets a distinct resource and action: program listing/getting, report listing/getting, hacktivity search, scopes/exclusions/weaknesses, and financial tools (balance/earnings/payouts) are clearly separated. The report-intent trio (get_report_intent, list_report_intents, list_report_intent_attachments) also has clear boundaries via verb and object. No two tools appear to do the same thing.
Every tool follows a strict verb_noun pattern (list_programs, get_program, list_my_reports, get_balance, search_hacktivity, etc.) with snake_case throughout. No camelCase or vague single-word verbs are mixed in.
15 tools is within the well-scoped range and each maps to a distinct HackerOne resource family. No redundant or filler tools inflate the count.
Read coverage is strong (programs, reports, scopes, earnings, payouts, hacktivity), but the report-intent surface offers get/list/attachments with no create, update, submit, or delete, which is a notable lifecycle gap. There is also no way to submit or mutate reports, leaving several dead ends for the draft workflow the tools imply.
Related MCP Connectors
Read-only public CVE records, capability metadata, and agent instructions from Hacker Bob.
Public read-only MCP server for HODLXXI agent identity, trust, receipts, and verification.
Read-only MCP security data: check catalogue, public scan status and your own scan reports.
Read-only MCP for AI usage profiles, leaderboards, stats, and docs; no writes or private data.
Related MCP Servers
- AlicenseAqualityCmaintenanceRead-only MCP server for Akamai CDN that enables searching properties, browsing EdgeWorker code, querying DNS zones, inspecting network lists, and translating error codes via natural language.1679 PyPI1MIT
- FlicenseAqualityDmaintenanceA local, read-only MCP server that connects your HackerOne researcher account to Claude Desktop and Claude Code, helping you find targets, analyze program scopes, review reports and earnings, and draft bug reports.174-
- AlicenseAqualityDmaintenanceRead-only MCP server for the Action1 RMM REST API, enabling access to endpoints, missing updates, vulnerabilities, installed software, policies, automations, and reports.21Apache 2.0
- FlicenseBqualityCmaintenanceEnables read-only interaction with HackerOne, providing tools for searching and analyzing reports, exploring programs and scope, accessing earnings, and retrieving public disclosures.25-