{"id":51776371,"url":"https://github.com/alpernae/hackerone-mcp","last_synced_at":"2026-07-20T06:03:39.697Z","repository":{"id":361017807,"uuid":"1183378467","full_name":"alpernae/hackerone-mcp","owner":"alpernae","description":"An MCP (Model Context Protocol) server that connects Claude, Claude codex and other mcp clients to the HackerOne Hackers API.","archived":false,"fork":false,"pushed_at":"2026-05-28T20:31:14.000Z","size":25,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-28T22:16:05.257Z","etag":null,"topics":["hackerone","hackerone-api","hackerone-mcp","mcp-server"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alpernae.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-16T14:49:06.000Z","updated_at":"2026-05-28T20:31:18.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/alpernae/hackerone-mcp","commit_stats":null,"previous_names":["alpernae/hackerone-mcp"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/alpernae/hackerone-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alpernae%2Fhackerone-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alpernae%2Fhackerone-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alpernae%2Fhackerone-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alpernae%2Fhackerone-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alpernae","download_url":"https://codeload.github.com/alpernae/hackerone-mcp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alpernae%2Fhackerone-mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35675234,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"ssl_error","status_checked_at":"2026-07-20T02:08:09.736Z","response_time":111,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hackerone","hackerone-api","hackerone-mcp","mcp-server"],"created_at":"2026-07-20T06:03:38.863Z","updated_at":"2026-07-20T06:03:39.674Z","avatar_url":"https://github.com/alpernae.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HackerOne MCP Server\n\nAn MCP (Model Context Protocol) server that connects Claude, Codex, and other MCP clients to the HackerOne Hackers API.\n\n## Tools Available\n\n21 tools cover the complete documented Hacker API surface:\n\n- Hacktivity search\n- Reports: list, get, and create\n- Payments: balance, earnings, and payouts\n- Programs: list, get, structured scopes, scope exclusions, and weaknesses\n- Report intents: list, get, create, update, delete, submit, and attachment management\n\n---\n\n## Setup\n\n### 1. Install dependencies\n\n```bash\ncd hackerone-mcp\nnpm install\n```\n\n### 2. Get your HackerOne API credentials\n\n1. Go to https://hackerone.com/settings/api_token/edit\n2. Create a new API token\n3. Note your **username** and the generated **token**\n\n---\n\n## Configuration\n\n### Claude Desktop\n\nEdit your Claude Desktop config file:\n\n- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`\n- **Windows:** `%APPDATA%\\Claude\\claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"hackerone\": {\n      \"command\": \"node\",\n      \"args\": [\"/absolute/path/to/hackerone-mcp/index.js\"],\n      \"env\": {\n        \"HACKERONE_API_USERNAME\": \"your_api_token_identifier\",\n        \"HACKERONE_API_TOKEN\": \"your_api_token\"\n      }\n    }\n  }\n}\n```\n\nRestart Claude Desktop after saving.\n\n---\n\n### Claude Code (CLI)\n\nRun once to add the MCP server to your Claude Code config:\n\n```bash\nclaude mcp add hackerone \\\n  -e HACKERONE_API_USERNAME=your_api_token_identifier \\\n  -e HACKERONE_API_TOKEN=your_api_token \\\n  -- node /absolute/path/to/hackerone-mcp/index.js\n```\n\nOr set credentials as shell environment variables first:\n\n```bash\nexport HACKERONE_API_USERNAME=your_api_token_identifier\nexport HACKERONE_API_TOKEN=your_api_token\n\nclaude mcp add hackerone -- node /absolute/path/to/hackerone-mcp/index.js\n```\n\nVerify it's registered:\n```bash\nclaude mcp list\n```\n\n---\n\n### Codex CLI\n\nRun once to add the MCP server to Codex:\n\n```bash\ncodex mcp add hackerone \\\n  --env HACKERONE_API_USERNAME=your_api_token_identifier \\\n  --env HACKERONE_API_TOKEN=your_api_token \\\n  -- node /absolute/path/to/hackerone-mcp/index.js\n```\n\nOr configure it directly in `config.toml`:\n\n- **macOS/Linux:** `~/.codex/config.toml`\n- **Windows:** `%USERPROFILE%\\.codex\\config.toml`\n\n```toml\n[mcp_servers.hackerone]\ncommand = \"node\"\nargs = [\"/absolute/path/to/hackerone-mcp/index.js\"]\n\n[mcp_servers.hackerone.env]\nHACKERONE_API_USERNAME = \"your_api_token_identifier\"\nHACKERONE_API_TOKEN = \"your_api_token\"\n```\n\nVerify it's registered:\n\n```bash\ncodex mcp list\n```\n\nIn Codex TUI, run `/mcp` to view active MCP servers.\n\n---\n\n### Other MCP Clients (generic stdio)\n\nPass the environment variables when launching:\n\n```bash\nHACKERONE_API_USERNAME=your_api_token_identifier \\\nHACKERONE_API_TOKEN=your_api_token \\\nnode /path/to/hackerone-mcp/index.js\n```\n\nOr configure your client's MCP settings with:\n- **command:** `node`\n- **args:** `[\"/path/to/hackerone-mcp/index.js\"]`\n- **env:** `{ \"HACKERONE_API_USERNAME\": \"...\", \"HACKERONE_API_TOKEN\": \"...\" }`\n\n---\n\n## Example prompts\n\nOnce connected, you can ask your MCP client (Claude, Codex, etc.) things like:\n\n- *\"List my HackerOne reports\"*\n- *\"Search Hacktivity for disclosed critical reports\"*\n- *\"Get the full details of report 12345\"*\n- *\"What's in scope for the nodejs program?\"*\n- *\"Show me the policy and bounty info for the security program\"*\n- *\"List all programs I have access to\"*\n\n---\n\n## Security Notes\n\n- **Never hardcode** your API token in the source files\n- Always use environment variables or your client's secrets manager\n- Your API token provides full access to your HackerOne account — treat it like a password\n\n---\n\n## Reliability settings (optional)\n\nIf you see intermittent failures (timeouts, 429 rate limits, transient 5xx), you can tune these environment variables:\n\n- `HACKERONE_TIMEOUT_MS` (default: `20000`) — per-request timeout\n- `HACKERONE_MAX_RETRIES` (default: `2`) — retries for 429/5xx and transient network errors\n- `HACKERONE_API_BASE` (default: `https://api.hackerone.com/v1`) — API base URL\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falpernae%2Fhackerone-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falpernae%2Fhackerone-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falpernae%2Fhackerone-mcp/lists"}