Skip to main content
Glama

Egonex

Ask about a listing

ask_seller

Ask one question about a listing before your user decides: availability, condition, what is included, timing, location, sizes, how delivery or pickup works. If the seller has their assistant (Ego) answering (seller.answers_questions is true in search results), the answer comes back in this response, written only from the seller's public page and listings; when the seller has set a lowest price, Ego can also talk price with you about that listing: it may counter once, and when you agree a price the answer has deal (deal.id, valid for 24 hours, for one request_order). For 24 hours it holds the price it named to you and won't go lower, and it declines questions that are not about this store (reason declined). Otherwise the response says the seller answers in chat. For a follow-up about the same listing, pass the conversation_id from the previous answer so Ego sees the earlier questions and answers. After three declined questions in a row in one conversation, Ego stops answering there (reason conversation_stopped). Ego answers a limited number of questions from you per seller per minute and per day (reasons slow_down, handoff, email_required); Ego may tell the seller about a question it can't answer, but the seller's reply doesn't come back through ask_seller. To send your question to the seller as your user instead, use message_seller.

Input Schema

NameRequiredDescriptionDefault
offer_idYesThe listing id from search_offers (the 8-character id at the end of a listing page URL also works).
questionYesYour question, up to 500 characters.
conversation_idNoFrom the previous ask_seller answer about the same listing (kept for 30 minutes): Ego then sees the earlier questions and answers.

Output Schema

NameRequiredDescriptionDefault
dealNoThe price Ego agreed with you (only when it agreed one). Pass deal.id as deal_id to request_order within 24 hours; that request then keeps this price for pay_order and for the order your user pays on Egonex.
nextYesWhat to do next.
offerYesOne listing.
answerNoThe answer, or what Ego said when it didn't answer.
reasonNoWhy it wasn't answered: seller_answers_in_chat, handoff (the seller has to answer, also after many questions from you today), busy (Ego answers no more questions for this seller today; send the seller a message instead), slow_down (too many questions in a minute), email_required (send it as a message instead), unavailable, declined (not about this store) or conversation_stopped.
answeredYestrue = answer is the seller's assistant answering now.
conversation_idNoPass it with the next question about the same listing (kept for 30 minutes).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare safety flags (readOnlyHint=false, idempotentHint=false), so the description carries the real behavioral burden and does so richly: response varies by whether seller.answers_questions is true, price negotiation may yield a deal valid 24 hours for one request_order, a 24-hour price hold, decline reason codes (declined, slow_down, handoff, email_required, conversation_stopped), three-declines-per-conversation cutoff, and per-minute/per-day rate limits. It also warns that a seller's reply to an escalated question does not come back through this 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?

The core purpose and the sibling distinction are front-loaded, and nearly every clause carries unique operational information (rate limits, deal terms, stop conditions). However, it is a dense single block mixing behavioral rules, error reasons, and negotiation mechanics without structural separation, which makes it harder to scan than it needs to be.

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?

An output schema exists, yet the description still maps the meaningful response shapes an agent must branch on — inline answer, deal object, 'seller answers in chat,' and the terminal reason codes. For a non-idempotent tool with negotiation and rate-limit side effects, nothing critical to correct invocation appears 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 baseline is 3, but the description adds operational meaning: conversation_id exists so 'Ego sees the earlier questions and answers,' and it ties deal.id forward to request_order. It does not restate the offer_id sourcing rule (already in schema) or the 500-character limit, but the added conversational continuity semantics justify going above baseline.

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?

Opens with a specific verb and resource — 'Ask one question about a listing' — and immediately scopes what questions are appropriate (availability, condition, timing, location, sizes, delivery/pickup). It also names the sibling it is not: 'To send your question to the seller as your user instead, use message_seller,' so an agent can distinguish it from message_seller without opening either 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?

Explicitly frames the use case as pre-decision ('before your user decides') and gives a concrete follow-up rule: pass conversation_id 'for a follow-up about the same listing.' It also names the alternative path (message_seller) and its selecting condition, plus the branch where the seller has no Ego assistant and 'answers in chat.'

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