Office Supplies Inventory NANDA Service

Office Supplies Inventory NANDA Service

MCP server that allows AI assistants to query and retrieve information about office supplies inventory from a CSV file.

Category
Visit Server

README

Office 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 implementation
  • inventory.csv: CSV file containing the office supply inventory data
  • build.sh: Script for setting up the environment
  • run.sh: Script for running the server
  • requirements.txt: List of Python dependencies

Quick Start

Local Setup

  1. Clone this repository:

    git clone https://github.com/aidecentralized/nanda-servers.git
    cd office-supplies-shop-server
    
  2. Choose one of the environment setup options below:

Option A: Using Python venv

  1. Create a Python virtual environment:

    python -m venv venv
    
  2. Activate the virtual environment:

    • On Linux/macOS:
      source venv/bin/activate
      
    • On Windows:
      venv\Scripts\activate
      
  3. Install dependencies:

    pip install -r requirements.txt
    

Option B: Using Conda

  1. Create a new conda environment:

    conda create --name inventory_env python=3.11
    
  2. Activate the conda environment:

    conda activate inventory_env
    
  3. Install dependencies:

    pip install -r requirements.txt
    

Running the Server Locally to Test

After setting up your environment using either option above:

  1. Run the server:

    python officesupply.py
    
  2. The server will be available at: http://localhost:8080

Testing with MCP Inspector

  1. Install the MCP Inspector:

    npx @modelcontextprotocol/inspector
    
  2. Open the URL provided by the inspector in your browser

  3. Connect using SSE transport type

  4. Enter your server URL with /sse at the end (e.g., http://localhost:8080/sse)

  5. Test the available tools:

    • get_items: Lists all item names in the inventory
    • get_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

  1. Make sure your repository includes:

    • All code files
    • requirements.txt
    • build.sh and run.sh scripts
  2. Set executable permissions on the shell scripts:

    chmod +x build.sh run.sh
    

    For Windows, run

    wsl chmod +x build.sh run.sh
    

Create AWS account

Deploying to AWS AppRunner

  1. Create AWS account

  2. Add your credit card for billing

  3. Go to AWS AppRunner (https://console.aws.amazon.com/apprunner)

  4. Log in (if you’re not already)

  5. 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.

  6. Create a new service from your source code repository

  7. Configure the service:

    • Python 3.11 runtime
    • Build command: ./build.sh
    • Run command: ./run.sh
    • Port: 8080
  8. Deploy and wait for completion

  9. Test the public endpoint with MCP Inspector

Registering on NANDA Registry

  1. Go to NANDA Registry
  2. Login or create an account
  3. Click "Register a new server"
  4. Fill in the details:
    • Server name
    • Description
    • Public endpoint URL (without /sse)
    • Tags and categories
  5. Register your server

Usage in NANDA Host, a Browser based Client

  1. Visit nanda.mit.edu
  2. Go to the NANDA host
  3. Add your Anthropic API key
  4. Find your MCP server in the registry
  5. Add it to your host
  6. 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: MCP Server Tutorial

Acknowledgments

Based on the NANDA Servers repository. Follow ProjectNanda at https://nanda.mit.edu

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured