Guide
LLM integration overview
Anamaya MCP is a general travel MCP for any LLM client. Maya’s chatbot is one consumer. ChatGPT, Claude, Gemini, Cursor, LangChain, and custom orchestrators are first-class.
Path
Client LLM → Anamaya MCP → Anamaya OMS → Biztrip / suppliers MCP is a capability gateway, not a flight/hotel database. Inventory is always live from OMS.
Transports
| Transport | When | PoC |
|---|---|---|
| Streamable HTTP | ChatGPT / Claude / Gemini / cloud agents | https://maya.suherman.net/mcp/anamaya/v1 |
| Legacy SSE | Older MCP clients | https://maya.suherman.net/mcp/anamaya/v1/sse |
| REST facade | Hosts without MCP SDK | https://maya.suherman.net/mcp/anamaya/v1/api/* |
| stdio | Local Cursor / developer demos | node dist/index.js |
Dual-layer authentication
Layer Credential Purpose MCP gate (optional) Authorization: Bearer <MAYA_ANAMAYA_MCP_API_TOKEN> Allows the client network to reach MCP OMS identity (required) OMS email + password on tools Login to Anamaya OMS; JWT cached inside MCP only Mutation gate confirm: true Blocks accidental book / upload / approve
This is OMS login auth, not OAuth. Do not expect
/oauth/accesstoken flows from the public Anamaya API docs.
Tool call flow
- Host connects →
tools/list shows anamaya_* anamaya_login → token_cached: true - Optional: policies / users / client RAG
- Search flight / hotel → filter ≤3 options → show user
- Human confirms → mutations with
confirm: true - Poll booking →
anamaya_files_fetch for PDF
Invariants for models
- Never invent fares, rooms, or e-tickets
- Never ask MCP to return OMS JWTs
- Never call mutating tools without user confirmation +
confirm: true - Empty inventory → honest empty result
Client-specific guides