Concierge: Stateful Workflows for MCP Tool Agents
Concierge provides a stateful workflow framework for Model Context Protocol tool agents, enabling complex multi-step task automation with state management and
Someone built a fix for MCP agents calling tools in the wrong order (like trying to checkout before adding items to cart).
The problem: When you load 50+ MCP tools, agents see everything at once and make dumb mistakes. Adding “please do X before Y” to system prompts barely helps.
Concierge turns MCPs into stateful workflows where agents only see relevant tools for each stage:
app = Concierge(FastMCP("my-server"))
app.stages = {
"browse": ["search_products"],
"cart": ["add_to_cart"],
"checkout": ["pay"]
}
app.transitions = {
"browse": ["cart"],
"cart": ["checkout"]
}
Now the agent literally can’t call pay() until it’s in the checkout stage. Works with existing MCPs, handles thousands of tools with semantic search.
Check it out: https://github.com/concierge-hq/concierge
Free hosting option included in the repo.
Related Tips
Benchmark Models in Transformers for Real Speed
Benchmark Models in Transformers for Real Speed explores performance testing methodologies and evaluation techniques for transformer architectures, comparing
ktop: Unified GPU/CPU Monitor for Hybrid Workloads
ktop is a unified monitoring tool that provides real-time visibility into both GPU and CPU performance metrics for hybrid workloads running across
llama.cpp Gets Full MCP Support with Tools & UI
llama.cpp now includes complete Model Context Protocol support, enabling developers to use tools and a user interface for enhanced local language model