Office Supplies Inventory NANDA Service using MCP Server + NANDA Registry + NANDA host client
LocalAbout Office Supplies Inventory NANDA Service using MCP Server + NANDA Registry + NANDA host client
This example MCP service serves office-supply inventory data from a CSV file for AI assistants to query. Its CSV can be adapted to other standard inventories, and the service can be deployed in the cloud for use with the NANDA browser client.
Key features
- 01List all items in the inventory
- 02Retrieve item details by name
- 03Load inventory data from CSV
- 04Include additional CSV columns in item details
- 05Support cloud deployment and NANDA registration
Use cases
- 01Let an AI assistant query office-supply inventory
- 02Look up inventory fields for a named item
- 03Deploy another inventory lookup service using the same framework
MCP support
The MCP server exposes `get_items` and `get_item_info` for inventory lists and item details. The README describes SSE connections and use through the NANDA browser client after registration in NANDA Registry.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEOffice Supplies Inventory NANDA Service using MCP Server + NANDA Registry + NANDA host client
Create a NANDA service using Model Context Protocol (MCP) server code that provides information about office supplies inventory. This service allows AI assistants to query and retrieve information about office supplies using the MCP standard. You will use cloud hosted server and a web based NANDA host client. No need to install a local server.
You can deploy a consumer facing web-app for any standard inventory using the same framework.
Overview
This project implements a NANDA service using MCP server code that serves office inventory data from a CSV file. It provides tools that allow AI assistants to:
- Get a list of all available items in the inventory
- Retrieve detailed information about specific items by name
Prerequisites
- Python 3.9 or higher
- Dependencies listed in
requirements.txt
Files in this Repository
officesupply.py: The main server implementationinventory.csv: CSV file containing the office supply inventory databuild.sh: Script for setting up the environmentrun.sh: Script for running the serverrequirements.txt: List of Python dependencies
Quick Start
Local Setup
-
Clone this repository:
git clone https://github.com/aidecentralized/nanda-servers.git cd office-supplies-shop-server -
Choose one of the environment setup options below:
Option A: Using Python venv
-
Create a Python virtual environment:
python -m venv venv -
Activate the virtual environment:
- On Linux/macOS:
source venv/bin/activate - On Windows:
venv\Scripts\activate
- On Linux/macOS:
-
Install dependencies:
pip install -r requirements.txt
Option B: Using Conda
-
Create a new conda environment:
conda create --name inventory_env python=3.11 -
Activate the conda environment:
conda activate inventory_env -
Install dependencies:
pip install -r requirements.txt
Running the Server Locally to Test
After setting up your environment using either option above:
-
Run the server:
python officesupply.py -
The server will be available at: http://localhost:8080
Testing with MCP Inspector
-
Install the MCP Inspector:
npx @modelcontextprotocol/inspector -
Open the URL provided by the inspector in your browser
-
Connect using SSE transport type
-
Enter your server URL with
/sseat the end (e.g.,http://localhost:8080/sse) -
Test the available tools:
get_items: Lists all item names in the inventoryget_item_info: Retrieves details about a specific item
CSV Data Format
The server expects an inventory.csv file with at least the following column:
item_name: The name of the inventory item
Additional columns will be included in the item details returned by get_item_info.
Within this purview, you can edit the CSV file for your requirements, and the MCP server should work for your CSV file as well.
Deployment
Preparing for Cloud Deployment
-
Make sure your repository includes:
- All code files
requirements.txtbuild.shandrun.shscripts
-
Set executable permissions on the shell scripts:
chmod +x build.sh run.shFor Windows, run
wsl chmod +x build.sh run.sh
Create AWS account
Deploying to AWS AppRunner
-
Create AWS account
-
Add your credit card for billing
-
Go to AWS AppRunner (https://console.aws.amazon.com/apprunner)
-
Log in (if you’re not already)
-
Once you're in the App Runner dashboard, you’ll see a blue “Create service” button near the top right of the page. Click that.
-
Create a new service from your source code repository
-
Configure the service:
- Python 3.11 runtime
- Build command:
./build.sh - Run command:
./run.sh - Port: 8080
-
Deploy and wait for completion
-
Test the public endpoint with MCP Inspector
Registering on NANDA Registry
- Go to NANDA Registry
- Login or create an account
- Click "Register a new server"
- Fill in the details:
- Server name
- Description
- Public endpoint URL (without
/sse) - Tags and categories
- Register your server
Usage in NANDA Host, a Browser based Client
- Visit nanda.mit.edu
- Go to the NANDA host
- Add your Anthropic API key
- Find your MCP server in the registry
- Add it to your host
- Test by asking questions that use your server's functionality
Troubleshooting
- Ensure your CSV file is properly formatted
- Test the server locally before deploying
- Verify your public endpoint works with MCP Inspector before registering
- Check the logs on AWS if deployment fails
Additional Resources
Check out this video tutorial for a walkthrough of setting up and using the MCP server:

Acknowledgments
Based on the NANDA Servers repository. Follow ProjectNanda at https://nanda.mit.edu
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.