Skip to main content
Glama
bitwarden

Bitwarden MCP Server

Official
by bitwarden

Bitwarden MCP Server

A Model Context Protocol (MCP) server that provides AI assistants with secure access to Bitwarden password manager functionality through two complementary interfaces:

  • Vault Management and CLI tools via Bitwarden CLI

  • Organization Administration via Bitwarden Public API

npm version

WARNING

This MCP server is designed exclusively for local use and must never be hosted publicly or exposed over a network.

When you grant an AI assistant access to this server, you are providing the ability to:

  • Read vault items including passwords, secure notes, and sensitive data

  • Create, modify, and delete vault items

  • Access organization secrets and administrative functions

  • Expose credentials and vault contents through AI responses

You are responsible for:

  • Ensuring this server runs only on your local machine or self-hosted environment

  • Understanding what data you're exposing to your AI assistant

  • Being aware that AI responses may inadvertently reveal sensitive information

  • Using appropriate AI providers (consider self-hosted or local LLMs for sensitive data)

  • Never sharing configuration files containing session tokens or API credentials

  • Monitoring logs for unexpected activity

Never:

  • Deploy this server to cloud hosting, containers, or public servers

  • Share your MCP configuration files with others

  • Use this server over untrusted networks

  • Grant access to untrusted AI clients or services

Use this tool responsibly and at your own risk.

What is MCP?

The Model Context Protocol is an open standard that enables AI assistants to securely interact with local tools and services. This server exposes Bitwarden's vault management and organization administration capabilities to MCP-compatible AI clients like Claude Desktop.

Related MCP server: Bitbucket MCP

Features

Vault Management and CLI tools (CLI)

  • Session Management: Unlock vault via native OS password dialog, lock vault, sync with server, check status

  • Item Operations: List, retrieve, create, edit, delete, restore vault items

    • Supports logins, secure notes, cards, and identities

    • Advanced filtering by URL, folder, collection, or trash status

  • Folder Management: Organize items with folders

  • Attachments: Upload, download, and manage file attachments

  • Password Tools: Generate secure passwords and retrieve TOTP codes

  • Bitwarden Send: Create and manage secure ephemeral shares (text/file)

  • Organization Items: Move items to organizations, manage collections

  • Device Approval: Approve or deny new device login requests

  • Member Management: Confirm organization member registrations

Organization Administration (API)

  • Collections: Create, update, delete, and manage collection permissions

  • Members: Invite, update roles, remove members, manage group assignments

  • Groups: Create role-based access groups and assign members

  • Policies: Configure and enforce organization security policies

  • Audit Logs: Retrieve organization event history

  • Subscriptions: View and update organization billing information

  • Bulk Import: Import users and groups from external systems

Quick Start

Prerequisites

For Vault Management and CLI tools:

  • Bitwarden CLI installed (ex. npm install -g @bitwarden/cli)

  • Node.js 22+

  • Bitwarden account

For Organization Administration:

  • Node.js 22+

  • Bitwarden Teams or Enterprise organization

  • Organization owner or admin permissions

Configuration

WARNING

The configuration files below will contain sensitive credentials that grant access to your Bitwarden vault. Keep these files secure, never commit them to version control, and never share them with others. Ensure your MCP client (e.g., Claude Desktop) is configured to run the server locally only.

Add to your Claude Desktop configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "bitwarden": {
      "command": "npx",
      "args": ["-y", "@bitwarden/mcp-server"],
      "env": {
        "BW_SESSION": "your-session-token-here"
      }
    }
  }
}

Get your session token:

bw login
bw unlock --raw

To enable organization administration features, add API credentials:

{
  "mcpServers": {
    "bitwarden": {
      "command": "npx",
      "args": ["-y", "@bitwarden/mcp-server"],
      "env": {
        "BW_SESSION": "your-session-token-here",
        "BW_CLIENT_ID": "organization.your-client-id",
        "BW_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

Get organization API credentials:

  1. Go to your Bitwarden Web Vault

  2. Navigate to your organization → Settings → My Organization

  3. Scroll to "API Key" section

  4. Click "View API Key" and authenticate

Option 2: Locally Built and Referenced

Requires that this repository be checked out locally. Once that's done:

npm install
npm run build

Then reference the built dist/index.js file from Claude desktop:

{
  "mcpServers": {
    "bitwarden": {
      "command": "node",
      "args": ["local/path/to/mcp-server/dist/index.js"],
      "env": {
        "BW_SESSION": "your-session-token-here"
      }
    }
  }
}

Option 3: Other MCP Clients

Any MCP-compatible client can connect to this server via stdio transport. Refer to your client's documentation for configuration details.

Environment Variables

Variable

Required For

Description

Default

BW_SESSION

CLI operations

Session token from bw unlock --raw

-

BW_CLIENT_ID

API operations

Organization API client ID

-

BW_CLIENT_SECRET

API operations

Organization API client secret

-

BW_API_BASE_URL

API operations

Bitwarden API base URL

https://api.bitwarden.com

BW_IDENTITY_URL

API operations

OAuth2 identity server URL

https://identity.bitwarden.com

BW_ALLOWED_DIRECTORIES

File operations

Comma-separated list of allowed file directories. Required for file-based tools (e.g. create_file_send, create_attachment); when unset, all file operations are rejected.

-

BW_CLI_PATH

CLI operations

Absolute path to the bw executable or its JS entry point. Only needed when the CLI cannot be auto-located on PATH (e.g. it is not on PATH, or a non-standard global install layout).

auto-resolved from PATH

Note: For self-hosted Bitwarden instances, set BW_API_BASE_URL and BW_IDENTITY_URL to your server URLs.

Note: BW_CLIENT_ID and BW_CLIENT_SECRET are the environment variable names read by the MCP server. If you are using bw login --apikey in a startup script, the Bitwarden CLI reads BW_CLIENTID and BW_CLIENTSECRET (no underscores between words) for the same credentials. See the Bitwarden CLI documentation.

Usage Examples

Once configured, you can interact with Bitwarden through your AI assistant:

Vault:

  • "List all my login items"

  • "Get my credentials for github"

  • "Create a new secure note for my home WiFi information"

  • "Generate a 32-character password and save it for apple.com"

  • "Create a Send link for this file"

Organization Administration:

  • "List all members in my organization"

  • "Invite user@example.com as an organization admin"

  • "Create a 'Development Team' collection"

  • "Show me the last 100 audit log events"

  • "What security policies are enabled?"

Available Tools

Vault Management and CLI Tools

  • Session: lock, unlock, sync, status

  • Retrieval: list, get

  • Items: create_item, edit_item, delete, restore

  • Folders: create_folder, edit_folder

  • Attachments: create_attachment

  • Organizations: create_org_collection, edit_org_collection, edit_item_collections, move, confirm

  • Device Approval: device_approval_list, device_approval_approve, device_approval_approve_all, device_approval_deny, device_approval_deny_all

  • Send: create_text_send, create_file_send, list_send, get_send, edit_send, delete_send, remove_send_password

  • Utilities: generate

Organization Administration

  • Collections: list_org_collections, get_org_collection, update_org_collection, delete_org_collection

  • Members: list_org_members, get_org_member, invite_org_member, update_org_member, remove_org_member, reinvite_org_member, get_org_member_groups, update_org_member_groups

  • Groups: list_org_groups, get_org_group, create_org_group, update_org_group, delete_org_group, get_org_group_members, update_org_group_members

  • Policies: list_org_policies, get_org_policy, update_org_policy

  • Events: get_org_events

  • Subscriptions: get_org_subscription, update_org_subscription

  • Import: import_org_users_and_groups

Development

Setup

git clone https://github.com/bitwarden/mcp-server.git
cd mcp-server
npm install

Commands

npm run build        # Compile TypeScript
npm test             # Run test suite
npm run lint         # Check code style
npm run lint:fix     # Auto-fix linting issues
npm run inspect      # Test with MCP Inspector

Testing with MCP Inspector

The MCP Inspector provides an interactive testing environment:

npm run build
npm run inspect

This opens a web interface where you can:

  • Browse available tools

  • Test tool execution with custom inputs

  • View request/response payloads

  • Debug tool behavior

Best Practices

  • Store credentials securely (use system keychains or environment managers)

  • Rotate session tokens regularly

  • Review audit logs periodically for suspicious activity

  • Never commit credentials to version control

Testing

The project includes Jest unit tests covering validation, CLI commands, and core functionality.

# Run all tests
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage
npm test -- --coverage

# Run specific test file
npm test validation.spec.ts

# Run tests matching a pattern
npm test -- --testNamePattern="validation"

Debugging

Enable debug logging by setting environment variables:

export DEBUG=bitwarden:*
export NODE_ENV=development

Security Considerations

  • Never commit sensitive credentials (BW_SESSION, BW_CLIENT_ID, BW_CLIENT_SECRET)

  • Use environment variables for all sensitive configuration

  • Validate all inputs using Zod schemas (already implemented)

  • Test with non-production data when possible

  • Monitor API usage through your organization's audit logs

  • Understand the security and privacy impacts of exposing sensitive vault data to LLM and AI tools. Using a self-hosted or local LLM may be appropriate, for example.

Troubleshooting

CLI Issues

  • Vault is locked

    • Ask your AI assistant to run the unlock tool — the MCP server will open a native OS password dialog for you to enter your master password. The password is never sent through the MCP protocol or seen by the LLM.

    • On headless machines (no DISPLAY on Linux, no GUI session), the unlock tool will refuse to run. Use the manual fallback:

      bw unlock --raw
      # Copy the token and update BW_SESSION in your MCP config
  • Session key is invalid

    • Session tokens expire after inactivity

    • Ask your AI assistant to run the unlock tool to refresh the session in-place, or run bw unlock --raw manually and update your MCP configuration with the new token

Unlocking the vault interactively

The unlock tool lets your AI assistant prompt you for your master password without that password ever crossing the MCP channel.

  • The tool takes no input parameters. It cannot be invoked with a password argument.

  • When called, the server launches a native OS password dialog:

    • macOS: osascript secure input dialog

    • Linux: zenity --password (falls back to kdialog --password)

    • Windows: PowerShell WinForms password dialog (masked input)

  • The password is passed to bw unlock --raw via the --passwordenv flag with a randomized one-shot environment variable. It never appears in process arguments, in the MCP protocol, or in the LLM's context.

  • The LLM only ever sees "Vault unlocked successfully." or a sanitized failure message (e.g. "Invalid master password.", "Unlock cancelled.").

  • If you are in a non-interactive environment, the tool will refuse to run and return a fixed message directing you to the bw unlock --raw manual flow.

API Issues

  • Invalid client credentials

    • Verify BW_CLIENT_ID starts with organization.

    • Ensure BW_CLIENT_SECRET is correct

    • Check that API keys haven't been rotated in the Admin Console

  • 403 Forbidden

    • Verify you have organization owner or admin permissions

    • Some operations require specific roles (e.g., managing members)

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

Available Tools

59 tools
confirmA

Confirm an invited organization member who has accepted their invitation

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesMember ID (user identifier) to confirm
organizationIdYesOrganization ID

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits like effect on member status, required permissions, or side effects. It simply restates the action.

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?

Single sentence, 12 words, front-loaded with key action and context. No superfluous information.

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?

For a simple tool with two parameters and no output schema, the description is adequate but lacks details on expected outcomes or prerequisites like invitation acceptance status.

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% with clear descriptions for both parameters. The tool description adds context but no additional parameter-level meaning beyond 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 action (confirm), the resource (invited organization member), and the context (who has accepted their invitation), distinguishing it from sibling tools like invite_org_member.

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

Usage Guidelines3/5

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

The description implies usage after the member has accepted, but does not explicitly state when not to use or suggest alternatives such as reinvite or remove.

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

create_attachmentB

Attach a file to an existing vault item

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesID of the vault item to attach the file to
filePathYesPath to the file to attach

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose side effects, permissions required, or any behavioral traits beyond the basic action. For a mutation tool, more context is needed.

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

Conciseness4/5

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

The description is a single, front-loaded sentence with no unnecessary words. It is concise but could include more detail without harming conciseness.

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 too minimal. It lacks details about return values, required permissions, or how the attachment is processed, leaving gaps for an agent.

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 already describes both parameters with clear descriptions. The tool description adds no additional meaning beyond the schema, so baseline 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 action (Attach) and the resource (a file to an existing vault item). It is specific and distinct from sibling tools like create_item or create_file_send.

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

Usage Guidelines3/5

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

Usage is implied by the description, but there is no explicit guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites.

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

create_file_sendB

Create a new Bitwarden Send for securely sharing a file

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the Send
notesNoPrivate notes (not shared with recipient)
filePathYesPath to the file to share
passwordNoAccess password for the Send
deletionDateNoDeletion date in ISO 8601 format
expirationDateNoExpiration date in ISO 8601 format
maxAccessCountNoMaximum number of times the Send can be accessed

TDQS

B3.4/5.0
Behavior2/5

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

No annotations exist, so the description carries full burden. It mentions 'securely sharing' but does not disclose required permissions, whether the operation is reversible, or any side effects. Lacks depth for a creation tool.

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

Conciseness4/5

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

Single sentence with no unnecessary words. However, it could be slightly restructured to include key parameter information or usage context without becoming verbose.

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?

With 7 parameters (2 required) and no output schema or annotations, the description is adequate but misses opportunity to explain complexity like expiration constraints, access limits, or security 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?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema; it does not elaborate on how parameters like filePath or password are used.

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 verb (Create), resource (Bitwarden Send), and purpose (securely sharing a file). It distinguishes from create_text_send by specifying 'file'.

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

Usage Guidelines3/5

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

The description implies usage for file sharing via Send but provides no explicit guidance on when to use this tool versus siblings like create_text_send or create_attachment. No context on prerequisites or comparisons.

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

create_folderB

Create a new folder in your vault

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the folder

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description is fully responsible for disclosing behavior. It only states 'create', implying a write operation, but lacks details on side effects (e.g., overwriting), permissions needed, or error handling.

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

Conciseness4/5

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

The description is concise, one sentence with essential information. It is front-loaded and to the point, though it could be expanded slightly without losing conciseness.

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?

For a simple tool with one parameter and no output schema, the description is minimally complete. However, it lacks behavioral context, which is important for a mutation tool.

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% with one parameter 'name' having a description. The tool description adds no additional meaning beyond what the schema already provides, so baseline 3 applies.

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?

Description clearly states verb 'create', resource 'folder', and location 'in your vault'. It distinguishes from sibling tools that create different entities like attachments or items.

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

Usage Guidelines3/5

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

No explicit when-to-use or when-not-to-use guidance is provided. The tool's purpose is inferred but not contrasted with alternatives like edit_folder.

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

create_itemB

Create a new item (login, secure note, card, or identity) in your vault

ParametersJSON Schema
NameRequiredDescriptionDefault
cardNoCard information (required for type 3 - card items)
nameYesName of the item
typeYesType of item to create (1: Login, 2: Secure Note, 3: Card, 4: Identity)
loginNoLogin information (required for type 1 - login items)
notesNoNotes for the item
folderIdNoFolder ID to assign the item to
identityNoIdentity information (required for type 4 - identity items)
secureNoteNoSecure note information (required for type 2 - secure note items)

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but only says 'Create a new item'. It does not disclose potential side effects, authentication needs, or what happens on duplicate names. The minimal description leaves the agent without critical behavioral context.

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

Conciseness4/5

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

The description is concise (one sentence) and directly states the purpose. However, it could be slightly improved by front-loading the type parameter, but it is not verbose.

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 (8 parameters, nested objects, conditional requirements), the description is too minimal. It does not explain that certain nested objects are required based on type, nor does it mention the output. No output schema, so description should provide more 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?

Schema description coverage is 100%, so the description adds no novel meaning beyond what is already in the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

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 a new item and lists the supported types (login, secure note, card, identity). It uses a specific verb and resource, and distinguishes from sibling tools like create_folder by specifying 'item'.

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 edit_item. There is no mention of prerequisites or context for use.

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

create_org_collectionC

Create a new organization collection

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the collection
groupsNoArray of group IDs with access to this collection
externalIdNoExternal ID for the collection (optional)
organizationIdYesOrganization ID

TDQS

C2.6/5.0
Behavior1/5

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

No annotations are provided, so the description carries full responsibility for behavioral disclosure. It completely fails to mention any behavioral traits such as idempotency, side effects (e.g., whether it modifies other resources), permission requirements, error handling, or what happens on duplicate names. For a creation tool, this is a critical gap.

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

Conciseness3/5

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

The description is a single sentence, which is concise. However, it is under-specified for the complexity of the tool. It sacrifices important details for brevity. Ideally, it could be front-loaded with the core purpose and then expand slightly on key aspects without becoming verbose.

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 4 parameters, no output schema, and no annotations, the description is incomplete. It does not explain the overall workflow, return value (e.g., ID of new collection), or any constraints. Sibling tools and context signals suggest a larger system, but the description offers no integration 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?

Schema description coverage is 100%, so each parameter is already documented in the schema. The description adds no extra meaning about the parameters, such as their relationships or usage notes. At baseline, 3 is appropriate since the schema does its job, but the description could have provided complementary context.

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 'Create a new organization collection' is a clear verb+resource pair. It distinguishes well from sibling tools like update_org_collection, delete_org_collection, and list_org_collections by specifying the resource type. However, it is very brief and lacks any elaboration on what creating a collection entails.

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. There is no mention of prerequisites, comparison with update_org_collection, or any context about the organizational hierarchy. The tool is one of many creation tools, and the description offers no decision-making support.

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

create_org_groupC

Create a group

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the group
externalIdNoExternal ID for the group (optional)
collectionsNoArray of collection IDs the group has access to

TDQS

C2.4/5.0
Behavior2/5

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

No annotations provided, so description must disclose side effects. Only states 'Create a group' with no mention of required permissions, mutability, or potential impacts (e.g., group membership, access changes).

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

Conciseness2/5

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

Extremely concise (one sentence) but lacks structure and key information. It is under-specified, making it less helpful for an AI agent to understand usage context.

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 tool has 3 parameters (with nested collections), no output schema, and no annotations, the description fails to provide sufficient context about the creation process, return value, or prerequisites. It is incomplete for a mutation tool.

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?

Input schema covers 100% of parameters with descriptions. The tool description adds no extra information about parameters beyond the schema, which is standard but does not improve clarity.

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 'Create a group', which is clear but generic. It does not specify 'organization group' to distinguish from other group creation tools like 'create_org_collection' or 'create_item'.

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 on when to use this tool versus siblings like 'update_org_group' or 'create_org_collection'. The description lacks context for appropriate usage.

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

create_text_sendB

Create a new Bitwarden Send for securely sharing text

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the Send
textYesText content to share
notesNoPrivate notes (not shared with recipient)
hiddenNoHide text content (requires visibility toggle)
passwordNoAccess password for the Send
deletionDateNoDeletion date in ISO 8601 format
expirationDateNoExpiration date in ISO 8601 format
maxAccessCountNoMaximum number of times the Send can be accessed

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 should disclose behavioral traits. It only states a generic creation action without detailing mutability, permissions, or side effects.

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?

Single sentence, front-loaded with the core action. No fluff or redundancy.

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 8 parameters and no output schema or annotations, the description is too brief. Lacks context on success criteria, side effects, or typical usage flow.

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 baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions.

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 action ('Create'), the resource ('Bitwarden Send'), and the context ('securely sharing text'). It distinguishes from sibling 'create_file_send' by specifying 'text'.

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 on when to use this tool versus alternatives like create_file_send. No mention of prerequisites, conditions, or 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.

deleteC

Delete an item from your vault

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the object to delete
objectYesType of object to delete
permanentNoPermanently delete the item instead of moving to trash

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries full responsibility for behavioral disclosure. It only states 'Delete an item from your vault,' failing to mention that deletion can be permanent or moved to trash (via the permanent parameter), required permissions, or impact on associated data. The scope of 'vault' is also misleading for org-collection deletion.

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

Conciseness3/5

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

The description is a single sentence, which is concise but slightly misleading by using 'item' instead of covering all object types (e.g., attachment, folder, org-collection). It lacks essential context, making it only adequately minimal.

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 absence of annotations and output schema, the description is severely lacking. It does not explain return values, side effects, prerequisites, or the distinction between permanent and trash deletion, leaving significant gaps for an agent.

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% coverage with descriptive parameters and enum values. The description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

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 action (delete) and resource (item from vault), but it does not differentiate from sibling tools like delete_org_collection or delete_send, which have overlapping functionality.

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 the more specific delete alternatives (e.g., delete_org_collection) or when not to use it. No exclusions or context are given.

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

delete_org_collectionC

Delete a collection

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionIdYesID of the collection

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, and the description only states the action without disclosing behavioral traits like irreversibility, required permissions, or side effects. The agent is left uninformed about consequences.

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

Conciseness3/5

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

The description is extremely concise but lacks informative content. It is not detailed enough to be highly valuable, though it is not verbose or wasteful.

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 simplicity of a deletion operation with one parameter, the description is minimally complete but misses crucial context such as what happens post-deletion, potential restrictions, or relationships to other objects.

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 covers 100% of parameters and includes a description for collectionId. The tool description adds no additional meaning beyond the schema, which is adequate for a single parameter.

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 'Delete a collection' clearly states the action and resource, but does not differentiate from sibling tools like delete_org_group or delete_send. It is specific enough to convey the primary function.

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, such as edit_org_collection or update_org_collection. There are no contextual cues or prerequisites mentioned.

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

delete_org_groupC

Delete a group

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdYesID of the group

TDQS

C2.8/5.0
Behavior2/5

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

The description is minimal and does not disclose that deletion is irreversible, nor does it mention any side effects (e.g., removing group membership, deleting associated data). No annotations are present to compensate.

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

Conciseness3/5

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

The description is extremely concise (3 words), but it sacrifices completeness. It is front-loaded, but every sentence should earn its place; here, the single sentence is insufficient.

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?

For a deletion tool with no output schema and no annotations, the description should provide context about consequences, permissions, and behavior. It lacks these details, making it incomplete.

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 fully describes the single parameter 'groupId' with 'ID of the group'. The description adds no additional meaning beyond the schema, but the parameter is straightforward. Baseline score of 3 applies.

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 'Delete a group' clearly states the action and resource, and the tool name specifies it's for org groups. It distinguishes from sibling tools like 'delete_org_collection' or 'delete_send', though it could be more explicit.

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 'edit_org_group' or 'update_org_group'. No prerequisites or conditions are mentioned.

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

delete_sendC

Delete a Bitwarden Send

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the Send to delete

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It only indicates mutation ('delete') but does not specify irreversibility, required permissions, or side effects. Agents lack critical safety information.

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

Conciseness4/5

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

The description is a single, efficient sentence with no wasted words. It is appropriately front-loaded, though it could benefit from a bit more structure.

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 simplicity (one required parameter, no output schema), the description is minimally adequate. However, it omits critical context such as permanence of deletion, which is important for a destructive operation.

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% with a single parameter described as 'ID of the Send to delete'. The description adds no additional meaning beyond the schema, earning the baseline score.

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 'Delete a Bitwarden Send' clearly states the verb (delete) and resource (Send), distinguishing it from siblings like create, edit, get, and list. However, it is essentially a restatement of the tool name without additional specificity.

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 (e.g., remove_send_password for removing a password, or delete for other resources). The description lacks explicit context or exclusions.

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

device_approval_approveB

Approve a pending device authorization request

ParametersJSON Schema
NameRequiredDescriptionDefault
requestIdYesDevice approval request ID
organizationIdYesOrganization ID

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description is the sole source of behavioral information. It fails to disclose what happens upon approval (e.g., device authorized), reversibility, or required permissions.

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

Conciseness4/5

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

The description is a single, front-loaded sentence with no wasted words. It is concise but could benefit from a bit more context without losing efficiency.

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 simple tool with no output schema, the description is minimal. It lacks information on return values, error conditions, or post-approval state, making it incomplete for an agent.

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 baseline is 3. The description adds no additional meaning beyond the schema's parameter descriptions.

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 verb 'Approve' and the resource 'pending device authorization request'. It distinguishes itself from sibling tools like device_approval_approve_all by implying single request approval.

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 vs. alternatives like device_approval_approve_all or device_approval_deny. No prerequisites or context are mentioned.

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

device_approval_approve_allB

Approve all current pending device authorization requests

ParametersJSON Schema
NameRequiredDescriptionDefault
organizationIdYesOrganization ID

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It only states the action without explaining side effects, permissions required, reversibility, rate limits, or what happens after approval. For a mutation tool, this is insufficient.

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

Conciseness4/5

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

The description is a single sentence that is appropriately front-loaded. It is concise, but could potentially add more useful context without becoming verbose.

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?

The tool is simple with one required parameter and no output schema, yet the description lacks essential details such as return value (e.g., success count or status), error handling, or any post-approval behavior. This is insufficient for full contextual completeness.

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% with the organizationId parameter described as 'Organization ID' in the schema. The tool description adds no further meaning about the parameter, but the schema already provides sufficient clarity. Baseline of 3 applies.

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?

Description clearly states the action (approve), resource (pending device authorization requests), and scope (all current pending). It effectively distinguishes from sibling tools like device_approval_approve (single approval) and device_approval_deny_all (deny variant).

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

Usage Guidelines3/5

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

Description implies the tool is for bulk approval of pending requests, but provides no explicit guidance on when to use it versus alternatives like device_approval_approve or device_approval_deny_all. No exclusion criteria or context is provided.

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

device_approval_denyB

Deny a pending device authorization request

ParametersJSON Schema
NameRequiredDescriptionDefault
requestIdYesDevice approval request ID
organizationIdYesOrganization ID

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose behavioral traits such as side effects, required permissions, or confirmation prompts, leaving the agent without important context for a mutation operation.

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

Conciseness3/5

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

The description is very concise at one sentence, but it is too minimal, lacking any structure or additional context that would justify its brevity over being under-specified.

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 simplicity (2 parameters, no output schema), the description states the core action adequately but does not address how it differs from sibling tools like deny_all or what the result entails, leaving some gaps.

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% for both parameters, and the description adds no additional meaning beyond what the schema already provides, resulting in a baseline score.

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 verb 'Deny' and the resource 'pending device authorization request', distinguishing it from sibling tools like device_approval_approve and device_approval_deny_all.

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

Usage Guidelines3/5

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

The description provides the basic action but lacks explicit guidance on when to use this tool versus alternatives, such as device_approval_deny_all, or any prerequisites like ensuring the request is pending.

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

device_approval_deny_allB

Deny all pending device authorization requests

ParametersJSON Schema
NameRequiredDescriptionDefault
organizationIdYesOrganization ID

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It does not mention whether the action is irreversible, requires admin permissions, or what happens to the denied requests (e.g., deletion vs. marking). This lack of detail could mislead an agent.

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

Conciseness4/5

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

The description is a single, concise sentence that front-loads the action. However, it could benefit from a brief note on scope or impact without becoming verbose.

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 simple 1-parameter input and no output schema, the description is minimal but functional. However, it lacks behavioral context (e.g., destructiveness, permissions) that would make it fully complete for a safe invocation.

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 only parameter, 'organizationId', has a schema description ('Organization ID') for 100% coverage. The tool description adds no additional meaning beyond the schema, so baseline 3 applies.

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 'Deny all pending device authorization requests', specifying a specific action ('Deny all') and resource ('pending device authorization requests'). It distinguishes from siblings like 'device_approval_deny' (single) and 'device_approval_approve_all' (approve all).

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

Usage Guidelines3/5

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

The description only states what the tool does without guidance on when to use it versus siblings like 'device_approval_deny' or 'device_approval_approve_all'. No when-not-to-use or prerequisites are mentioned.

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

device_approval_listA

List all pending device approval requests for an organization

ParametersJSON Schema
NameRequiredDescriptionDefault
organizationIdYesOrganization ID

TDQS

A3.8/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the burden. It only states the basic action and does not disclose behavioral traits such as read-only nature, pagination, or authentication requirements. For a simple list, this is a notable gap.

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 sentence with no unnecessary words, front-loaded with the essential action and resource. It is appropriately sized for the tool's simplicity.

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?

Given the low complexity (1 param, no output schema), the description is mostly complete. It could benefit from stating that it returns a list of requests, but the purpose is adequately conveyed.

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 for the single parameter (organizationId). The description adds no additional meaning beyond the schema, resulting in a baseline score of 3.

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 action (list) and resource (pending device approval requests) with an organizational scope. It distinguishes well from sibling tools like device_approval_approve and device_approval_deny, which perform mutations.

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 provides clear context (listing pending approvals for an organization), but does not explicitly mention when to use it vs. alternatives. However, the purpose is straightforward and no exclusions are needed.

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

edit_folderC

Edit an existing folder in your vault

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the folder to edit
nameYesNew name for the folder

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are present, so the description carries full burden for behavioral transparency. It only states 'Edit' but does not disclose any behavioral traits such as whether the operation is reversible, permission requirements, or side effects on folder contents.

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

Conciseness4/5

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

The description is very concise at one sentence and front-loaded with the verb 'Edit'. While it is efficient, it could include more context without being overly verbose.

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?

For a tool with only two well-documented parameters and no output schema, the description is minimally adequate. It does not explain that the tool only renames folders (since only 'name' is modifiable) or the effect of no other properties.

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% for both parameters (id and name), so the schema already documents their meaning. The description adds no additional parameter-level information beyond what is in the schema.

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 'Edit an existing folder in your vault' clearly states the action (edit) and the resource (existing folder in vault). It is not a tautology and distinguishes from creation tools, but does not differentiate from sibling edit tools like edit_item or edit_send.

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 such as create_folder or other edit tools. The description gives no context about prerequisites or when to prefer this tool.

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

edit_itemC

Edit an existing item (login, secure note, card, or identity) in your vault

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the item to edit
cardNoCard information to update
nameNoNew name for the item
loginNoLogin information to update
notesNoNew notes for the item
folderIdNoNew folder ID to assign the item to
identityNoIdentity information to update
secureNoteNoSecure note information to update

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. 'Edit' implies mutation, but no disclosure of permission requirements, idempotency, or partial update semantics (e.g., omitting fields leaves them unchanged). Missing critical behavioral context.

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

Conciseness4/5

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

Single sentence, no wasted words. Could add a second sentence about partial updates, but current version is efficiently focused.

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?

Despite full schema coverage, the description lacks behavioral details for a mutation tool with 8 parameters and nested objects. No output schema, so return behavior is unexplained. Partially complete but significant gaps remain.

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 baseline is 3. Description adds no extra meaning beyond schema; it only repeats tool purpose. Nested parameters are well-documented in schema, so no additional value from description.

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?

Description clearly states the verb 'edit' and resource 'existing item', listing supported types (login, secure note, card, identity). It distinguishes from create_item and other edit tools, but does not explicitly contrast with edit_item_collections.

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 on when to use this tool vs alternatives. Does not mention prerequisites (e.g., item must exist, vault unlocked) or exclusions (e.g., editing collections).

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

edit_item_collectionsC

Edit which collections an item belongs to

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesItem ID to edit collections for
collectionIdsYesArray of collection IDs the item should belong to
organizationIdYesOrganization ID

TDQS

C2.8/5.0
Behavior2/5

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

The description says 'Edit' but does not disclose that it replaces the entire set of collections rather than adding/removing individually. With no annotations, this is a significant omission for a mutation tool.

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

Conciseness3/5

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

The description is very concise (one sentence) but lacks necessary details about behavior. It is not verbose, but the brevity sacrifices completeness.

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?

For a simple tool with 3 parameters and no output schema, the description is incomplete as it omits the replacement behavior. The agent may incorrectly assume additive semantics.

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% and parameter descriptions are already clear. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

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 uses specific verb 'Edit' and resource 'which collections an item belongs to', making the tool's purpose clear. However, it does not explicitly differentiate from siblings like 'edit_item' or 'edit_org_collection', but the resource is distinct enough.

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 on when to use this tool versus alternatives. It does not clarify that the tool replaces all collections with the provided list, which is crucial for proper usage.

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

edit_org_collectionC

Edit an existing organization collection

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name for the collection
groupsNoArray of group IDs with access to this collection
externalIdNoExternal ID for the collection (optional)
collectionIdYesCollection ID to edit
organizationIdYesOrganization ID

TDQS

C2.6/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose behavioral traits such as required permissions, whether the edit is partial or full replacement, or any side effects. The description is silent on these aspects.

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

Conciseness4/5

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

The description is a single concise sentence with no unnecessary words. However, it could benefit from a bit more structure or additional context without becoming verbose.

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 five parameters and no output schema, the description lacks completeness. It does not explain the effect of editing, return behavior, or constraints (e.g., whether certain fields are required or immutable). The description is too minimal for a tool with several parameters.

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 covers all parameters with descriptions (100% coverage). The description adds no additional parameter details beyond the schema, so 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.

Purpose3/5

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

The description states 'Edit an existing organization collection' which is clear but does not differentiate from the sibling tool 'update_org_collection', which has an identical purpose. This ambiguity lowers the score.

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 on when to use this tool versus alternatives like update_org_collection, create_org_collection, or delete_org_collection. Missing context on prerequisites or scenarios.

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

edit_sendB

Edit an existing Bitwarden Send

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the Send to edit
nameNoNew name for the Send
notesNoNew private notes
disabledNoDisable the Send
passwordNoNew access password
deletionDateNoNew deletion date in ISO 8601 format
expirationDateNoNew expiration date in ISO 8601 format
maxAccessCountNoNew maximum access count

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only says 'Edit', implying mutation, but does not explain side effects, restrictions, or what happens with optional parameters.

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

Conciseness4/5

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

The description is extremely concise with no wasted words. It is front-loaded with the verb and resource, making it efficient.

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 that there is no output schema and 8 parameters (7 optional), the single-sentence description lacks completeness. It does not cover prerequisites, return values, or usage constraints.

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 baseline is 3. The description adds no additional meaning beyond what the schema already provides for each parameter.

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 explicitly states 'Edit an existing Bitwarden Send', providing a specific verb and resource, and it distinguishes from sibling tools like create_text_send and delete_send.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives. Usage is implied (to modify an existing Send), but no exclusions or contextual cues are given.

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

generateB

Generate a secure password or passphrase

ParametersJSON Schema
NameRequiredDescriptionDefault
wordsNoNumber of words in the passphrase
lengthNoLength of the password (minimum 5)
numberNoInclude numeric characters
specialNoInclude special characters
lowercaseNoInclude lowercase characters
separatorNoCharacter that separates words in the passphrase
uppercaseNoInclude uppercase characters
capitalizeNoCapitalize the first letter of each word in the passphrase
passphraseNoGenerate a passphrase instead of a password

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations provided, the description should compensate by disclosing behavioral traits (e.g., randomness strength, whether generation is client-side or server-side, side effects). It merely states 'secure' without elaboration, leaving the agent uninformed about important security and operational details.

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 sentence that is concise and front-loaded, with no unnecessary words or repetition. It efficiently conveys the core purpose.

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 tool has 9 parameters and no output schema, the description is too brief. It lacks context on return format (e.g., does it return a string?), randomness guarantees, or how the parameters interact (e.g., password vs. passphrase mode). This inadequately equips the agent to use the tool 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?

Schema description coverage is 100%, so the schema already documents each parameter well. The description does not add additional meaning beyond the schema, maintaining the baseline score.

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 'Generate a secure password or passphrase' clearly states the verb ('generate') and the resource ('password or passphrase'), and it is distinct from all sibling tools which focus on CRUD and administrative tasks, leaving no ambiguity.

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

Usage Guidelines3/5

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

No explicit when-to-use or alternative guidance is provided. The purpose is obvious from the tool name and description, but the description does not indicate scenarios where this tool is preferred over others or any prerequisites.

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

getC

Get a specific item from your vault or organization

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID or search term for the object (use "me" for your own fingerprint, or filename for attachment)
itemidNoItem ID (required for attachment)
objectYesType of object to retrieve
outputNoOutput directory path for downloading attachment (optional, should end with /)
organizationidNoOrganization ID (required for org-collection)

TDQS

C2.9/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 the full burden of behavioral disclosure. It says only 'Get a specific item', which implies a read operation but does not state side effects, required permissions, error behavior, or output format. The schema parameters help but the description adds minimal behavioral context.

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

Conciseness4/5

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

A single front-loaded sentence is concise and to the point. However, the brevity sacrifices useful information that could be added without verbosity.

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?

The tool has 5 parameters with conditional requirements (e.g., itemid for attachment) and no output schema. The description is too sparse to cover these nuances. It does not explain return values, error handling, or how to use with different object types beyond the schema.

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% with each parameter having a description. The tool description does not add meaning beyond the schema; it only restates the purpose. Baseline 3 is appropriate.

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 specifies that the tool retrieves a 'specific item from your vault or organization', which clarifies the verb and resource. However, it does not distinguish from sibling tools like 'list' or other specific getters (e.g., 'get_org_collection'). The schema's enum provides the full range but the description itself is vague.

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 given on when to use this tool versus alternatives. The description does not mention when to prefer 'list' for multiple items or other specific getters. There are no exclusions or context for appropriate use.

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

get_org_collectionC

Retrieve a collection

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionIdYesID of the collection

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description must shoulder the transparency burden. It does not disclose that this is a read-only operation, any side effects, required permissions, or the structure of the response. The brief description leaves the agent guessing about behavior.

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

Conciseness3/5

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

At three words, the description is extremely concise but lacks structure. While it avoids verbosity, it omits necessary details and does not earn its place by providing value beyond the tool name.

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 simple tool (one required parameter, no output schema, no annotations), the description is incomplete. It does not explain what a collection is, nor what the return value represents. The agent lacks sufficient context to use the tool confidently.

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 fully describes the single parameter 'collectionId' as 'ID of the collection', achieving 100% schema coverage. The tool description adds no additional meaning beyond the schema, earning a baseline score of 3.

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 verb 'Retrieve' and the resource 'a collection', indicating a read operation. It distinguishes from sibling tools like create_org_collection, delete_org_collection, and list_org_collections. However, it does not specify that it retrieves an org collection, which the tool name implies.

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, such as when to use get_org_collection vs. list_org_collections. No prerequisites or context are given.

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

get_org_eventsC

List all events

ParametersJSON Schema
NameRequiredDescriptionDefault
endYesEnd date for events (ISO 8601 format)
startYesStart date for events (ISO 8601 format)
itemIdNoFilter by item ID (optional)
groupIdNoFilter by group ID (optional)
memberIdNoFilter by member ID (optional)
policyIdNoFilter by policy ID (optional)
actingUserIdNoFilter by acting user ID (optional)
collectionIdNoFilter by collection ID (optional)

TDQS

C2.3/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 context. It fails to disclose traits like read-only nature, pagination, sorting, or output format. The statement 'all events' contradicts the requirement for start/end date filters.

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

Conciseness2/5

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

The description is very short but under-specified. It omits crucial information about tool behavior and constraints, making it insufficiently informative despite its brevity.

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

Completeness1/5

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

Given the tool's complexity (8 parameters, no output schema, no annotations), the description is severely incomplete. It does not explain the nature of events, how to use optional filters, what the return values are, or any limitations.

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%, meaning all 8 parameters have descriptions in the schema. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

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 'List all events' specifies a verb and resource, but 'events' is vague—it does not clarify whether these are audit events, calendar events, or something else. It distinguishes from sibling tools by resource, but lacks specificity.

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 on when to use this tool versus alternatives. While there are no other event tools in siblings, the description does not provide context for usage, such as typical scenarios or prerequisites.

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

get_org_groupC

Retrieve a group

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdYesID of the group

TDQS

C2.2/5.0
Behavior1/5

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

With no annotations, the description carries the full burden of behavioral disclosure. 'Retrieve' implies read-only, but no details are given about authentication requirements, rate limits, or what happens if the group doesn't exist. The three-word description adds no behavioral context.

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

Conciseness2/5

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

The description is extremely concise (3 words), but this comes at the cost of clarity and completeness. A single additional sentence about usage would improve it significantly without harming conciseness.

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

Completeness1/5

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

For a retrieval tool with one parameter and no output schema, the description is incomplete. It fails to mention the return format, possible errors, or any side effects. Adequate completeness would require at least a brief statement about the response.

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% (one parameter 'groupId' with a description). The tool description adds no extra meaning beyond the schema, so baseline of 3 is appropriate. It does not clarify the format or provide examples.

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 'Retrieve a group' clearly states the action (retrieve) and resource (group), which distinguishes it from sibling tools like 'get_org_collection' or 'list_org_groups'. However, it could be more specific by mentioning 'organization group' to align with the tool name.

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

Usage Guidelines1/5

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

No guidelines provided. The description does not indicate when to use this tool, when not to, or mention alternatives such as 'list_org_groups' for listing all groups or 'get_org_group_members' for members.

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

get_org_group_membersC

Retrieve a group's member ids

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdYesID of the group

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It only states the action without disclosing any behavioral traits like authentication requirements, rate limits, or side effects.

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

Conciseness4/5

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

The description is a single concise sentence that immediately conveys the purpose. It is front-loaded and contains no wasted words.

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?

For a simple tool with one parameter and no output schema, the description is minimally adequate. However, it lacks details on return format, error handling, or any prerequisites.

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 already describes the 'groupId' parameter with 'ID of the group' (100% coverage). The description adds no additional meaning beyond what the schema provides, so baseline 3 is appropriate.

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 retrieves a group's member ids. It uses a specific verb 'retrieve' and identifies the resource. However, it does not differentiate from sibling tools like 'get_org_group' or 'list_org_members'.

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 usage guidance is provided. The description does not indicate when to use this tool versus alternatives, such as when to fetch full member details versus just IDs.

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

get_org_memberC

Retrieve a member

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesID of the member

TDQS

C2.5/5.0
Behavior2/5

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

No annotations and description is minimal. Does not disclose behavior on missing member, permissions required, or return format. For a read tool, basic transparency is lacking.

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

Conciseness3/5

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

Extremely concise with one sentence, but at the cost of missing necessary information. It is not improperly verbose but lacks structure and completeness.

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?

With one parameter, no output schema, no annotations, and a terse description, the tool definition is incomplete. Does not clarify return value or edge cases.

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% with one parameter described as 'ID of the member'. Description adds no extra meaning beyond schema, so baseline 3 is appropriate.

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?

Description 'Retrieve a member' states the action and resource but is overly generic. Among siblings like get_org_group, get_org_collection, it lacks differentiation.

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 on when to use this tool versus alternatives like get_org_member_groups or other get tools. Context and prerequisites are missing.

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

get_org_member_groupsB

Retrieve a member's group ids

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesID of the member

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but only states the basic action. It does not disclose permissions, error behavior, or whether it returns only IDs or full group objects.

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

Conciseness4/5

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

Single sentence, no fluff. However, it could be slightly expanded to include output format or usage context without harming conciseness.

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?

For a simple tool with no output schema, the description is somewhat lacking. It does not specify the return format (e.g., array of strings) or handle potential errors, causing minor completeness gaps.

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% with a clear description for memberId. The tool description adds no extra meaning beyond 'ID of the member', so baseline 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 verb 'Retrieve' and the resource 'a member's group ids'. It distinguishes from sibling tools like get_org_member (member details) and get_org_group_members (members of a group).

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_org_member or update_org_member_groups. The description lacks context such as prerequisites or typical use cases.

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

get_org_policyC

Retrieve a policy

ParametersJSON Schema
NameRequiredDescriptionDefault
policyTypeYesType of the policy (0=TwoFactorAuthentication, 1=MasterPassword, 2=PasswordGenerator, 3=SingleOrg, 4=RequireSso, 5=OrganizationDataOwnership, 6=DisableSend, 7=SendOptions, 8=ResetPassword, 9=MaximumVaultTimeout, 10=DisablePersonalVaultExport, 11=ActivateAutofill, 12=AutomaticAppLogIn, 13=FreeFamiliesSponsorshipPolicy, 14=RemoveUnlockWithPin, 15=RestrictedItemTypesPolicy)

TDQS

C2.1/5.0
Behavior2/5

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

No annotations exist, so the description must disclose behavior. It only states 'Retrieve a policy', implying a read operation, but lacks details on authentication requirements, rate limits, or what happens if the policy doesn't exist.

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

Conciseness3/5

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

The description is extremely short (one sentence), which is concise but omits critical context. Conciseness alone does not justify a higher score given the lack of content.

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?

The tool has no output schema, yet the description does not explain what is returned. For a 1-parameter tool with simple semantics, it should at least mention the return value (e.g., policy details). Incomplete given the abundance of sibling tools.

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% with a detailed parameter description listing all allowed values. The tool description adds no additional meaning beyond the schema, so a baseline of 3 is appropriate.

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

Purpose2/5

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

The description 'Retrieve a policy' is a tautology that adds no clarity beyond the tool name. It doesn't specify that this is for organization policies, nor does it distinguish from other retrieval tools like 'get' or 'get_org_collection'.

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

Usage Guidelines1/5

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

No guidance on when to use this tool vs siblings such as 'list_org_policies' (which retrieves all policies) or 'get_org_member' (which retrieves a member). The description provides no context for selection.

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

get_org_subscriptionA

Retrieve the subscription details for the current organization

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

Without annotations, the description should disclose behavioral traits. It only states 'retrieve', implying read-only, but lacks details on authentication, error handling, or scope (e.g., 'current' organization is ambiguous).

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, front-loaded sentence with 7 words. Every word is necessary, no waste.

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 simplicity (no parameters, no output schema), the description is minimally complete. However, it could be improved by clarifying that it's read-only or linking to update_org_subscription for modifications.

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?

There are no parameters, and the schema coverage is 100%. The description adds meaning by specifying what is retrieved ('subscription details for the current organization'), which is a baseline according to the instructions for 0 parameters.

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 action ('Retrieve') and the resource ('subscription details for the current organization'), distinguishing it from sibling tools like update_org_subscription and other get_* tools.

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 (e.g., get_org_collection for other org details). No when-not or context is given.

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

get_sendB

Get details of a specific Bitwarden Send

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the Send to retrieve

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose any behavioral traits beyond what is implied by 'get details'. It does not mention side effects, permissions, or constraints, leaving the agent uninformed about read-only nature or potential 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 of 8 words with no superfluous information. It is front-loaded with the verb and resource.

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?

For a simple get tool with one parameter, the description is adequate but lacks output details (no output schema provided) and usage context. It is minimally complete but could benefit from specifying what 'details' include.

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% with the parameter 'id' described as 'ID of the Send to retrieve'. The description adds no extra meaning beyond the schema, meeting the baseline for high coverage.

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 uses a specific verb 'Get' and resource 'Bitwarden Send', clearly indicating retrieval of details for a single Send. It implicitly distinguishes from siblings like 'list_send' (list all) and 'delete_send' (delete), though without explicit differentiation.

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 on when to use this tool versus alternatives such as 'list_send' or 'edit_send'. The description only states what the tool does without providing context for selection.

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

import_org_users_and_groupsB

Import members and groups from an external system

ParametersJSON Schema
NameRequiredDescriptionDefault
groupsNoGroups to import
membersNoMembers to import
largeImportNoIndicates an import of over 2000 users and/or groups is expected
overwriteExistingYesWhether to overwrite existing data or append to it

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It does not mention side effects, rate limits, prerequisites, or whether the operation is destructive (e.g., overwrite behavior is not mentioned despite being a parameter).

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

Conciseness4/5

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

The description is a single sentence, very concise. However, it could be slightly more informative without sacrificing brevity.

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?

The description is too minimal for a complex import tool with multiple parameters and behavioral nuances like large imports and overwrite behavior. It lacks details on return values and expected outcomes.

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 parameter semantics are already documented. The description adds no additional parameter-level meaning beyond what is 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 imports members and groups from an external system, using specific verb and resources. It distinguishes from siblings that create or update single entities.

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

Usage Guidelines3/5

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

The description does not provide explicit guidance on when to use this tool versus alternatives like create_org_group or update_org_group_members. Usage context is implied by the name but not explicitly stated.

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

invite_org_memberC

Create a member

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesUser type (0: Owner, 1: Admin, 2: User, 4: Custom)
emailYesEmail address to invite
groupsNoArray of group IDs the member belongs to
externalIdNoExternal ID for the member (optional)
collectionsNoArray of collection IDs the member has access to
permissionsNoCustom permissions if the member has a Custom role

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It does not disclose behavioral traits such as permissions required, side effects (e.g., sending an email), rate limits, or success/failure outcomes. The description is too minimal.

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

Conciseness2/5

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

The description is extremely short, but it is under-specification rather than efficient. It fails to convey essential information for a tool with 6 parameters and nested objects.

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 tool's complexity (multiple parameters, nested objects, no output schema), the description is incomplete. It does not explain return values, the invitation process, or constraints beyond the schema.

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 baseline is 3. The description adds no extra meaning to the parameters; it relies entirely on the schema, which is already detailed.

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 'Create a member' is vague and does not specify that it invites a new organization member. It partially restates the tool name without clarifying the scope or differentiating from sibling tools like create_org_collection.

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 such as reinvite_org_member or update_org_member. There is no mention of prerequisites or context.

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

listC

List items from your vault or organization

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoFilter items by URL (items only, supports "null" and "notnull" literals)
typeYesType of items to list (items, folders, collections, organizations, org-collections, org-members)
trashNoFilter for items in trash (items only)
searchNoOptional search term to filter results
folderidNoFilter items by folder ID (items only, supports "null" and "notnull" literals)
collectionidNoFilter items by collection ID (items only, supports "null" and "notnull" literals)
organizationidNoOrganization ID (required for org-collections and org-members)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only states the basic action without disclosing behavioral traits like read-only nature, pagination, or rate limits. The agent lacks critical operational details.

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

Conciseness4/5

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

The description is a single concise sentence. While it could provide more value, it is appropriately sized and front-loaded with the action and resource.

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 tool's complexity (7 parameters, no output schema, no annotations), the description is too minimal. It fails to explain return values, pagination, or special behaviors for different type values, leaving the agent underinformed.

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%, and the schema already describes all 7 parameters with clear descriptions. The description adds no additional meaning beyond the schema, meeting the baseline for high coverage.

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 'List items from your vault or organization' specifies a resource (items, vault, organization) but is vague about the variety of entity types (folders, collections, org-members, etc.) that the type parameter supports. It is clear but does not differentiate from sibling tools like list_org_collections, which are more specific.

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 sibling list tools (e.g., list_org_collections, list_org_groups, list_send). The agent has no criteria to choose between the generic list and the specialized lists.

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

list_org_collectionsB

List all collections

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as read-only nature, pagination behavior, or whether it requires specific permissions. As a list operation, it is likely safe, but the description does not confirm this.

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 extremely concise with three words, perfectly efficient for a simple parameterless list tool. Every word is necessary and there is no fluff.

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 simplicity (zero parameters, no output schema), the description is minimally complete. However, it lacks mention of organizational scope and does not hint at the output format. Adding 'in the organization' would improve completeness.

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?

The input schema has zero parameters, so baseline score is 4. Schema coverage is 100% trivially. Description adds no additional parameter information, but none is needed since there are no parameters.

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?

Description 'List all collections' clearly states verb and resource, matching the tool name. It adds 'all' to imply no filtering, which is helpful. However, it does not specify that these are organization-level collections, though the name and sibling tools imply this.

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 on when to use this tool versus alternatives like get_org_collection (for a single collection) or edit_org_collection (for modification). No information about prerequisites or limitations, leaving the agent to infer usage.

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

list_org_groupsA

List all groups

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided; the description does not disclose behavioral traits such as read-only status, pagination, or rate limits. This is insufficient for a tool with no annotation support.

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 extremely concise (5 words), front-loaded, and contains no redundant information. Every word is necessary.

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 simplicity (no parameters, no output schema, no annotations), the description is minimally adequate. It could mention potential limitations (e.g., 'all groups in the org'), but is acceptable for a basic list.

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?

No parameters exist, and the description adds no parameter details, which is fine. Baseline is 4 for zero-parameter tools, and the description adequately states what is listed.

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 'List all groups' directly states the action and resource, clearly distinguishing from siblings like get_org_group (single group) and create_org_group (creation).

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 on when to use this tool versus alternatives such as get_org_group for a specific group. The usage context is only implied by the name and description.

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

list_org_membersB

List all members

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It only says 'List all members', implying a read operation returning a list. No details are given about pagination, ordering, permissions, or what exactly is returned (e.g., member IDs, email addresses). This is minimal behavioral disclosure.

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

Conciseness4/5

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

The description is extremely concise at two words, which is appropriate for a simple, param-free tool. It is front-loaded with the action and scope. However, adding a brief note on the organizational context would improve clarity without sacrificing conciseness.

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?

For a tool with no parameters, no output schema, and no annotations, the description is minimally adequate. It specifies the action and scope but lacks details on the return format, membership scope (organization members implied but not explicit), and any constraints like rate limits. More context would be beneficial.

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?

The tool has zero parameters, so the schema is fully descriptive. The description adds no parameter-specific meaning, but the baseline for zero parameters is 4, as per guidelines. The description adequately conveys what the tool does without needing param details.

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 uses a clear verb 'List' and resource 'all members', which directly states the tool's action. It distinguishes from sibling 'get_org_member' by specifying 'all', but does not explicitly mention the organization scope, relying on the tool name for that context.

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_org_member' or other member manipulation tools. The description lacks any context on prerequisites, such as authentication requirements or typical use cases.

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

list_org_policiesC

List all policies

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, and the description lacks behavioral details such as return format, pagination, rate limits, or side effects. The description simply states the action without revealing any behavioral traits beyond the obvious.

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

Conciseness3/5

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

The description is extremely concise at three words, which is efficient but lacks necessary details. It could be considered too terse given the lack of context; a slightly longer description with more nuance would be more helpful.

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?

With no output schema, no annotations, and zero parameters, the description carries the full burden of completeness. It fails to explain what policies are, the scope, or the structure of the output. This is insufficient for an agent to understand the tool's behavior fully.

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?

The input schema has zero parameters with 100% description coverage (trivially). The description adds no parameter information but is not required to since there are none. The baseline for 0 parameters is 4, as the description does not need to elaborate.

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 'List all policies' clearly states the action (list) and resource (policies). It distinguishes from sibling tools that list other entities like collections, groups, or members. However, it does not specify whether this lists policies for the entire organization or a specific context, which could be improved.

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 (e.g., get_org_policy for a single policy). There are no exclusions or context hints, leaving the agent to infer usage from the tool name alone.

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

list_sendB

List all Bitwarden Sends

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/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 the full burden. It only says 'list all' and does not mention whether the operation is read-only, paginated, or ordered. For a simple list, this is minimal.

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 sentence with no wasted words. It is appropriately concise and front-loaded.

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 zero-parameter, no-output-schema tool, the description is sufficient to convey its purpose. The sibling tools cover other operations, so this doesn't require more detail.

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?

The input schema has no parameters, so schema coverage is 100%. The description adds no parameter info, but none is needed. Baseline of 4 applies.

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 'List all Bitwarden Sends' clearly states the verb and resource. It is specific but does not distinguish itself from the sibling 'list' tool, which may cause confusion.

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 on when to use this tool versus alternatives like 'get_send' for individual sends or 'list' for other resources. The description is purely declarative.

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

lockC

Lock the vault

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.8/5.0
Behavior1/5

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

No annotations provided, and the description gives no behavioral details (e.g., side effects, authentication needs, or return behavior). Completely inadequate.

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

Conciseness4/5

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

Extremely concise, front-loaded with core purpose. Could retain quality with slight expansion for better utility.

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?

Lacks context on outcomes, error handling, or even a simple confirmation of success. Minimal completeness for a zero-parameter tool.

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?

No parameters exist, and schema coverage is trivially 100%. The description adds no parameter information but none is needed.

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?

Description 'Lock the vault' clearly states verb and resource, distinguishing it from counterparts like 'unlock'. However, it is brief and relies on the tool name for full clarity.

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 on when to use vs alternatives (e.g., 'unlock' or 'confirm'). Lacks context, exclusions, or prerequisites.

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

moveC

Move (share) a vault item to an organization (formerly the share command)

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesItem ID to move to organization
collectionIdsYesArray of collection IDs the item should be added to in the organization
organizationIdYesOrganization ID to move the item to

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits. It only states the action and a historical note, but does not mention side effects (e.g., item removal from original location), required permissions, or other behavioral details beyond 'move and share.'

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 sentence with no unnecessary words. It is appropriately brief and front-loaded with the key action.

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 three required parameters, no output schema, and no annotations, the description is too sparse. It does not explain the implications of moving an item to an organization (e.g., collection membership, ownership changes) or the expected outcome, leaving the agent underinformed.

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% with each parameter described in the schema. The description adds no additional meaning beyond what is already in the schema, so baseline 3 is appropriate.

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 action: move (share) a vault item to an organization. It is specific and distinguishes from siblings like create_item or edit_item, though it does not explicitly differentiate from a potential share tool.

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 (e.g., create_item, edit_item_collections). The description only states what it does, not when or 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.

reinvite_org_memberC

Re-invite a member

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesID of the member to re-invite

TDQS

C2.9/5.0
Behavior2/5

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

Minimal disclosure of behavior. Annotations are absent, and the description does not mention side effects (e.g., sends email), state changes, or what happens if the member is already active. The agent is left guessing.

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

Conciseness4/5

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

Extremely concise with no wasted words. However, the single sentence is not structured (e.g., no bullet points or sections), but for a simple action this is acceptable.

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 simplicity of the tool (1 parameter, no output schema), the description is too terse. It does not explain what re-inviting entails, such as whether it sends a new invitation email or resets an expiry, leaving important context missing.

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% coverage with a description for memberId. The tool description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

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 'Re-invite a member' clearly indicates the action (re-inviting) and the resource (member). It is specific but does not differentiate from sibling tools like invite_org_member or restore_org_member.

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 on when to use this tool versus alternatives. For example, it does not specify prerequisites (e.g., member exists but invite expired) or when to prefer invite_org_member instead.

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

remove_org_memberC

Remove a member

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesID of the member

TDQS

C2.7/5.0
Behavior1/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 disclosing behavioral traits. It simply says 'Remove a member' without indicating whether the removal is permanent, reversible, or what permissions are required. This is insufficient for an AI agent to understand the implications.

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

Conciseness4/5

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

The description is extremely concise (3 words) and front-loaded with the action and resource. While it lacks depth, it fits the minimal viable format without wasted words.

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 simple single-parameter schema and no output schema or annotations, the description should provide more context about the removal process (e.g., cascading effects, reversibility). The current description is inadequate for an agent to use with confidence.

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%, with the single parameter 'memberId' described in the schema. The description adds no additional meaning beyond what the schema already provides, resulting in a baseline score of 3.

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 action (remove) and the resource (member), making the basic purpose evident. However, it does not differentiate from sibling tools like revoke_org_member or delete, which could lead to confusion.

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 such as revoke_org_member or restore_org_member. The description lacks context on prerequisites, side effects, or preferred scenarios.

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

remove_send_passwordB

Remove the access password from a Bitwarden Send

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the Send to remove password from

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description offers no behavioral details beyond the action. It does not disclose whether the operation requires existing password, is irreversible, or what side effects occur (e.g., send becoming publicly accessible).

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 sentence, no superfluous words, and immediately states the action. It is highly concise and well-structured.

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 simple one-parameter mutation tool with no output schema, the description is largely complete enough. However, it could benefit from clarifying prerequisites (e.g., send must have a password) and the outcome (e.g., password removed successfully).

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 description adds no meaning beyond the input schema, which already fully describes the 'id' parameter. With 100% schema coverage, baseline 3 is appropriate; the tool description does not elaborate further.

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 uses a specific verb 'remove' and clearly identifies the resource 'access password from a Bitwarden Send', distinguishing it from sibling tools like delete_send or edit_send.

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 such as delete_send (which removes the entire send) or edit_send (which could modify other aspects). No when-not-to-use or prerequisite information.

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

restoreC

Restore an item from trash

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the object to restore
objectYesType of object to restore

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description is the only source for behavioral traits. It only states 'restore from trash' without detailing side effects, required permissions, or whether the operation is reversible. This is insufficient for an agent to understand the tool's behavior.

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

Conciseness4/5

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

The description is a single, short sentence that is concise and front-loaded. No unnecessary words, but it could be more informative without losing conciseness.

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 output schema and annotations, the description does not explain return values, success conditions, or error cases. For a simple restoration tool, more context (e.g., what happens to the item after restore, constraints like only items you have permission to restore) would be beneficial.

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 baseline is 3. The description adds no additional meaning to the parameters beyond what the input schema already provides (object type and ID).

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 action (restore) and the resource (an item from trash), which is specific and different from sibling tools like delete or lock. However, it doesn't specify the context (e.g., user's trash vs shared trash) which could improve clarity.

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 on when to use this tool versus alternatives (e.g., when an item is already deleted vs in trash). No prerequisites or conditions for use are mentioned.

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

restore_org_memberB

Restore a previously revoked member

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesID of the member to restore

TDQS

B3.1/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 the full burden. It only says 'restore' without explaining what that entails (e.g., reactivating access, reinstating groups, or requiring permissions). The behavioral impact is unclear.

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 concise sentence with no extraneous information. It is front-loaded and efficient.

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?

For a simple tool with a single parameter and no output schema, the description is minimally adequate. However, it could mention that the member must be in a revoked state and what the outcome is, making it slightly incomplete.

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% with a clear description for 'memberId'. The tool description does not add meaning beyond what the schema provides, so baseline 3 is appropriate.

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 'Restore a previously revoked member' clearly states the action (restore) and the resource (member), and it differentiates from sibling tools like 'revoke_org_member' which performs the opposite action.

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 prerequisites, conditions for use, or scenarios where this tool is appropriate versus others like 'update_org_member' or 'reinvite_org_member'.

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

revoke_org_memberC

Revoke a member's access to an organization

ParametersJSON Schema
NameRequiredDescriptionDefault
memberIdYesID of the member to revoke

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It states only the action 'revoke access' without disclosing behavioral details such as whether the action is reversible, what data is affected, permission requirements, or side effects.

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

Conciseness3/5

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

The description is very short and to the point, but it lacks crucial details. Conciseness is valued, but not at the expense of clarity and completeness. The single sentence is front-loaded but insufficient.

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 tool is a mutation with no output schema, the description is incomplete. It does not explain what the result of revocation looks like, whether it returns a success message, or any follow-up actions. The context around member management (e.g., impact on groups, collections) is absent.

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 already describes the single parameter 'memberId' as 'ID of the member to revoke'. The description adds no additional semantic value beyond the schema, achieving the baseline score for a well-documented parameter.

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 verb 'Revoke' and resource 'member's access to an organization'. It is specific and unambiguous, but does not differentiate from the sibling 'remove_org_member', which might have a similar function.

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 'remove_org_member', 'update_org_member', or 'reinvite_org_member'. Prerequisites or conditions for use are not mentioned.

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

statusB

Check the status of the Bitwarden CLI

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

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

No annotations provided; the description does not disclose whether the tool is read-only, requires authentication, or has any side effects. As a simple check, it likely does not modify state, but this is not stated.

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

Conciseness4/5

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

The description is a single sentence, which is concise for a simple tool. However, it could be slightly more informative without losing conciseness.

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?

No output schema exists, and the description does not hint at the return format or content. It also does not mention dependencies (e.g., being logged in). The agent lacks context to fully understand the tool's response.

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?

No parameters exist, and schema coverage is 100%. The description adds no param info, but none is needed. Baseline 4 is appropriate.

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 states the tool checks the status of the Bitwarden CLI with a specific verb and resource. It is distinct from sibling tools, but does not clarify what 'status' includes (e.g., connectivity, version, sync state).

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 on when to use this tool versus alternatives, such as 'lock' or 'sync'. No mention of prerequisites or exclusions.

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

syncB

Sync vault data from the Bitwarden server

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations exist, so the description must disclose behavioral traits. It only says 'sync', implying data transfer but not whether it is destructive, requires permissions, or affects local vs remote state.

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

Conciseness4/5

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

A single sentence with no wasted words. It is front-loaded and efficient, though slightly terse.

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?

For a zero-parameter tool, the description is adequate but lacks details on return values, expected duration, or side effects. It meets minimum viability.

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?

With zero parameters, the schema is complete. The description need not add param details, but it could hint at optional behaviors. Baseline is 4 for no params.

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 syncs vault data from the Bitwarden server, using specific verb and resource. It distinguishes from sibling tools focused on CRUD operations, but 'vault data' is somewhat broad.

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 sync versus alternatives like list or get. There are no prerequisites or context about typical usage scenarios.

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

unlockA

Unlock the Bitwarden vault. Takes no parameters. Prompts the user for their master password through a native OS dialog; the password is never exposed to the MCP protocol or the LLM. Not supported in headless or non-interactive environments — run "bw unlock --raw" manually and set BW_SESSION in that case.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

Discloses key behaviors: prompts via native OS dialog, password never exposed to MCP/LLM, not supported in headless environments. No annotations provided, so description carries full burden and does so completely.

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 sentences, no fluff. Each sentence adds essential information: action, parameterless nature, security detail, and usage constraint. Front-loaded with core purpose.

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?

Tool is simple (no params, no output schema). Description covers purpose, usage context, security, and alternatives. No gaps remain for an agent.

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?

Input schema has 0 parameters with 100% coverage. Description redundantly confirms 'takes no parameters' and adds rationale (password handled via dialog). Adds value beyond 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?

Clearly states the verb 'Unlock' and resource 'Bitwarden vault'. Description distinguishes from sibling 'lock' and provides specific scope (no parameters, prompts for master password).

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

Usage Guidelines5/5

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

Explicitly describes when to use (unlock vault) and when not to (headless/non-interactive, alternative manual command). Provides direct alternative: 'run bw unlock --raw manually and set BW_SESSION'.

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

update_org_collectionC

Update a collection

ParametersJSON Schema
NameRequiredDescriptionDefault
groupsNoThe associated groups that this collection is assigned to
externalIdNoExternal identifier for reference or linking this collection to another system
collectionIdYesID of the collection

TDQS

C2.3/5.0
Behavior2/5

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

Description only says 'Update a collection', which implies mutation, but no details on permissions, merge behavior, or side effects. With no annotations, the description carries full burden and fails to disclose behavioral traits.

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

Conciseness3/5

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

The description is a single sentence, which is concise, but it is too brief and lacks structure or contextual clues. It is front-loaded but underinformative.

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 tool complexity (3 parameters, no annotations, no output schema), the description is insufficient. It does not explain return values, side effects, or relationship to sibling tools.

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 all parameters are already described in the schema. The description adds no additional meaning beyond what the schema provides.

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

Purpose2/5

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

Description states 'Update a collection', which specifies verb and resource, but it does not differentiate from sibling tools like 'edit_org_collection'. It is essentially a tautology, lacking specificity about what kind of collection or 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?

No guidance on when to use this tool versus alternatives like create_org_collection, delete_org_collection, or edit_org_collection. No prerequisites or context provided.

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

update_org_groupC

Update a group

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesNew name for the group
groupIdYesID of the group
externalIdNoExternal ID for the group (optional)
collectionsNoArray of collection IDs the group has access to

TDQS

C2.5/5.0
Behavior2/5

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

No annotations provided, and the description only states 'Update a group', which implies mutation but does not disclose side effects, required permissions, rate limits, or reversibility. Minimal transparency beyond the action.

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

Conciseness3/5

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

The description is very concise (4 words), which is efficient, but it sacrifices informativeness. A slightly more detailed summary would justify a higher score. Structure is front-loaded but lacks substance.

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?

With no annotations, no output schema, and 4 parameters including a nested array, the description is insufficient. It does not explain the scope of updates (e.g., group settings vs. members) or the impact of modifying collections. Inadequate for a mutation tool.

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 parameters. The description itself adds no additional meaning about parameter relationships, constraints, or usage beyond what the schema provides. Baseline score of 3 applies.

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?

Description 'Update a group' is a verb+resource, indicating the action and object. However, it is very generic and does not distinguish from siblings like update_org_group_members or other update tools. The purpose is clear but lacks specificity.

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 on when to use this tool versus alternatives. For instance, it does not contrast with update_org_group_members (which handles member changes) or create_org_group. No context provided.

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

update_org_group_membersC

Update a group's members

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdYesID of the group
memberIdsYesArray of member IDs to add to the group

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure, but it fails to explain whether memberIds replaces all members or just adds, what happens if members are invalid, or whether the update is atomic. This is a significant gap for a mutation tool.

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

Conciseness3/5

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

The description is a single sentence with no wasted words, but it lacks structure or front-loading of critical information. Acceptable concisely but not well-organized.

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?

For a mutation tool with no output schema, the description should specify what the tool returns (e.g., success status), but it does not. It also omits whether the operation is additive or replacement, leaving ambiguity for a simple tool.

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% with clear parameter descriptions (group ID and members to add). The description adds no additional meaning beyond the schema, so it meets the baseline but does not enhance clarity.

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 'Update a group's members' clearly identifies the verb and resource, distinguishing it from tools like 'update_org_group' (which updates group properties) and 'update_org_member_groups' (which updates a member's groups). However, it could be more specific about whether it adds or replaces members.

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 on when to use this tool versus siblings like 'update_org_member_groups' or 'create_org_group'. The description lacks context on the appropriate scenario for updating group members versus other group operations.

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

update_org_memberC

Update a member

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesUser type (0: Owner, 1: Admin, 2: User, 4: Custom)
groupsNoArray of group IDs the member belongs to
memberIdYesID of the member
externalIdNoExternal ID for the member (optional)
collectionsNoArray of collection IDs the member has access to
permissionsNoCustom permissions if the member has a Custom role

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits like mutability, side effects, or permissions. It only states 'Update a member' without explaining consequences (e.g., role changes affecting access).

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

Conciseness2/5

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

The description is extremely concise (3 words) but it is under-specified, omitting essential context about the tool's scope and parameters. It sacrifices informativeness for brevity.

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 tool's complexity (6 parameters, nested objects, no output schema), the description is insufficient. It fails to explain that it updates member role, permissions, collections, and groups, which is critical for correct invocation.

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 input schema already documents all parameters thoroughly. The description adds no extra semantic value beyond what the schema provides.

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 name 'update_org_member' combined with the description 'Update a member' clearly identifies the tool's action on an organization member, distinguishing it from siblings like 'update_org_collection' or 'update_org_group'. However, the description does not specify which attributes are updatable.

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 'invite_org_member' or 'remove_org_member'. The description lacks usage context or prerequisites.

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

update_org_member_groupsC

Update a member's groups

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdsYesArray of group IDs that the member should belong to
memberIdYesID of the member

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It only states 'Update a member's groups' without disclosing whether the operation is additive or replaces all groups, required permissions, or side effects. This is insufficient for safe agent invocation.

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

Conciseness4/5

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

The description is a single short sentence, front-loaded with the key action. It is concise and efficient, though slightly terse for the complexity of the operation.

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?

For a mutation tool with no annotations and no output schema, the description is incomplete. It does not explain the effect on existing groups, required permissions, or any constraints. This limits the agent's ability to use it correctly.

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% (both parameters are described in the schema). The description adds no additional meaning beyond what the schema provides, so baseline score of 3 is appropriate.

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 'Update a member's groups' uses a specific verb and resource, clearly indicating the tool's action. However, it does not distinguish from the similar sibling tool 'update_org_group_members', which updates members in a group (inverse 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 'update_org_group_members' or 'get_org_member_groups'. The description offers no context for when it is appropriate.

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

update_org_policyC

Update a policy

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNoPolicy configuration data
enabledYesWhether the policy is enabled
policyTypeYesType of the policy (0=TwoFactorAuthentication, 1=MasterPassword, 2=PasswordGenerator, 3=SingleOrg, 4=RequireSso, 5=OrganizationDataOwnership, 6=DisableSend, 7=SendOptions, 8=ResetPassword, 9=MaximumVaultTimeout, 10=DisablePersonalVaultExport, 11=ActivateAutofill, 12=AutomaticAppLogIn, 13=FreeFamiliesSponsorshipPolicy, 14=RemoveUnlockWithPin, 15=RestrictedItemTypesPolicy)

TDQS

C2.4/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. It only says 'update', implying mutation, but does not disclose side effects, required permissions (e.g., admin rights), request limitations, or the impact of the data parameter. This is insufficient for safe autonomous use.

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

Conciseness2/5

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

The description is extremely short (3 words) and omits critical context. While conciseness is positive, it sacrifices necessary detail for safe tool invocation, making it under-specified.

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 3 parameters including a nested object (data) and no output schema, the description lacks essential context about how data is used, whether the policy must already exist, and what happens on update. The tool's role in the org policy lifecycle is unclear.

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 clear parameter definitions (policyType as enum-like integer, enabled boolean, data object). The description adds no additional meaning beyond the schema, which already explains the parameters well. Baseline score of 3 is appropriate.

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 'Update a policy' which clearly identifies the verb (update) and a generic resource (policy). However, it does not specify that this is for organization policies, nor does it distinguish it from sibling tools like update_org_collection or get_org_policy. The resource is vague without the name context.

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. Siblings include get_org_policy and list_org_policies, but there is no suggestion to retrieve first before updating, or any mention of prerequisites or exclusions.

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

update_org_subscriptionB

Update the organization's current subscription for Password Manager and/or Secrets Manager

ParametersJSON Schema
NameRequiredDescriptionDefault
secretsManagerNoSecrets Manager subscription details
passwordManagerNoPassword Manager subscription details

TDQS

B3.1/5.0
Behavior2/5

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

Without annotations, the description should disclose behavioral traits like side effects, permissions, or constraints. It only says 'Update', implying mutation, but fails to mention billing implications, immediate effect, or required privileges. This is insufficient for a write operation.

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

Conciseness4/5

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

The description is a single sentence of 12 words, making it concise. However, it could be slightly expanded to include usage context without losing efficiency. It is well-structured and front-loaded.

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 it's a mutation tool with no annotations, no output schema, and nested objects, the description is incomplete. It does not explain partial updates, constraints, or consequences. The tool's complexity demands more detail for an AI agent to use it correctly.

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 baseline is 3. The description adds no extra meaning beyond the schema—it merely restates that the tool updates subscriptions for the two managers, which is already clear from property names.

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 verb 'Update' and the resource 'organization's current subscription', specifying it applies to Password Manager and/or Secrets Manager. This distinguishes it from sibling tools like get_org_subscription (read) and other update tools for different entities.

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, such as when to update a collection (update_org_collection) or when not to use it. The context signals and sibling list indicate there are many related tools, but the description gives no help in selection.

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

TDQS

B3/5.0
Disambiguation4/5

Most tools have distinct purposes, but 'edit_org_collection' and 'update_org_collection' appear redundant, creating ambiguity. Otherwise, tools are well-separated by domain (items, folders, sends, org management).

Naming Consistency4/5

Tools generally follow a verb_noun snake_case pattern, but there are slight inconsistencies such as 'device_approval_approve' (redundant) and 'import_org_users_and_groups' (non-standard verb). Overall pattern holds.

Tool Count4/5

With 59 tools, the set is on the large side but covers the extensive functionality of Bitwarden (personal vault, sends, organization management, device approvals). The scope justifies the count, though it may be heavy for agents.

Completeness4/5

The tool set covers most CRUD operations for items, folders, sends, and organization entities. Notable gap: no 'delete_folder' tool exists. Otherwise, lifecycle support is strong, including status, sync, and import.

Maintenance

ActivityActive
ResponsivenessSyncing

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
    Not graded
    quality
    A
    maintenance
    Enables interaction between LLMs and Obsidian vaults through the Model Context Protocol, supporting secure file operations, content management, and advanced search capabilities.
    5,784
    671
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to securely interact with Fireblocks services through the Model Context Protocol, supporting transaction management, vault and exchange account queries, network connections, and workspace user management.
    23
    10
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Bitwarden/Vaultwarden for password and secure note management, including creation, updating, deletion, and search of items and folders.
    1

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/bitwarden/mcp-server'

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