Skip to main content
Glama

Plan a stack from a product brief

plan_stack_from_spec
Read-onlyIdempotent

Use when the user shares a product brief or spec and asks what to build it with or what it will cost. Works out the jobs the brief needs (what it rules out, plans for later or already has is never priced), the volumes from its numbers or listed default rates, and its budget; prices the stack at several scales with choose_stack; and returns SPEC.md, AGENTS.md and a manifest for a coding agent. Keyword rules over the brief, no model call: when total.hypothetical is true, confirm the assumed jobs and volumes with the user before quoting the cost. Stackcut stores the arguments of tool calls to improve its recommendations (vendor names, prices, seats, features, usage numbers, billing amounts and project descriptions; account keys only as a one-way hash, billing and validation sources not at all; never IP addresses). Tool results are summarized; exit tools log only result counts, qualification flags and public evidence statuses, not answer contents. Don't send personal data or secrets.

Input Schema

NameRequiredDescriptionDefault
specYesThe product brief (markdown or plain text, up to 20,000 characters): what it does, who uses it, how it makes money, any numbers you know (users, conversion, prices, volumes). Never paste secrets or personal data.
preferNocheapest
scalesNoMAU targets to price, default [1000, 20000, 200000]
add_jobsNoJobs to add that the brief doesn't mention
overridesNoEdit the derived assumptions: a volume per MAU per month (per_user) or a fixed monthly total for a job
exclude_jobsNoDerived jobs to drop (job ids)
limit_per_jobNo
unit_economicsNoRevenue model for gross margin per scale: price_usd with conversion_rate, or revenue_per_mau

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / overrides / items / properties / unit / enum
      Previous value: -[
      -  "seats",
      -  "members",
      -  "mau",
      -  "emails_per_month",
      -  "emails_per_day",
      -  "contacts",
      -  "domains",
      -  "events_per_month",
      -  "pageviews_per_month",
      -  "errors_per_month",
      -  "requests_per_month",
      -  "requests_per_day",
      -  "searches_per_month",
      -  "cpu_ms_per_request",
      -  "db_gb",
      -  "storage_gb",
      -  "bandwidth_gb",
      -  "projects",
      -  "sites",
      -  "videos",
      -  "video_minutes",
      -  "responses_per_month",
      -  "tasks_per_month",
      -  "keywords_tracked",
      -  "credits_per_month",
      -  "history_days",
      -  "apps",
      -  "files",
      -  "event_types",
      -  "monitors",
      -  "tokens_per_month",
      -  "images_per_month",
      -  "audio_minutes_per_month",
      -  "characters_per_month",
      -  "transactions_per_month",
      -  "sandbox_hours_per_month",
      -  "concurrent_sessions",
      -  "session_minutes",
      -  "call_participants",
      -  "meeting_minutes",
      -  "records",
      -  "inboxes",
      -  "tokens_in_per_month",
      -  "tokens_out_per_month",
      -  "cached_tokens_per_month",
      -  "video_minutes_stored",
      -  "video_minutes_delivered_per_month",
      -  "gmv_usd_per_month",
      -  "payouts_per_month",
      -  "active_accounts",
      -  "verifications_per_month",
      -  "browser_hours_per_month",
      -  "proxy_gb_per_month",
      -  "job_executions_per_month",
      -  "sso_connections",
      -  "sso_users",
      -  "inbound_emails_per_month",
      -  "stream_hours_per_month",
      -  "vcpu_hours_per_month",
      -  "credits_usd_per_month",
      -  "disputes_per_month",
      -  "payout_volume_usd_per_month",
      -  "object_writes_per_month",
      -  "object_reads_per_month",
      -  "job_executions_per_day",
      -  "scim_connections",
      -  "searches_per_hour",
      -  "sms_per_month",
      -  "vectors_stored",
      -  "vector_queries_per_month",
      -  "cache_commands_per_month",
      -  "mtu",
      -  "gpu_seconds_per_month",
      -  "revenue_usd_per_month",
      -  "phone_minutes_per_month",
      -  "vector_read_units_per_month",
      -  "vector_write_units_per_month",
      -  "identified_events_per_month",
      -  "boards",
      -  "MAU",
      -  "tokens",
      -  "tokens_in",
      -  "tokens_out",
      -  "cached_tokens",
      -  "images",
      -  "video_minutes_delivered",
      -  "gb_stored",
      -  "gb_egress",
      -  "transactions",
      -  "gmv_usd",
      -  "sandbox_seconds",
      -  "sandbox_hours",
      -  "vm_hours",
      -  "vcpu_hours",
      -  "browser_hours",
      -  "proxy_gb",
      -  "job_executions",
      -  "verifications",
      -  "inbound_emails",
      -  "emails",
      -  "events",
      -  "errors",
      -  "exceptions",
      -  "requests",
      -  "pageviews",
      -  "searches",
      -  "payouts",
      -  "credits_usd",
      -  "stream_hours",
      -  "audio_minutes",
      -  "characters",
      -  "payout_volume_usd",
      -  "disputes",
      -  "object_writes",
      -  "object_reads",
      -  "sms",
      -  "vectors",
      -  "vector_queries",
      -  "cache_commands",
      -  "gpu_seconds",
      -  "gpu_hours",
      -  "revenue_usd",
      -  "phone_minutes"
      -]New value: +[
      +  "seats",
      +  "members",
      +  "mau",
      +  "emails_per_month",
      +  "emails_per_day",
      +  "contacts",
      +  "domains",
      +  "events_per_month",
      +  "pageviews_per_month",
      +  "errors_per_month",
      +  "requests_per_month",
      +  "requests_per_day",
      +  "searches_per_month",
      +  "cpu_ms_per_request",
      +  "db_gb",
      +  "storage_gb",
      +  "bandwidth_gb",
      +  "projects",
      +  "sites",
      +  "videos",
      +  "video_minutes",
      +  "responses_per_month",
      +  "tasks_per_month",
      +  "keywords_tracked",
      +  "credits_per_month",
      +  "history_days",
      +  "apps",
      +  "files",
      +  "event_types",
      +  "monitors",
      +  "tokens_per_month",
      +  "images_per_month",
      +  "audio_minutes_per_month",
      +  "characters_per_month",
      +  "transactions_per_month",
      +  "sandbox_hours_per_month",
      +  "concurrent_sessions",
      +  "session_minutes",
      +  "call_participants",
      +  "meeting_minutes",
      +  "records",
      +  "inboxes",
      +  "tokens_in_per_month",
      +  "tokens_out_per_month",
      +  "cached_tokens_per_month",
      +  "video_minutes_stored",
      +  "video_minutes_delivered_per_month",
      +  "gmv_usd_per_month",
      +  "payouts_per_month",
      +  "active_accounts",
      +  "verifications_per_month",
      +  "browser_hours_per_month",
      +  "proxy_gb_per_month",
      +  "job_executions_per_month",
      +  "sso_connections",
      +  "sso_users",
      +  "inbound_emails_per_month",
      +  "stream_hours_per_month",
      +  "vcpu_hours_per_month",
      +  "credits_usd_per_month",
      +  "disputes_per_month",
      +  "payout_volume_usd_per_month",
      +  "object_writes_per_month",
      +  "object_reads_per_month",
      +  "job_executions_per_day",
      +  "scim_connections",
      +  "searches_per_hour",
      +  "sms_per_month",
      +  "vectors_stored",
      +  "vector_queries_per_month",
      +  "cache_commands_per_month",
      +  "mtu",
      +  "gpu_seconds_per_month",
      +  "revenue_usd_per_month",
      +  "phone_minutes_per_month",
      +  "vector_read_units_per_month",
      +  "vector_write_units_per_month",
      +  "identified_events_per_month",
      +  "boards",
      +  "hosts",
      +  "tickets_per_month",
      +  "MAU",
      +  "tokens",
      +  "tokens_in",
      +  "tokens_out",
      +  "cached_tokens",
      +  "images",
      +  "video_minutes_delivered",
      +  "gb_stored",
      +  "gb_egress",
      +  "transactions",
      +  "gmv_usd",
      +  "sandbox_seconds",
      +  "sandbox_hours",
      +  "vm_hours",
      +  "vcpu_hours",
      +  "browser_hours",
      +  "proxy_gb",
      +  "job_executions",
      +  "verifications",
      +  "inbound_emails",
      +  "emails",
      +  "events",
      +  "errors",
      +  "exceptions",
      +  "requests",
      +  "pageviews",
      +  "searches",
      +  "payouts",
      +  "credits_usd",
      +  "stream_hours",
      +  "audio_minutes",
      +  "characters",
      +  "payout_volume_usd",
      +  "disputes",
      +  "object_writes",
      +  "object_reads",
      +  "sms",
      +  "vectors",
      +  "vector_queries",
      +  "cache_commands",
      +  "gpu_seconds",
      +  "gpu_hours",
      +  "revenue_usd",
      +  "phone_minutes"
      +]
  2. Changed1 schema field changed
    • changedInput schema / properties / overrides / items / properties / unit / enum
      Previous value: -[
      -  "seats",
      -  "members",
      -  "mau",
      -  "emails_per_month",
      -  "emails_per_day",
      -  "contacts",
      -  "domains",
      -  "events_per_month",
      -  "pageviews_per_month",
      -  "errors_per_month",
      -  "requests_per_month",
      -  "requests_per_day",
      -  "searches_per_month",
      -  "cpu_ms_per_request",
      -  "db_gb",
      -  "storage_gb",
      -  "bandwidth_gb",
      -  "projects",
      -  "sites",
      -  "videos",
      -  "video_minutes",
      -  "responses_per_month",
      -  "tasks_per_month",
      -  "keywords_tracked",
      -  "credits_per_month",
      -  "history_days",
      -  "apps",
      -  "files",
      -  "event_types",
      -  "monitors",
      -  "tokens_per_month",
      -  "images_per_month",
      -  "audio_minutes_per_month",
      -  "characters_per_month",
      -  "transactions_per_month",
      -  "sandbox_hours_per_month",
      -  "concurrent_sessions",
      -  "session_minutes",
      -  "call_participants",
      -  "meeting_minutes",
      -  "records",
      -  "inboxes",
      -  "tokens_in_per_month",
      -  "tokens_out_per_month",
      -  "cached_tokens_per_month",
      -  "video_minutes_stored",
      -  "video_minutes_delivered_per_month",
      -  "gmv_usd_per_month",
      -  "payouts_per_month",
      -  "active_accounts",
      -  "verifications_per_month",
      -  "browser_hours_per_month",
      -  "proxy_gb_per_month",
      -  "job_executions_per_month",
      -  "sso_connections",
      -  "sso_users",
      -  "inbound_emails_per_month",
      -  "stream_hours_per_month",
      -  "vcpu_hours_per_month",
      -  "credits_usd_per_month",
      -  "disputes_per_month",
      -  "payout_volume_usd_per_month",
      -  "object_writes_per_month",
      -  "object_reads_per_month",
      -  "job_executions_per_day",
      -  "scim_connections",
      -  "searches_per_hour",
      -  "sms_per_month",
      -  "vectors_stored",
      -  "vector_queries_per_month",
      -  "cache_commands_per_month",
      -  "mtu",
      -  "gpu_seconds_per_month",
      -  "revenue_usd_per_month",
      -  "phone_minutes_per_month",
      -  "vector_read_units_per_month",
      -  "vector_write_units_per_month",
      -  "MAU",
      -  "tokens",
      -  "tokens_in",
      -  "tokens_out",
      -  "cached_tokens",
      -  "images",
      -  "video_minutes_delivered",
      -  "gb_stored",
      -  "gb_egress",
      -  "transactions",
      -  "gmv_usd",
      -  "sandbox_seconds",
      -  "sandbox_hours",
      -  "vm_hours",
      -  "vcpu_hours",
      -  "browser_hours",
      -  "proxy_gb",
      -  "job_executions",
      -  "verifications",
      -  "inbound_emails",
      -  "emails",
      -  "events",
      -  "errors",
      -  "exceptions",
      -  "requests",
      -  "pageviews",
      -  "searches",
      -  "payouts",
      -  "credits_usd",
      -  "stream_hours",
      -  "audio_minutes",
      -  "characters",
      -  "payout_volume_usd",
      -  "disputes",
      -  "object_writes",
      -  "object_reads",
      -  "sms",
      -  "vectors",
      -  "vector_queries",
      -  "cache_commands",
      -  "gpu_seconds",
      -  "gpu_hours",
      -  "revenue_usd",
      -  "phone_minutes"
      -]New value: +[
      +  "seats",
      +  "members",
      +  "mau",
      +  "emails_per_month",
      +  "emails_per_day",
      +  "contacts",
      +  "domains",
      +  "events_per_month",
      +  "pageviews_per_month",
      +  "errors_per_month",
      +  "requests_per_month",
      +  "requests_per_day",
      +  "searches_per_month",
      +  "cpu_ms_per_request",
      +  "db_gb",
      +  "storage_gb",
      +  "bandwidth_gb",
      +  "projects",
      +  "sites",
      +  "videos",
      +  "video_minutes",
      +  "responses_per_month",
      +  "tasks_per_month",
      +  "keywords_tracked",
      +  "credits_per_month",
      +  "history_days",
      +  "apps",
      +  "files",
      +  "event_types",
      +  "monitors",
      +  "tokens_per_month",
      +  "images_per_month",
      +  "audio_minutes_per_month",
      +  "characters_per_month",
      +  "transactions_per_month",
      +  "sandbox_hours_per_month",
      +  "concurrent_sessions",
      +  "session_minutes",
      +  "call_participants",
      +  "meeting_minutes",
      +  "records",
      +  "inboxes",
      +  "tokens_in_per_month",
      +  "tokens_out_per_month",
      +  "cached_tokens_per_month",
      +  "video_minutes_stored",
      +  "video_minutes_delivered_per_month",
      +  "gmv_usd_per_month",
      +  "payouts_per_month",
      +  "active_accounts",
      +  "verifications_per_month",
      +  "browser_hours_per_month",
      +  "proxy_gb_per_month",
      +  "job_executions_per_month",
      +  "sso_connections",
      +  "sso_users",
      +  "inbound_emails_per_month",
      +  "stream_hours_per_month",
      +  "vcpu_hours_per_month",
      +  "credits_usd_per_month",
      +  "disputes_per_month",
      +  "payout_volume_usd_per_month",
      +  "object_writes_per_month",
      +  "object_reads_per_month",
      +  "job_executions_per_day",
      +  "scim_connections",
      +  "searches_per_hour",
      +  "sms_per_month",
      +  "vectors_stored",
      +  "vector_queries_per_month",
      +  "cache_commands_per_month",
      +  "mtu",
      +  "gpu_seconds_per_month",
      +  "revenue_usd_per_month",
      +  "phone_minutes_per_month",
      +  "vector_read_units_per_month",
      +  "vector_write_units_per_month",
      +  "identified_events_per_month",
      +  "boards",
      +  "MAU",
      +  "tokens",
      +  "tokens_in",
      +  "tokens_out",
      +  "cached_tokens",
      +  "images",
      +  "video_minutes_delivered",
      +  "gb_stored",
      +  "gb_egress",
      +  "transactions",
      +  "gmv_usd",
      +  "sandbox_seconds",
      +  "sandbox_hours",
      +  "vm_hours",
      +  "vcpu_hours",
      +  "browser_hours",
      +  "proxy_gb",
      +  "job_executions",
      +  "verifications",
      +  "inbound_emails",
      +  "emails",
      +  "events",
      +  "errors",
      +  "exceptions",
      +  "requests",
      +  "pageviews",
      +  "searches",
      +  "payouts",
      +  "credits_usd",
      +  "stream_hours",
      +  "audio_minutes",
      +  "characters",
      +  "payout_volume_usd",
      +  "disputes",
      +  "object_writes",
      +  "object_reads",
      +  "sms",
      +  "vectors",
      +  "vector_queries",
      +  "cache_commands",
      +  "gpu_seconds",
      +  "gpu_hours",
      +  "revenue_usd",
      +  "phone_minutes"
      +]
  3. Changed4 schema fields changed
    • addedInput schema / properties / overrides / items / properties / basis / maxLength
      Added value: +2000
    • addedInput schema / properties / overrides / items / properties / unit / maxLength
      Added value: +2000
    • addedInput schema / properties / prefer / maxLength
      Added value: +2000
    • addedInput schema / properties / unit_economics / properties / billing / maxLength
      Added value: +2000
  4. Changed1 schema field changed
    • changedInput schema / properties / overrides / items / properties / unit / enum
      Previous value: -[
      -  "seats",
      -  "members",
      -  "mau",
      -  "emails_per_month",
      -  "emails_per_day",
      -  "contacts",
      -  "domains",
      -  "events_per_month",
      -  "pageviews_per_month",
      -  "errors_per_month",
      -  "requests_per_month",
      -  "requests_per_day",
      -  "searches_per_month",
      -  "cpu_ms_per_request",
      -  "db_gb",
      -  "storage_gb",
      -  "bandwidth_gb",
      -  "projects",
      -  "sites",
      -  "videos",
      -  "video_minutes",
      -  "responses_per_month",
      -  "tasks_per_month",
      -  "keywords_tracked",
      -  "credits_per_month",
      -  "history_days",
      -  "apps",
      -  "files",
      -  "event_types",
      -  "monitors",
      -  "tokens_per_month",
      -  "images_per_month",
      -  "audio_minutes_per_month",
      -  "characters_per_month",
      -  "transactions_per_month",
      -  "sandbox_hours_per_month",
      -  "concurrent_sessions",
      -  "session_minutes",
      -  "call_participants",
      -  "meeting_minutes",
      -  "records",
      -  "inboxes",
      -  "tokens_in_per_month",
      -  "tokens_out_per_month",
      -  "cached_tokens_per_month",
      -  "video_minutes_stored",
      -  "video_minutes_delivered_per_month",
      -  "gmv_usd_per_month",
      -  "payouts_per_month",
      -  "active_accounts",
      -  "verifications_per_month",
      -  "browser_hours_per_month",
      -  "proxy_gb_per_month",
      -  "job_executions_per_month",
      -  "sso_connections",
      -  "sso_users",
      -  "inbound_emails_per_month",
      -  "stream_hours_per_month",
      -  "vcpu_hours_per_month",
      -  "credits_usd_per_month",
      -  "disputes_per_month",
      -  "payout_volume_usd_per_month",
      -  "object_writes_per_month",
      -  "object_reads_per_month",
      -  "job_executions_per_day",
      -  "scim_connections",
      -  "MAU",
      -  "tokens",
      -  "tokens_in",
      -  "tokens_out",
      -  "cached_tokens",
      -  "images",
      -  "video_minutes_delivered",
      -  "gb_stored",
      -  "gb_egress",
      -  "transactions",
      -  "gmv_usd",
      -  "sandbox_seconds",
      -  "sandbox_hours",
      -  "vm_hours",
      -  "vcpu_hours",
      -  "browser_hours",
      -  "proxy_gb",
      -  "job_executions",
      -  "verifications",
      -  "inbound_emails",
      -  "emails",
      -  "events",
      -  "errors",
      -  "exceptions",
      -  "requests",
      -  "pageviews",
      -  "searches",
      -  "payouts",
      -  "credits_usd",
      -  "stream_hours",
      -  "audio_minutes",
      -  "characters",
      -  "payout_volume_usd",
      -  "disputes",
      -  "object_writes",
      -  "object_reads"
      -]New value: +[
      +  "seats",
      +  "members",
      +  "mau",
      +  "emails_per_month",
      +  "emails_per_day",
      +  "contacts",
      +  "domains",
      +  "events_per_month",
      +  "pageviews_per_month",
      +  "errors_per_month",
      +  "requests_per_month",
      +  "requests_per_day",
      +  "searches_per_month",
      +  "cpu_ms_per_request",
      +  "db_gb",
      +  "storage_gb",
      +  "bandwidth_gb",
      +  "projects",
      +  "sites",
      +  "videos",
      +  "video_minutes",
      +  "responses_per_month",
      +  "tasks_per_month",
      +  "keywords_tracked",
      +  "credits_per_month",
      +  "history_days",
      +  "apps",
      +  "files",
      +  "event_types",
      +  "monitors",
      +  "tokens_per_month",
      +  "images_per_month",
      +  "audio_minutes_per_month",
      +  "characters_per_month",
      +  "transactions_per_month",
      +  "sandbox_hours_per_month",
      +  "concurrent_sessions",
      +  "session_minutes",
      +  "call_participants",
      +  "meeting_minutes",
      +  "records",
      +  "inboxes",
      +  "tokens_in_per_month",
      +  "tokens_out_per_month",
      +  "cached_tokens_per_month",
      +  "video_minutes_stored",
      +  "video_minutes_delivered_per_month",
      +  "gmv_usd_per_month",
      +  "payouts_per_month",
      +  "active_accounts",
      +  "verifications_per_month",
      +  "browser_hours_per_month",
      +  "proxy_gb_per_month",
      +  "job_executions_per_month",
      +  "sso_connections",
      +  "sso_users",
      +  "inbound_emails_per_month",
      +  "stream_hours_per_month",
      +  "vcpu_hours_per_month",
      +  "credits_usd_per_month",
      +  "disputes_per_month",
      +  "payout_volume_usd_per_month",
      +  "object_writes_per_month",
      +  "object_reads_per_month",
      +  "job_executions_per_day",
      +  "scim_connections",
      +  "searches_per_hour",
      +  "sms_per_month",
      +  "vectors_stored",
      +  "vector_queries_per_month",
      +  "cache_commands_per_month",
      +  "mtu",
      +  "gpu_seconds_per_month",
      +  "revenue_usd_per_month",
      +  "phone_minutes_per_month",
      +  "vector_read_units_per_month",
      +  "vector_write_units_per_month",
      +  "MAU",
      +  "tokens",
      +  "tokens_in",
      +  "tokens_out",
      +  "cached_tokens",
      +  "images",
      +  "video_minutes_delivered",
      +  "gb_stored",
      +  "gb_egress",
      +  "transactions",
      +  "gmv_usd",
      +  "sandbox_seconds",
      +  "sandbox_hours",
      +  "vm_hours",
      +  "vcpu_hours",
      +  "browser_hours",
      +  "proxy_gb",
      +  "job_executions",
      +  "verifications",
      +  "inbound_emails",
      +  "emails",
      +  "events",
      +  "errors",
      +  "exceptions",
      +  "requests",
      +  "pageviews",
      +  "searches",
      +  "payouts",
      +  "credits_usd",
      +  "stream_hours",
      +  "audio_minutes",
      +  "characters",
      +  "payout_volume_usd",
      +  "disputes",
      +  "object_writes",
      +  "object_reads",
      +  "sms",
      +  "vectors",
      +  "vector_queries",
      +  "cache_commands",
      +  "gpu_seconds",
      +  "gpu_hours",
      +  "revenue_usd",
      +  "phone_minutes"
      +]
  5. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations cover safety (readOnly, idempotent, closed-world), and the description adds real behavior beyond them: deterministic keyword rules with no model call, and a mandatory user-confirmation gate when total.hypothetical is true. The data-retention paragraph is substantive but generic boilerplate that even references exit tools unrelated to this one, diluting its value.

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?

It is front-loaded with the trigger phrase, which is good, but the body is a dense run-on of semicolon-separated clauses and a long storage/privacy block. That privacy text is disproportionately large for a planning tool and mixes in details about exit tools and other result summarization, so not every sentence earns its place.

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?

With no output schema, the description carries the return-value burden and does name the artifacts produced (SPEC.md, AGENTS.md, manifest). For an 8-parameter tool with nested objects it also explains the derivation pipeline and the revenue/margin angle, leaving only minor gaps around the tuning 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?

Schema description coverage is 75%, so the schema already documents spec, scales, overrides and unit_economics. The description adds meaning for derived-job semantics ('what it rules out, plans for later or already has is never priced') but says nothing about prefer, limit_per_job, add_jobs or exclude_jobs, so it only marginally exceeds 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?

Specific verb+resource ('Plan a stack from a product brief') plus an actual account of what it does: derives jobs, volumes and budget from a brief, prices at several scales via choose_stack, and returns SPEC.md, AGENTS.md and a manifest. It also discloses the mechanism (keyword rules, no model call), which lets an agent distinguish it from generic stack tools.

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?

'Use when the user shares a product brief or spec and asks what to build it with or what it will cost' is an explicit trigger condition, and the hypothetical-cost confirmation step is spelled out. It names choose_stack as its pricing dependency but does not contrast itself with siblings like audit_stack or choose_stack as entry points.

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.