Ninja MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NINJA_APP_CHECK | No | Optional Firebase App Check token | |
| NINJA_USER_AGENT | No | Optional mobile user agent override | |
| NINJA_APP_VERSION | No | Optional mobile app version override | |
| NINJA_MCP_STATE_FILE | No | Path to the state file. Default is ~/.ninja-mcp/state.json | ~/.ninja-mcp/state.json |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ninja_agent_guideB | Return the condensed guide for agents using this MCP. |
| ninja_auth_statusA | Check whether local Ninja device auth state exists without exposing secrets. |
| ninja_auth_start_loginA | Register a device session and start phone login. This sends an OTP. |
| ninja_auth_verify_otpA | Verify the one-time Ninja login OTP. After this, the saved device auth key can be reused by this MCP. |
| ninja_saved_addressesA | List saved addresses. Coordinates are approximate by default to avoid leaking exact home/work locations. |
| ninja_discover_vertical_contextB | Resolve vertical availability for a saved address or coordinates. Product verticals include store/search context; restaurants use separate branch/menu tools. |
| ninja_discover_retail_contextC | Compatibility alias for retail/grocery store/search context. Prefer ninja_discover_vertical_context for new agents. |
| ninja_search_productsC | Search retail, pharmacy, or beauty products using Ninja's Fahras endpoint. Returns imageUrls and orderItemId/productId for cart line items. |
| ninja_search_restaurantsA | Search restaurant branches near a saved address or coordinates. Use branchId with ninja_restaurant_menu before drafting a restaurant order. |
| ninja_restaurant_menuC | Fetch a restaurant branch menu. Menu output includes menuId, product imageUrls, variant orderItemId values, and topping/modifier ids. |
| ninja_create_draft_orderB | Validate a cart and pricing without creating a payable checkout. Supports retail, pharmacy OTC, beauty, and restaurant variant/topping line items. |
| ninja_create_checkoutA | Create or recover a pending Ninja checkout/payment request. This creates an unpaid order/payment request; it does not pay. |
| ninja_pending_payment_methodsA | Inspect methods for the saved pending checkout payment request before choosing any payment flow. |
| ninja_saved_payment_optionsA | List account-level payment options, saved cards, and wallets for an optional amount. Use pending checkout methods for actual checkout availability. |
| ninja_initiate_stc_payB | Initiate STC Pay for the saved pending checkout. Sends a fresh STC Pay OTP. |
| ninja_submit_stc_otpC | Submit an STC Pay OTP. This can complete payment and place the order. |
| ninja_pay_saved_cardA | Pay the saved pending checkout with a saved card. Use cardIndex from ninja_pending_payment_methods or provide a full cardId if known. |
| ninja_pay_walletC | Pay the saved pending checkout using wallet balance. |
| ninja_show_pending_orderA | Show redacted order/payment status for the saved pending checkout. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| agent-guide | Condensed API guide for auth, search, draft checkout, and payment handling. |
TDQS
Scored across 19 tools
Most tools have clear distinct purposes, but ninja_discover_retail_context is a deprecated alias for ninja_discover_vertical_context, causing slight overlap. Other tools like the two OTP verification ones are for different flows.
All tools follow a consistent verb_noun pattern with snake_case and the 'ninja_' prefix. No mixed conventions or unpredictable naming.
19 tools is slightly above the ideal 3-15 range, but still reasonable for a comprehensive ordering and payment system covering auth, checkout, payments, search, and more.
The set covers the main checkout and payment workflow, but lacks tools for updating or cancelling orders, viewing order history, or managing cart items. These gaps could cause agent failures.