Skip to main content
Glama
Cyreslab-AI

Have I Been Pwned MCP Server

by Cyreslab-AI

내가 MCP 서버에 침투당했나요?

대장간 배지

데이터 침해로 인해 계정이나 비밀번호가 손상되었는지 확인하기 위해 Have I Been Pwned API와 통합을 제공하는 MCP(Model Context Protocol) 서버입니다.

특징

이 MCP 서버는 4가지 주요 도구를 제공합니다.

  1. check_email : 데이터 침해 사고에서 이메일 주소가 발견되었는지 확인합니다.

  2. check_password : 데이터 침해로 인해 비밀번호가 노출되었는지 확인합니다(k-익명성 사용)

  3. get_breach_details : 특정 데이터 침해에 대한 자세한 정보를 얻습니다.

  4. list_all_breaches : 도메인별로 필터링하여 시스템의 모든 위반 사항을 나열합니다.

Related MCP server: Shodan-MCP-Server

설치

Smithery를 통해 설치

Smithery를 통해 Claude Desktop에 hibp-mcp-server를 자동으로 설치하려면:

지엑스피1

필수 조건

설정

  1. 이 저장소를 복제하세요:

    git clone https://github.com/Cyreslab-AI/hibp-mcp-server.git
    cd hibp-mcp-server
  2. 종속성 설치:

    npm install
  3. 서버를 빌드하세요:

    npm run build
  4. MCP 설정 파일에서 서버를 구성하세요.

    Claude VSCode 확장의 경우 ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json 에 다음을 추가합니다.

    {
      "mcpServers": {
        "hibp": {
          "command": "node",
          "args": ["/path/to/hibp-mcp-server/build/index.js"],
          "env": {
            "HIBP_API_KEY": "YOUR_API_KEY_HERE"
          },
          "disabled": false,
          "autoApprove": []
        }
      }
    }

    Claude 데스크톱 앱의 경우 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)에 추가하고, 다른 플랫폼의 경우 비슷한 경로에 추가합니다.

사용 예

서버가 구성되면 Claude와 함께 사용하여 데이터 침해를 확인할 수 있습니다.

이메일 확인

User: Has my email address example@gmail.com been pwned?

Claude: Good news! This email address has not been found in any known data breaches.

또는 해당 이메일이 침해로 인해 발견된 경우:

User: Has my email address breached@example.com been pwned?

Claude: ⚠️ This email address was found in 3 data breaches.

Breach details:

1. Adobe (2013-10-04)
   Domain: adobe.com
   Description: In October 2013, 153 million Adobe accounts were breached...
   Compromised data: Email addresses, Password hints, Passwords, Usernames

2. LinkedIn (2012-05-05)
   Domain: linkedin.com
   Description: In May 2016, LinkedIn had 164 million email addresses and passwords exposed...
   Compromised data: Email addresses, Passwords

3. Dropbox (2012-07-01)
   Domain: dropbox.com
   Description: In mid-2012, Dropbox suffered a data breach which exposed...
   Compromised data: Email addresses, Passwords

Recommendations:
- Change your password for these services immediately
- If you used the same password elsewhere, change those too
- Enable two-factor authentication where available
- Consider using a password manager

비밀번호 확인

User: Has the password "password123" been exposed in any breaches?

Claude: ⚠️ This password has been exposed in data breaches 123,456 times!

Recommendations:
- Stop using this password immediately
- Change it on any site where you use it
- Use a unique, strong password for each account
- Consider using a password manager

침해 세부 정보 받기

User: Tell me about the LinkedIn data breach

Claude: # LinkedIn Data Breach

**Date:** 2012-05-05
**Domain:** linkedin.com
**Accounts affected:** 164,611,595
**Verified:** Yes
**Data leaked:** Email addresses, Passwords

**Description:**
In May 2016, LinkedIn had 164 million email addresses and passwords exposed. Originally hacked in 2012, the data remained out of sight until being offered for sale on a dark market site 4 years later. The passwords in the breach were stored as SHA1 hashes without salt, the vast majority of which were quickly cracked in the days following the release of the data.

**Recommendations:**
- If you had an account on this service, change your password
- If you used the same password elsewhere, change those too
- Monitor your accounts for suspicious activity
- Be cautious of phishing attempts that may use this leaked information

모든 위반 사항 나열

User: List all Adobe data breaches

Claude: Found 1 breaches for domain adobe.com:

1. Adobe (2013-10-04)
   Domain: adobe.com
   Accounts affected: 152,445,165
   Compromised data: Email addresses, Password hints, Passwords, Usernames

보안 참고 사항

  • 비밀번호 확인 기능은 Have I Been Pwned API에 전체 비밀번호를 전송하지 않고도 k-익명성을 사용하여 비밀번호를 확인합니다.

  • 비밀번호의 SHA-1 해시의 처음 5자만 API로 전송됩니다.

  • API는 접두사와 일치하는 해시 접미사 목록을 반환하고 검사는 로컬에서 완료됩니다.

API 키 구성

이 서버에서는 대부분의 기능(비밀번호 확인 제외)을 사용하려면 Have I Been Pwned API 키가 필요합니다. haveibeenpwned.com/API/Key 에서 API 키를 받으실 수 있습니다.

API 키는 MCP 설정 구성에서 HIBP_API_KEY 라는 환경 변수로 제공되어야 합니다.

특허

MIT

Available Tools

4 tools
check_emailB

Check if an email address has been found in data breaches

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesEmail address to check
include_unverifiedNoInclude unverified breaches in the results
truncate_responseNoTruncate the response to only include breach names

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool's function but lacks details on permissions, rate limits, data sources, or response format. While it implies a read-only operation, it does not explicitly confirm safety or describe potential errors or limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with zero wasted words. It is front-loaded with the core purpose and efficiently communicates the tool's function without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (3 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks behavioral context and usage guidelines, leaving gaps in understanding how to effectively invoke the tool or interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all parameters. The description does not add any meaning beyond what the schema provides, such as explaining the implications of 'include_unverified' or 'truncate_response' in practical terms. Baseline 3 is appropriate as the schema handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('check') and resource ('email address') with the explicit purpose of determining if it 'has been found in data breaches.' It distinguishes itself from siblings like check_password (different resource) and get_breach_details/list_all_breaches (different scope).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools like check_password for password checks or get_breach_details for detailed breach information, leaving the agent to infer usage context without explicit direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_passwordB

Check if a password has been exposed in data breaches (using k-anonymity)

ParametersJSON Schema
NameRequiredDescriptionDefault
passwordYesPassword to check

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the method ('k-anonymity') but does not explain what this entails operationally, such as whether the password is sent in plaintext or hashed, any rate limits, privacy implications, or what the output looks like. This leaves significant gaps for a security-related tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that is front-loaded with the core purpose. There is no wasted verbiage, and every word contributes to understanding the tool's function, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a security tool with no annotations and no output schema, the description is incomplete. It fails to address critical behavioral aspects like data handling, error conditions, or result interpretation, which are essential for safe and effective use in this context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the parameter 'password' clearly documented in the schema. The description adds no additional meaning beyond what the schema provides, such as format requirements or examples. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Check if a password has been exposed') and the resource ('in data breaches'), with the technical method ('using k-anonymity') distinguishing it from potential siblings like 'check_email' or 'list_all_breaches'. It uses a precise verb and specifies the domain of operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'check_email' or 'get_breach_details'. The description lacks context about prerequisites, such as whether the password needs to be hashed or if there are rate limits, and does not mention any exclusions or complementary tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_breach_detailsC

Get details about a specific data breach

ParametersJSON Schema
NameRequiredDescriptionDefault
breach_nameYesName of the breach to get details for

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states it 'Get details' but doesn't describe what details are returned, if it's a read-only operation, any rate limits, authentication needs, or error conditions. This is a significant gap for a tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose with zero waste. It's appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and no output schema, the description is incomplete. It doesn't explain what details are returned, the format of the response, or any behavioral traits. For a tool that fetches data, this leaves critical gaps in understanding how to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'breach_name' clearly documented. The description doesn't add any meaning beyond the schema (e.g., it doesn't explain what constitutes a valid breach name or provide examples), so it meets the baseline of 3 where the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Get') and resource ('details about a specific data breach'), making it easy to understand what it does. However, it doesn't explicitly differentiate from sibling tools like 'list_all_breaches' (which likely lists breaches vs. getting details for one), so it misses full sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to use it over 'list_all_breaches' or other siblings, nor does it specify prerequisites or exclusions, leaving the agent with no usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_all_breachesC

List all breaches in the system

ParametersJSON Schema
NameRequiredDescriptionDefault
domainNoFilter breaches by domain

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions 'List all breaches' but doesn't describe return format, pagination, rate limits, authentication needs, or whether it's a read-only operation. This is a significant gap for a tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's appropriately sized for a simple tool and front-loads the core purpose immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It doesn't explain what 'breaches' entail, the return format, or behavioral traits. For a tool that likely returns sensitive data, more context on scope and usage is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the 'domain' parameter fully. The description doesn't add any parameter-specific information beyond what's in the schema, such as examples or constraints. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool's purpose ('List all breaches in the system') with a clear verb ('List') and resource ('breaches'), but it's vague about scope and doesn't distinguish from sibling tools like 'get_breach_details'. It doesn't specify whether 'all' means truly comprehensive or limited by some criteria.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_breach_details' or 'check_email'. The description implies a broad listing function but doesn't clarify use cases, prerequisites, or exclusions, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 4 tool updatesv1.0.0
    • First observedcheck_email
    • First observedcheck_password
    • First observedget_breach_details
    • First observedlist_all_breaches

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: checking email breaches, checking password exposures, getting details on a specific breach, and listing all breaches. There is no overlap in functionality, making tool selection straightforward for an agent.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., check_email, check_password, get_breach_details, list_all_breaches). The naming is uniform and predictable, using clear verbs that describe the action and nouns that specify the target.

Tool Count5/5

With 4 tools, the server is well-scoped for its purpose of breach checking and information retrieval. Each tool serves a distinct and necessary function, covering the core operations of the Have I Been Pwned service without being overly sparse or bloated.

Completeness5/5

The tool set provides complete coverage for the domain: it allows checking for email and password exposures, retrieving details on specific breaches, and listing all breaches. There are no obvious gaps, as these tools cover the primary use cases of the service effectively.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server for querying the CVE-Search API. This server provides comprehensive access to CVE-Search, browse vendor and product、get CVE per CVE-ID、get the last updated CVEs.
    6
    103
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    This is a Model Context Protocol (MCP) server that provides access to the Shodan API. It allows you to programmatically query Shodan for information about devices, vulnerabilities, and more.
    2
    -
  • A
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol server providing security vulnerability intelligence tools including CVE lookup, EPSS scoring, CVSS calculation, exploit detection, and Python package vulnerability checking.
    8
    9
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that provides intelligent hashcat integration for Claude Desktop, allowing users to crack hashes, analyze passwords, and perform security assessments directly from Claude conversations.
    25
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Cyreslab-AI/hibp-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server