Skip to main content
Glama

Create Logins

keychain_create_logins

Create multiple login items in a single call to batch credential storage; with continueOnError, process failures individually and return per-item results.

Instructions

Create multiple login items in one call. Use this when you need several independent credentials at once, with the same login-item behavior as create_login. Set continueOnError to keep going after a failure and receive per-item ok/error results; returned items are redacted by default.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYesLogin item payloads to create; each item follows create_login fields and returns its own ok/error result.
continueOnErrorNoContinue after failures and return per-item ok/error results when true.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed24 schema fields changedv0.2.19
    • addedInput schema / properties / continueOnError / description
      Added value: +"Continue after failures and return per-item ok/error results when true."
    • addedInput schema / properties / items / description
      Added value: +"Login item payloads to create; each item follows create_login fields and returns its own ok/error result."
    • addedInput schema / properties / items / items / properties / attachments / description
      Added value: +"Attachments to add to the item."
    • addedInput schema / properties / items / items / properties / attachments / items / description
      Added value: +"Attachment file payload to add to the item."
    • addedInput schema / properties / items / items / properties / attachments / items / properties / contentBase64 / description
      Added value: +"Base64-encoded file bytes, not a filesystem path."
    • addedInput schema / properties / items / items / properties / attachments / items / properties / filename / description
      Added value: +"Visible attachment or send filename stored in Bitwarden metadata."
    • addedInput schema / properties / items / items / properties / collectionIds / description
      Added value: +"Bitwarden collection ids, not folder ids."
    • addedInput schema / properties / items / items / properties / favorite / description
      Added value: +"Mark the item as a favorite when true."
    • addedInput schema / properties / items / items / properties / fields / description
      Added value: +"Custom fields to store on the item. Hidden fields are redacted in summaries."
    • addedInput schema / properties / items / items / properties / fields / items / description
      Added value: +"Custom field stored on the item."
    • addedInput schema / properties / items / items / properties / fields / items / properties / hidden / description
      Added value: +"Hide the field value in summaries when true."
    • addedInput schema / properties / items / items / properties / fields / items / properties / name / description
      Added value: +"Custom field name stored on the item."
    • addedInput schema / properties / items / items / properties / fields / items / properties / value / description
      Added value: +"Custom field value stored on the item."
    • addedInput schema / properties / items / items / properties / folderId / description
      Added value: +"Personal folder id, not an organization collection id."
    • addedInput schema / properties / items / items / properties / name / description
      Added value: +"Display name for the login item."
    • addedInput schema / properties / items / items / properties / notes / description
      Added value: +"Optional free-form notes for the login item."
    • addedInput schema / properties / items / items / properties / organizationId / description
      Added value: +"Bitwarden organization id; used for org-scoped collection operations."
    • addedInput schema / properties / items / items / properties / password / description
      Added value: +"Password to store on the login item."
    • addedInput schema / properties / items / items / properties / totp / description
      Added value: +"TOTP secret or otpauth value for the login item."
    • addedInput schema / properties / items / items / properties / uris / description
      Added value: +"URI entries to store or update on the login item."
    • addedInput schema / properties / items / items / properties / uris / items / description
      Added value: +"URI entry with match semantics for a login item."
    • addedInput schema / properties / items / items / properties / uris / items / properties / match / description
      Added value: +"URI match semantics: domain, host, startsWith, exact, regex, or never; aliases and numeric values are normalized."
    • addedInput schema / properties / items / items / properties / uris / items / properties / uri / description
      Added value: +"URI value to store on the login item."
    • addedInput schema / properties / items / items / properties / username / description
      Added value: +"Login username or email address."
  2. Addedv0.1.20

TDQS

A4.2/5.0
Behavior4/5

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

Annotations provide readOnlyHint=false and destructiveHint=false, indicating writes. The description adds that returned items are redacted by default and that continueOnError yields per-item ok/error results. No contradictions with annotations.

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 two sentences long, front-loaded with the core purpose, and contains no filler. Every sentence earns its place.

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

Completeness4/5

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

For a tool with 2 parameters, no output schema, and high schema coverage, the description covers batch creation, behavioral similarity to create_login, continueOnError, and redaction. Could elaborate on output format, but overall sufficient.

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 coverage is 100%, so the schema already documents parameters well. The description adds behavioral context (e.g., per-item results, redaction) but does not significantly enrich the meaning of individual fields beyond what's in the schema.

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 tool creates multiple login items in one call and references the same behavior as create_login. It distinguishes itself from sibling keychain_create_login by specifying batch creation.

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

Usage Guidelines4/5

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

The description advises using this tool for several independent credentials at once and explains the continueOnError feature for per-item results. While it effectively signals when to use it, it could more explicitly contrast with single-item creation or mention when not to use it.

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