Skip to main content
Glama
TheNickSanchez

passkey-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
passkey_listA

List all available passkey entries.

Returns the names of all secret entries stored in the system keychain. Each entry can contain multiple key-value secret pairs.

Returns: List of entry names (e.g., ["slack", "github", "aws"])

passkey_fieldsA

List field names in a passkey entry (without revealing values).

Returns the names of secret fields stored in the specified entry. This allows discovering what secrets are available without exposing the actual secret values.

Args: entry_name: Name of the passkey entry (e.g., "slack")

Returns: List of field names (e.g., ["SLACK_TOKEN", "SLACK_COOKIE"])

Raises: Exception: If entry not found or keychain access fails

passkey_statusA

Show security status of MCP servers across all detected tools.

Analyzes configs for Claude, Gemini, VS Code, Cursor, OpenCode, Windsurf, Cline, and Zed to identify which MCP servers have their secrets secured via passkey and which still have credentials exposed in plaintext.

Returns: Dictionary with per-tool server status and summary counts

passkey_doctorA

Run diagnostics on passkey and MCP configurations.

Checks for common issues including:

  • Config file existence and validity for all detected tools

  • Passkey command availability in PATH

  • Keychain access permissions

  • MCP servers with missing passkey entries

  • MCP servers with exposed secrets

  • (deep=True) entry age analysis and bundle file permissions

Args: deep: Include extended checks (entry age, bundle permissions)

Returns: Dictionary with diagnostic results

passkey_wrap_serverA

Update MCP config files to use passkey wrapper for a server.

Prerequisites: Entry must already exist in passkey keychain.

Args: server_name: Name of the server (must match passkey entry) config_paths: Config files to update (default: all detected configs)

Returns: - configs_updated: List of updated config paths - configs_skipped: List of configs where server not found - errors: Any errors encountered

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation4/5

Each tool has a distinct role: listing entries, exploring fields, showing status, running diagnostics, and updating configs. passkey_status and passkey_doctor both touch on security posture, but descriptions clarify that one is a quick status check while the other is a detailed diagnostic. No two tools are truly interchangeable.

Naming Consistency4/5

All tools share the passkey_ prefix, making the set cohesive. However, the suffix pattern is mixed: passkey_list is verb-like, while passkey_fields, passkey_status, and passkey_doctor are noun-like, and passkey_wrap_server is verb_noun. The prefix provides enough consistency that the naming is still predictable.

Tool Count5/5

Five tools is a well-scoped set for the domain of passkey management for MCP servers. Each tool addresses a clear need without redundancy or bloat, and the count is solidly within the ideal 3-15 range.

Completeness4/5

The tool surface covers the key workflows: discovering entries, inspecting fields, assessing security status, diagnosing issues, and applying the wrapper. Missing operations like creating or deleting passkey entries are likely out of scope since passkey itself manages those. The only minor gap is the lack of an 'unwrap' or 'revert' operation, but the core purpose is well covered.

Maintenance

ActivityMaintained
ResponsivenessNo issues