Skip to main content
Glama

FFxF

Fork a database

fork_database
Idempotent

Creates a NEW database, billed like any other, whose data is an instant copy of this one (for a test or staging copy), with the same users and passwords. It stays linked to its source for up to 7 days (no backups of its own, the source cannot be deleted) unless detach_database_fork ends that sooner. Retrying the same call is safe. Scope: vms.create.

Input Schema

NameRequiredDescriptionDefault
vpcNoDefault: the source's private network; same region either way.
nameYesName of the new database.
size_gbNoMemory in GB, one of the sizes of get_database_options for the region. Default: 1, or the source's size.
databaseYesThe source database.
idempotency_keyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Goes well beyond the annotations (which only say non-read-only, open-world, idempotent, non-destructive): it discloses billing impact, cloned users/passwords, the 7-day link window, that the fork has no backups of its own, that the source cannot be deleted while linked, and the vms.create scope required. Retry safety is stated in prose as well as annotated.

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?

Front-loaded with the core action and copy semantics, then lifecycle, then retry safety and scope. Every clause carries information, though the single dense run-on sentence could be split for faster scanning.

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 mutating tool with annotations but no output schema, it covers billing, clone contents, lifecycle, deletion constraint, idempotency, and auth scope. The one gap is that it never indicates what is returned (e.g., the new database's ID) for chaining into get_database or detach_database_fork.

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 80%, so the schema already carries parameter meaning (vpc default, size_gb defaults and its dependency on get_database_options, source database). The description adds no parameter-level detail such as naming constraints or idempotency_key usage beyond the schema. 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?

States a specific verb and resource ('Creates a NEW database') and immediately defines the fork semantics as 'an instant copy of this one', which distinguishes it from create_database, restore_database, and backup_database in the sibling list. The parenthetical use case (test or staging copy) further pins down intent.

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?

Gives clear context for when to use it ('for a test or staging copy') and names the counterpart tool that ends the relationship (detach_database_fork). It does not explicitly contrast with create_database or restore_database, so the alternative-selection guidance is implied rather than spelled out.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources