Skip to main content
Glama

Get URI

keychain_get_uri
Read-only

Retrieve the first login URI from a Bitwarden vault item by searching with a name or ID. Use an exact item ID to avoid ambiguous matches and get a non-secret URI result.

Instructions

Get the first login URI matched by bw get uri for a search term. Terms can be names, ids, or other bw-supported selectors and may be ambiguous, so use an exact item id when possible. URI values are returned as non-secret scalar results.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
termYesSearch term or exact item id; exact ids avoid ambiguous bw lookups.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.2.35
    • removedOutput schema / properties / result / properties / value / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / result / properties / value / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  2. Changed2 schema fields changedv0.2.19
    • addedInput schema / properties / term / description
      Added value: +"Search term or exact item id; exact ids avoid ambiguous bw lookups."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "result": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "kind": {
      +          "const": "uri",
      +          "type": "string"
      +        },
      +        "revealed": {
      +          "type": "boolean"
      +        },
      +        "value": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "required": [
      +        "kind",
      +        "value",
      +        "revealed"
      +      ],
      +      "type": "object"
      +    }
      +  },
      +  "required": [
      +    "result"
      +  ],
      +  "type": "object"
      +}
  3. Addedv0.1.20

TDQS

A4.7/5.0
Behavior5/5

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

Goes beyond the readOnlyHint annotation by disclosing that only the first login URI is returned, that the match may be ambiguous, and that URI values are non-secret scalar results. This gives useful behavioral expectations without contradicting the annotation.

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?

Three tight sentences with no filler. The core behavior is front-loaded, the ambiguity warning is directly actionable, and the output-type note is the last sentence. Every sentence earns its place.

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

Completeness5/5

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

For a single-parameter read-only tool with an output schema, the description covers what the tool does, how to select the term, the ambiguity risk, and the nature of the result. Nothing important is missing for an agent to invoke it correctly.

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

Parameters4/5

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

Schema coverage is 100%, so the description does not need to re-document the parameter. It adds value by clarifying that the term may be a name, id, or bw-supported selector and that ambiguity is possible, reinforcing the exact-id guidance.

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?

States a specific verb and resource: it retrieves the first login URI matched by 'bw get uri' for a search term. This clearly distinguishes it from sibling tools like keychain_get_item, keychain_get_notes, or keychain_get_username.

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?

Provides clear context on how to invoke the tool: terms can be names, ids, or other bw selectors, and exact item ids should be preferred to avoid ambiguity. It does not explicitly name alternatives or exclusion conditions, but the purpose is specific enough that an agent can tell when this tool applies.

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