Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NINJA_APP_CHECKNoOptional Firebase App Check token
NINJA_USER_AGENTNoOptional mobile user agent override
NINJA_APP_VERSIONNoOptional mobile app version override
NINJA_MCP_STATE_FILENoPath to the state file. Default is ~/.ninja-mcp/state.json~/.ninja-mcp/state.json

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
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

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
agent-guideCondensed API guide for auth, search, draft checkout, and payment handling.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Khaled-Harthi/Ninja-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server