LoginLlama

Ask questions about your login security data: risk scores, blocked logins, Tor, VPN and bot traffic.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
80%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~930Tokens (tool definitions)
~1.7 KBTypical response size
Moderate attention impact (0.73% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "loginllama": {
      "url": "https://loginllama.app/api/v1/mcp"
    }
  }
}

Remote endpoints

https://loginllama.app/api/v1/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_login_stats(days, browser, os, country, device, ...)

Overall login security summary for your team: total checks, average risk score, high-risk count, blocked/failed logins, and bot/Tor/VPN counts. Supports filtering by browser, OS, country, device, user and time window.

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "type": "number",
      "description": "Look back this many days (default 30). Omit for all time."
    },
    "browser": {
      "type": "string",
      "description": "Filter by browser, case-insensitive partial match e.g. \"chrome\"."
    },
    "os": {
      "type": "string",
      "description": "Filter by operating system e.g. \"windows\"."
    },
    "country": {
      "type": "string",
      "description": "Filter by country e.g. \"United States\"."
    },
    "device": {
      "type": "string",
      "description": "Filter by device e.g. \"iphone\"."
    },
    "identity_key": {
      "type": "string",
      "description": "Filter to a single user identifier (email, user id, etc)."
    }
  }
}
🟢get_average_risk_score(days, browser, os, country, device, ...)

Average login risk score (0-10) across matching logins. Use the filters to answer questions like "what is my average login risk score for the chrome browser".

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "type": "number",
      "description": "Look back this many days (default 30). Omit for all time."
    },
    "browser": {
      "type": "string",
      "description": "Filter by browser, case-insensitive partial match e.g. \"chrome\"."
    },
    "os": {
      "type": "string",
      "description": "Filter by operating system e.g. \"windows\"."
    },
    "country": {
      "type": "string",
      "description": "Filter by country e.g. \"United States\"."
    },
    "device": {
      "type": "string",
      "description": "Filter by device e.g. \"iphone\"."
    },
    "identity_key": {
      "type": "string",
      "description": "Filter to a single user identifier (email, user id, etc)."
    }
  }
}
🟢get_login_breakdown(dimension, top_n, days, browser, os, ...)

Group logins by a dimension (browser, os, device, country, or status) and return counts, average risk score and high-risk counts per group. Good for "which browser has the highest risk".

Input Schema

{
  "type": "object",
  "properties": {
    "dimension": {
      "type": "string",
      "enum": [
        "browser",
        "os",
        "device",
        "country",
        "status"
      ],
      "description": "The attribute to group by."
    },
    "top_n": {
      "type": "number",
      "description": "Max groups to return (default 20)."
    },
    "days": {
      "type": "number",
      "description": "Look back this many days (default 30). Omit for all time."
    },
    "browser": {
      "type": "string",
      "description": "Filter by browser, case-insensitive partial match e.g. \"chrome\"."
    },
    "os": {
      "type": "string",
      "description": "Filter by operating system e.g. \"windows\"."
    },
    "country": {
      "type": "string",
      "description": "Filter by country e.g. \"United States\"."
    },
    "device": {
      "type": "string",
      "description": "Filter by device e.g. \"iphone\"."
    },
    "identity_key": {
      "type": "string",
      "description": "Filter to a single user identifier (email, user id, etc)."
    }
  },
  "required": [
    "dimension"
  ]
}
🟢get_recent_logins(limit, status, days, browser, os, ...)

List the most recent login checks (newest first) with risk score, status, location and device. Supports the same filters.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "description": "How many to return (default 25, max 100)."
    },
    "status": {
      "type": "string",
      "description": "Filter by status, e.g. \"valid\" or \"invalid\"."
    },
    "days": {
      "type": "number",
      "description": "Look back this many days (default 30). Omit for all time."
    },
    "browser": {
      "type": "string",
      "description": "Filter by browser, case-insensitive partial match e.g. \"chrome\"."
    },
    "os": {
      "type": "string",
      "description": "Filter by operating system e.g. \"windows\"."
    },
    "country": {
      "type": "string",
      "description": "Filter by country e.g. \"United States\"."
    },
    "device": {
      "type": "string",
      "description": "Filter by device e.g. \"iphone\"."
    },
    "identity_key": {
      "type": "string",
      "description": "Filter to a single user identifier (email, user id, etc)."
    }
  }
}
🟢get_account_usage

Your LoginLlama account usage: remaining API credits for production and staging, and plan name.

Input Schema

{
  "type": "object",
  "properties": {}
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools