Skip to main content
Glama

Server Details

Ask about your Dreambooth Studio photobooths: sessions, revenue, credits, projects, device status.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Dreambooth-Studio/dreambooth-mcp
GitHub Stars
0
Server Listing
dreambooth-mcp

TDQS

A4.4/5.0

Scored across 10 tools

Disambiguation5/5

Each tool targets a distinct resource or concern: account connection, credits, gallery media, project details, revenue, sessions, wallet, project listing, and docs. Potentially overlapping money tools are explicitly disambiguated, with get_revenue_summary and get_wallet_transactions each explaining when not to use them.

Naming Consistency4/5

Tool names mostly follow a clear verb_noun snake_case pattern, such as get_credits, list_projects, and search_docs. The only notable deviation is connection_status, which lacks a verb prefix like get_connection_status, making the set slightly inconsistent.

Tool Count5/5

Ten tools is a well-scoped size for a Dreambooth operator support server. Each tool covers a meaningful query or account action, and none feel redundant or purely decorative.

Completeness3/5

The toolset covers account, credits, projects, sessions, revenue, wallet, and documentation queries well, but it is almost entirely read-only. There are no tools for creating, updating, or deleting booths, nor any media/session detail operations, so agents cannot manage the full lifecycle of a project.

Available Tools

10 tools
connect_accountConnect or create a Dreambooth accountAInspect

Connect this conversation to a Dreambooth Studio account. Returns a link the person opens in their own browser, where they sign in to Dreambooth with an email and password or with Google, and approve. Works for people who do NOT have a Dreambooth account yet — approving creates one, with a 14-day Pro trial — as well as for existing operators. Call this when another tool reports that no account is connected, or when someone asks to connect, sign up, or switch accounts. After returning the link, ask them to open it and say when they are done; do not call this tool again while waiting.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
emailNo
statusYesalready_connected | awaiting_approval
authUrlNoOpen in a browser to approve. Absent when already connected.
messageYes
expiresInMinutesNo
createsAccountIfNeededNo

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses the OAuth approval flow, that approving can create a new account with a 14-day Pro trial, and that the tool should not be called again while waiting. This goes beyond the annotations (readOnly=false, idempotent=false) to explain practical side effects and interaction expectations.

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 well-structured and efficient, packing the core action first, then the flow, when-to-use conditions, and post-call guidance into a few sentences without redundancy or filler.

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?

Given the output schema exists, the description does not need to detail return values. It covers the interaction lifecycle, including user steps, new vs. existing account handling, trial information, and when to wait — making it complete for an agent to execute 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?

The tool has zero parameters and the schema coverage is 100% (vacuously). The description adds no parameter semantics because none exist, which matches the baseline for high schema coverage.

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's purpose: 'Connect this conversation to a Dreambooth Studio account.' It explains the flow (returns a link, user signs in and approves) and distinguishes between new and existing users, making it distinct from sibling tools like connection_status or get_credits.

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 specifies when to use: 'Call this when another tool reports that no account is connected, or when someone asks to connect, sign up, or switch accounts.' It also provides follow-up instructions: ask the user to open the link, wait for confirmation, and do not call the tool again while waiting.

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

connection_statusCheck Dreambooth connectionA
Read-onlyIdempotent
Inspect

Whether this conversation currently has a Dreambooth account connected, and which one. Call this if you are unsure whether to run connect_account first. Cheap and read-only — it does not contact Dreambooth.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
emailYes
phaseYes
messageYes
connectedYes
waitingSecondsYesHow long the current device flow has been pending

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover readOnly, idempotent, and non-destructive traits. The description adds genuinely new context beyond those: 'Cheap and read-only — it does not contact Dreambooth.' This discloses that no network call occurs, which is valuable and not derivable from the annotations alone.

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 tightly packed sentences, front-loaded with the core purpose, followed by usage guidance and behavioral disclosure. Every sentence earns its place with no filler or repetition of the title.

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?

Complete for a simple parameterless status check: the description covers purpose, when to call, and behavior (no external contact), while annotations carry the safety profile and the output schema presumably documents the return value. Nothing an agent needs is missing.

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 there is nothing the description must explain; the 100% schema coverage and 0-param signature make parameter documentation a non-issue. The baseline for a parameterless tool 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 states a clear purpose: report whether a Dreambooth account is connected to the current conversation and which one. It implicitly distinguishes itself from siblings — it concerns connection state, not projects, credits, revenue, or wallet data — and names its direct sibling (connect_account) for contrast.

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 explicit, actionable guidance: 'Call this if you are unsure whether to run connect_account first.' This names the relevant alternative and the condition that selects this tool. It lacks an explicit when-not-to-use clause, but for a cheap status check that is a minor gap.

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

get_creditsGet AI credits and planA
Read-onlyIdempotent
Inspect

This operator's remaining AI credit balance and their current subscription plan, including when it ends. Call this when they ask how many credits are left, whether they can still run AI effects, or what plan they are on. Credits are separate from wallet money — do not confuse the two.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
planNoSubscription package name
creditsYesAI credits remaining. NOT money — see get_wallet_transactions for that.
videoCreditsNo
sessionCreditsNo
subscriptionEndDateNo

TDQS

A4.7/5.0
Behavior4/5

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

The description adds a behavioral nuance by noting credits are separate from wallet money, which is beyond the read-only/idempotent annotations. It does not contradict the annotations, though it does not elaborate on side effects (which are unnecessary given the annotations).

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

Conciseness5/5

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

The description is concise and well-structured, with a clear functional statement followed by usage guidance and a clarifying note, all in two sentences without redundancy.

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?

It provides sufficient context for the agent to decide when to call the tool, including the distinction from wallet transactions. It does not mention error cases or output format, but that is not essential for selection given the output schema is noted as existing.

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

Parameters5/5

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

The tool has no parameters, so the description correctly remains silent on parameter details. There is nothing to add beyond the empty schema, and the coverage is effectively complete.

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 retrieves the operator's remaining AI credit balance and subscription plan, and explicitly distinguishes it from wallet money, making its purpose unambiguous even without seeing the output schema.

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?

It provides explicit call scenarios: 'when they ask how many credits are left, whether they can still run AI effects, or what plan they are on,' which directly guides the agent on when to use this tool versus alternatives.

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

get_projectGet one booth in detailA
Read-onlyIdempotent
Inspect

Full detail for a single booth: its name, public link, currency, screen size, and the live status of the device running it — whether it is online, when it was last seen, app version, and camera/printer/internet state. Call this when the operator asks about one specific booth, or whether a booth is working. Get the project id from list_projects first.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectIdYesProject id from list_projects

Output Schema

ParametersJSON Schema
NameRequiredDescription
devicesYesEmpty when device monitoring is unavailable — not an error
projectYes
deviceCountYes

TDQS

A4.8/5.0
Behavior4/5

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

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, and the description adds no conflicting side effects. It clarifies that the returned status is live, though it does not mention error or rate-limit behavior; given the annotations, this is sufficient.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the tool's purpose and output fields, followed by clear usage guidance and a prerequisite. There is no redundant or vague wording.

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?

Given the output schema exists and the description enumerates the output fields and use cases, the tool is fully specified for an agent to call correctly. It names the prerequisite tool and the distinguishing scenario, covering all necessary context.

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

Parameters5/5

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

The schema has 100% coverage with a meaningful description for projectId, and the tool description reinforces that the id should come from list_projects first. This goes beyond the schema by providing the source of the parameter value.

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 'Get' a single booth's full detail, listing specific fields (name, public link, currency, screen size, live device status). It is distinct from siblings like list_projects and get_sessions, so an agent can easily select this tool for one specific booth.

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?

It explicitly says to call this tool when the operator asks about one specific booth or whether a booth is working. It also instructs to get the project id from list_projects first, providing clear operational guidance and preventing misuse.

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

get_revenue_summaryGet revenue summaryA
Read-onlyIdempotent
Inspect

Business revenue from this operator's photobooth sessions across EVERY payment channel — gateway payments, cash vouchers (cash collected at the booth) and discount vouchers — grouped by month or day and by currency, with extra-print revenue and AI-effect purchases reported separately. Use this for any question about income, revenue or omzet. It is also the right tool when wallet earnings look too small: cash and voucher money never reaches the wallet ledger, so for operators who take cash the wallet figure legitimately understates income.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoEnd date, ISO YYYY-MM-DD. Omit for all time.
fromNoStart date, ISO YYYY-MM-DD. Omit for all time.
groupByNoBucket size (default month)

Output Schema

ParametersJSON Schema
NameRequiredDescription
toNo
fromNo
foundNo
sourceNoWhich ledger the figures came from
totalsNo
bucketsNo
groupByNo
mixedCurrencyNo
reconciliationNo

TDQS

A4.6/5.0
Behavior4/5

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

Annotations cover safety (readOnlyHint, idempotentHint, non-destructive), which is confirmed and not contradicted. The description adds genuinely useful behavioral context beyond the annotations: the fact that revenue includes cash and vouchers that bypass the wallet ledger, and that below-minimum-reporting threshold amounts are never recorded — disclosure that helps the agent interpret results correctly rather than trust a misleadingly low wallet figure.

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?

Four sentences, front-loaded with the primary purpose. There is minor redundancy (the cash/voucher channel enumeration appears both at the start and in the wallet explanation), but each sentence earns its place — the wallet-routing note is critical disambiguation. A tighter single-sentence pass could trim a few words without harming clarity.

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 3-parameter, 0-required tool with a rich output schema and complete annotations, the description is complete: it covers purpose, all revenue channels, grouping dimensions, currency, the extra-print/AI-effect subcategory, and the wallet understatement edge case. The output schema handles return-value details, so nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the description doesn't need to re-document parameters. It reinforces the groupBy semantics by referencing grouping ('grouped by month or day and by currency') and adds the 'omzet' term that expands the query vocabulary the agent can map to this tool. No contradictions, and it doesn't over-repeat what the schema already states.

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 names a specific verb+resource ('Business revenue from this operator's photobooth sessions') and enumerates the exact scope: every payment channel, grouping by month/day and currency, with extra-print and AI-effect revenue reported separately. It clearly distinguishes itself from siblings like get_wallet_transactions by explicitly flagging the wallet-vs-revenue distinction.

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?

Gives explicit when-to-use guidance ('Use this for any question about income, revenue or omzet') and an exclusion with rationale: it is the right tool when wallet earnings look too small because cash/voucher money never reaches the wallet ledger. This proactively prevents the most likely misrouting to get_wallet_transactions.

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

get_sessionsGet photo sessionsA
Read-onlyIdempotent
Inspect

List the photo sessions recorded on this operator's booths, with totals. Call this when the operator asks how busy a booth has been, how many sessions ran in a period, or wants to inspect individual sessions. Supports date ranges, per-booth filtering, payment status and payment channel. For money totals rather than session counts, use get_revenue_summary instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoHow many sessions to return (default 20, max 100)
endDateNoISO date (YYYY-MM-DD) for the end of the range, inclusive
startDateNoISO date (YYYY-MM-DD) for the start of the range, inclusive
projectIdsNoComma-separated project ids to limit the range to specific booths
paymentSourceNoPayment channel, e.g. gateway, cash-voucher, discount-voucher
sessionStatusNoSession status filter
transactionStatusNoPayment status filter, e.g. settlement, pending

Output Schema

ParametersJSON Schema
NameRequiredDescription
totalNoSessions matching the filter, across all pages
returnedYesHow many are in this response
sessionsYes
totalPagesNo

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description does not need to repeat these. The description adds no extra behavioral context (e.g., auth, rate limits), but it does not contradict the annotations. Adequate given the existing annotations.

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

Conciseness5/5

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

The description is two sentences, front-loads the primary action, and avoids redundancy. It efficiently covers purpose, usage, and alternatives without unnecessary detail.

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 that an output schema exists (context signal), the description does not need to explain return values. It provides the purpose, when to use, and a clear alternative tool, which is sufficient context for an agent to decide when to invoke it.

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 of the 7 parameters having its own description. The tool description reinforces the date-range, per-booth filtering, payment status, and payment channel parameters but adds no new information beyond what the schema already provides. 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 that the tool lists photo sessions with totals, and explicitly distinguishes it from get_revenue_summary by focusing on session counts rather than money totals. The verb 'List' and resource 'photo sessions' are unambiguous.

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?

It explicitly says when to call the tool ('when the operator asks how busy a booth has been, how many sessions ran in a period, or wants to inspect individual sessions') and when not to ('For money totals... use get_revenue_summary instead'). No ambiguity.

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

get_wallet_transactionsGet wallet transactionsA
Read-onlyIdempotent
Inspect

This operator's wallet ledger: gateway earnings, withdrawals and refunds, newest first. Use for questions about the wallet, payouts or withdrawals. Do NOT use it to answer 'how much did I earn' — the wallet excludes cash and voucher income entirely, so for operators who take cash it understates real revenue. Use get_revenue_summary for income.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoEnd date, ISO YYYY-MM-DD
fromNoStart date, ISO YYYY-MM-DD
limitNoMax rows (default 10)

Output Schema

ParametersJSON Schema
NameRequiredDescription
totalNoRows matching the filter, across all pages
returnedYes
truncatedYes
transactionsYes

TDQS

A4.5/5.0
Behavior4/5

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

The annotations already cover readOnly, openWorld, idempotent, and non-destructive behavior. The description adds useful context about the data scope (excludes cash/voucher income, newest first) and the ordering, which goes beyond the annotations. It does not describe any side effects, but given the readOnly annotation, none are expected. The description is transparent about what data is included and what is not.

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

Conciseness5/5

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

The description is two sentences long. The first sentence defines the content and ordering of the ledger. The second sentence provides usage guidance and the distinction from get_revenue_summary. It is tight, focused, and every word contributes to clarifying the tool's purpose and appropriate use.

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?

The description provides all necessary context for an agent to decide when to use this tool: it explains the data scope, the ordering, the intended use cases, and the crucial caveat about cash/voucher income. It also points to the correct sibling tool for income queries, ensuring the agent selects the right tool for the user's intent. No additional context is needed.

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 (from, to, limit) with descriptions and types. The tool description does not add any additional semantic meaning beyond what the schema already provides. Since the schema is complete, the description does not need to elaborate, but it also doesn't enhance understanding of the parameters. This is a baseline score for when schema handles the semantics.

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 what the tool does: it returns the operator's wallet ledger with gateway earnings, withdrawals, and refunds, ordered newest first. It also explicitly distinguishes it from get_revenue_summary by noting that wallet excludes cash and voucher income, and directs users to the sibling tool for income questions. This leaves no ambiguity about the tool's purpose.

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?

The description explicitly states when to use the tool (for questions about the wallet, payouts, or withdrawals) and when not to (for income questions, since it understates revenue for cash operators). It even names the alternative tool (get_revenue_summary) to use instead. This gives clear, actionable guidance.

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

list_projectsList boothsA
Read-onlyIdempotent
Inspect

List the photobooth projects this operator owns, with id, name, public link slug, whether it is active, and its currency. Call this first whenever the operator names a booth — you need the project id to filter any other tool by booth. Does not return booth designs or page layouts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
projectsYes

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value by specifying the exact fields returned and explicitly stating what is NOT included (designs, layouts), which helps set expectations. There is no contradiction with annotations.

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

Conciseness5/5

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

Two sentences, no fluff. The first sentence front-loads the key purpose and fields, the second provides usage guidance and a negative. Every clause contributes necessary information, and the description is immediately scannable.

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?

Given the tool has no parameters, an output schema exists to document return values, and annotations cover the read-only nature, the description provides all necessary context: what it returns, when to call it, and what it doesn't cover. An agent has everything needed to invoke it correctly without ambiguity.

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 and the schema is empty, so there is nothing to describe. The baseline for 0 params is 4, and the description appropriately adds no unnecessary parameter detail. It doesn't need to compensate for schema gaps because there are no 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 states a specific verb ('List'), a specific resource ('photobooth projects this operator owns'), and enumerates the returned fields (id, name, public link slug, active status, currency). It also differentiates from siblings by positioning itself as the first call needed to obtain project IDs for filtering other tools, which clearly separates it from get_project and other getters.

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 instructs 'Call this first whenever the operator names a booth' and explains why (you need the project id to filter any other tool by booth). It also states what it does not return ('Does not return booth designs or page layouts'), giving clear exclusion criteria. This is direct and actionable guidance.

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

search_docsSearch Dreambooth documentationA
Read-onlyIdempotent
Inspect

Search the Dreambooth Studio documentation and FAQ. Call this before answering any question about the product, pricing, packages, hardware, printing, subscriptions, or troubleshooting — answer from the docs rather than from memory. Works without a connected account.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 5)
queryYesSearch terms, in English or Indonesian
localeNoDocs language (default en)

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYes
localeYes
resultsYes
resultCountYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already provide readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds the behavioral context that it works without an account and is a documentation search (non-mutating). No contradictions with annotations.

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

Conciseness5/5

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

The description is two concise sentences, front-loading the core purpose and usage. No redundant or extraneous information; structure is clear and easy to parse.

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?

The description gives complete usage context (when to call, why, and account requirement), combined with well-documented parameters and an available output schema, making it sufficient for an agent to decide when and how to invoke the 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 descriptions cover all three parameters (query, limit, locale) with clear explanations. Since schema coverage is 100%, the baseline is 3, and the tool description itself adds no extra parameter context beyond what the schema already provides.

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 'Search' and the resource 'Dreambooth Studio documentation and FAQ'. It also specifies when to use it (before answering product-related questions) and implicitly distinguishes from sibling tools that manage accounts, projects, credits, etc.

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 instructs to call this tool before answering questions about specific topics (product, pricing, packages, hardware, printing, subscriptions, troubleshooting) and to answer from docs rather than memory. Also notes it works without an account, providing clear context on when it is applicable.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changedget_project3 fields changed
      • addedOutput schema / properties / project / properties / screenSize / additionalProperties
        Added value: +false
      • addedOutput schema / properties / project / properties / screenSize / properties
        Added value: +{
        +  "height": {
        +    "type": "number"
        +  },
        +  "width": {
        +    "type": "number"
        +  }
        +}
      • changedOutput schema / properties / project / properties / screenSize / type
        Previous value: -"string"New value: +"object"
  2. 10 tool updates
    • First observedconnect_account
    • First observedconnection_status
    • First observedget_credits
    • First observedget_gallery_stats
    • First observedget_project
    • First observedget_revenue_summary
    • First observedget_sessions
    • First observedget_wallet_transactions
    • First observedlist_projects
    • First observedsearch_docs

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Provides AI assistants access to YOUREPT CRM admin data, including leads, students, teachers, lessons, payments, payouts, and financial reports, enabling natural-language queries about business metrics.
    17
    -
  • A
    license
    A
    quality
    F
    maintenance
    Provides real-time Stripe subscription analytics including MRR, churn, failed payments, and expiring trials. Enables AI assistants to answer business health questions like 'How's my business doing?'
    8
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.