Skip to content
Discussion options

You must be logged in to vote

Hi @gracew99 I presume you mean this sample https://github.com/azure-samples/azureai-travel-agent-python

GET /tools is for tool discovery/UI: list available MCP tools, validate connectivity, and surface schemas for debugging or UX.
POST /chat is the authoritative runtime: the server must attach MCP tools again to ensure correct config, auth, approvals, and freshness.

The duplication is intentional, not a bug, clients aren’t trusted as the source of truth.

You can skip GET /tools if you’re building a pure API with no UI/inspection needs; just use POST /chat.

Best practice
Keep GET /tools lightweight/read-only (cached discovery), keep POST /chat self‑contained for execution.

Replies: 2 comments

Comment options

You must be logged in to vote
0 replies
Answer selected by amynic
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants