Solutions Advisor
A chat assistant that answers scoping questions using tool calls against a typed service catalog, so it cannot invent a capability we do not offer.
The problem
Most company chatbots are a model pointed at a marketing site. They hallucinate pricing, invent capabilities, and produce answers the business would never stand behind. That is worse than no chatbot, because a prospect quotes it back to you.
How it is built
- 01
The service catalog is a typed TypeScript module, not scraped page text, so there is one authoritative definition of every engagement.
- 02
The catalog is serialized directly into the system prompt. At this corpus size, retrieval infrastructure would add latency and failure modes for no accuracy gain.
- 03
The catalog carries no pricing fields at all. Rather than instructing the model not to quote a figure and hoping it complies, there is simply no figure in its context to leak.
- 04
The system prompt is written to refuse invented numbers and to hand off to a human when a question exceeds what the catalog covers.
- 05
Lead capture is a tool the model calls when a conversation warrants it, rather than a form bolted underneath.
Stack
Demonstrates
- Grounding a model in structured business data rather than prose
- Tool calling with validated inputs
- Streaming responses with visible tool activity
- Refusal behavior when a question falls outside scope
Where it falls short
- It knows this firm's catalog only; it is not a general assistant.
- Estimates are ranges, and the interface says so. A real quote follows a conversation.