Skip to main content
Glama
mikusnuz

umami-mcp

by mikusnuz

complete_two_factor_login

Finish a pending self-hosted Umami sign-in by submitting a six-digit TOTP or backup code when the login flow requires two-factor verification.

Instructions

Complete a pending self-hosted Umami login after a tool reports that 2FA is required

Input Schema

NameRequiredDescriptionDefault
codeYesSix-digit TOTP or backup code
methodYesVerification method

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.1

TDQS

A3.7/5.0
Behavior3/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 add the useful precondition that a login must already be pending and 2FA must have been demanded. It says nothing about failure behavior (invalid or expired code), whether the code is single-use, or what the caller receives once the login completes.

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?

One sentence, front-loaded with the action and immediately followed by the triggering condition. Nothing is wasted or repeated from structured fields.

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 two-parameter authentication tool with no output schema, an agent still lacks knowledge of what a successful completion yields (session established?) and how errors surface. The precondition is covered, but the post-condition is not.

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% and both parameters are documented in the schema, including the enum and the six-digit format note. The description adds no parameter-level meaning beyond that, so the baseline 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 names a specific verb and resource (complete a pending login) plus the Umami context, so it is immediately distinguishable from CRUD-style siblings. It stops short of explicitly naming how it differs from other auth siblings such as verify_auth or confirm_two_factor_setup, but the 'pending login + 2FA required' framing is precise.

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?

It gives an explicit trigger: call this only after a tool reports that 2FA is required, which is a real routing signal. It does not state what to do instead when no login is pending (e.g. verify_auth) or when the user abandons the flow (cancel_two_factor_setup), so exclusions are missing.

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

Deploy Server

Other Tools