mcp-oda
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-odaAdd two liters of whole milk and a dozen eggs to my cart"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
If this project is just what you needed and/or has been helpful to you, please consider buying me a coffee ☕

Features
This MCP server provides tools to programmatically interact with Oda's grocery shopping platform:
Search products - Search for groceries with support for Norwegian terms
Browse recipes - Search, filter, and view recipe details
Saved shopping lists - View your saved lists, add or remove products, and import a whole list into the cart
Purchase history - See your most frequently ordered products
Manage shopping cart - View cart contents and recommendations, add/remove items or set exact quantities, add recipe ingredients
Delivery slots - See upcoming delivery slots, prices and ordering deadlines (read-only)
CLI access - All operations available as CLI subcommands in addition to MCP tools
Session persistence - Maintains login session across restarts
Related MCP server: Willys MCP Server
Installation
This project requires Node.js (v18+).
Usage
Initial Setup
Authenticate with your Oda account:
read -rsp "Oda password: " ODA_PASSWORD; printf '\n'
printf '%s' "$ODA_PASSWORD" | npx github:gbbirkisson/mcp-oda auth login --user your@email.com --pass-stdin
unset ODA_PASSWORDVerify your login status:
npx github:gbbirkisson/mcp-oda auth userSession data is stored by default in~/.mcp-oda
CLI Commands
Running npx github:gbbirkisson/mcp-oda with no arguments prints help. The mcp subcommand
starts the MCP server. All other operations are available as subcommands:
# Start the MCP server
npx github:gbbirkisson/mcp-oda mcp
# Products
npx github:gbbirkisson/mcp-oda product search melk
npx github:gbbirkisson/mcp-oda product search melk --page 2
npx github:gbbirkisson/mcp-oda product add 132
# Saved shopping lists
npx github:gbbirkisson/mcp-oda saved-list list
npx github:gbbirkisson/mcp-oda saved-list details 123
# Adds a product to a saved list; requires an explicit confirmation string
npx github:gbbirkisson/mcp-oda saved-list add-product 123 456 --confirmation "UPDATE SAVED LIST"
# Removes a product from a saved list; requires an explicit confirmation string
npx github:gbbirkisson/mcp-oda saved-list remove-product 123 456 --confirmation "UPDATE SAVED LIST"
# Adds every list item to the cart; requires an explicit confirmation string
npx github:gbbirkisson/mcp-oda saved-list add 123 --confirmation "ADD SAVED LIST TO CART"
# Purchase history
npx github:gbbirkisson/mcp-oda purchases frequent
npx github:gbbirkisson/mcp-oda purchases frequent --limit 10 --max-orders 50
# Cart
npx github:gbbirkisson/mcp-oda cart list
npx github:gbbirkisson/mcp-oda cart recommendations --limit 10 --exclude-in-cart
npx github:gbbirkisson/mcp-oda cart remove 132
# Sets the total quantity of a product; 0 removes it
npx github:gbbirkisson/mcp-oda cart set 132 --count 3
# Clears the whole cart; requires an explicit confirmation string
npx github:gbbirkisson/mcp-oda cart clear --confirmation "CLEAR CART"
# Recipes
npx github:gbbirkisson/mcp-oda recipe search pizza
npx github:gbbirkisson/mcp-oda recipe details 123
npx github:gbbirkisson/mcp-oda recipe add 123 --portions 4
npx github:gbbirkisson/mcp-oda recipe remove 123
# Delivery slots and ordering deadlines (read-only)
npx github:gbbirkisson/mcp-oda delivery slots
# Authentication
read -rsp "Oda password: " ODA_PASSWORD; printf '\n'
printf '%s' "$ODA_PASSWORD" | npx github:gbbirkisson/mcp-oda auth login --user your@email.com --pass-stdin
unset ODA_PASSWORD
npx github:gbbirkisson/mcp-oda auth logout
npx github:gbbirkisson/mcp-oda auth user
# Maintenance
npx github:gbbirkisson/mcp-oda cleanConfiguration
Claude Desktop
Claude Desktop configuration example:
{
"mcpServers": {
"oda": {
"command": "npx",
"args": ["-y", "github:gbbirkisson/mcp-oda", "mcp"]
}
}
}Claude Code
/plugin marketplace add gbbirkisson/mcp-oda
/plugin install mcp-oda@mcp-odaGemini CLI
gemini extensions install https://github.com/gbbirkisson/mcp-odaTroubleshooting
Session not persisting
If your login session is not persisting between runs:
Try running with the
cleansubcommand to remove old session data:npx github:gbbirkisson/mcp-oda cleanRe-authenticate:
read -rsp "Oda password: " ODA_PASSWORD; printf '\n' printf '%s' "$ODA_PASSWORD" | npx github:gbbirkisson/mcp-oda auth login --user your@email.com --pass-stdin unset ODA_PASSWORDMake sure you're using the same
--data-dirfor all commands if you've overridden the default.
This server cannot be deployed
Maintenance
Related MCP Connectors
Unlock the power of food transparency with our Open Food Facts MCP server. Easily look up any food
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Hosted MCP for e-commerce: live product catalog, stock, and pricing for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceEnables agentic grocery shopping on Oda (Norway) and Mathem (Sweden) platforms through an MCP-compatible interface. Users can search for products, manage their shopping cart, and access order history using natural language commands.1MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server for Sweden's largest grocery chain Willys. Enables controlling your shopping cart, browsing orders, searching products, and getting AI-powered recommendations from any MCP client.4MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for grocery-related web automation using Playwright, enabling AI assistants to interact with grocery websites.-
- AlicenseAqualityCmaintenanceMCP server that queries Norwegian grocery store flyers (kundeaviser) to help AI agents plan cheap meals based on current offers.7MIT