Hackathon: MCP Weather Server Setup

This guide will help you quickly get started with adding a basic MCP server to Claude Desktop. This workshop will introduce you to adding MCP servers to Claude and using them effectively.

We have created a FAQ google doc for this hackathon, Feel free to check it out and add your questions if not present: MCP Hackathon FAQ

Prerequisites Part 1

We will be using Claude Desktop for this Hackathon/Workshop as it is the simplest client to connect with MCP servers.

  • Claude Desktop - Currently available on Windows and MacOS only

  • Node.js - Required for installing the weather server example

Note

Make sure you don’t exhaust your token limit on Claude Desktop or you might have to wait for a while.

For a step-by-step visual guide, you can watch the following tutorial: Claude Desktop Tutorial

This example is taken from the mcp-weather-server package.

To install the weather server example, run the following command:

npm i @h1deya/mcp-server-weather

Adding the Server to Claude Desktop

  1. Open Claude Desktop (On Windows, run as Administrator)

  2. Click on the “Files” tab in the top left

  3. Click on the “Settings” menu item

  4. Click on the “Developer” option

  5. Click on the “Edit Config” button to open the JSON configuration file

  6. Copy and paste the following configuration:

{
  "mcpServers": {
    "weather": {
      "command": "npx",
      "args": [
        "-y",
        "@h1deya/mcp-server-weather"
      ]
    }
  }
}

Note

You might need to restart Claude Desktop to see the hammer icon in the chat interface, indicating that your MCP server is detected. You can verify the server status in the “Files/Settings/Developer” menu - “active” means the server is running and available.

Testing the Weather Server

You can now use the weather server in your chat. Try asking:

What is the weather in Boston?

Note

This example uses a public government API that is currently functional in the US only.

Hackathon: Docker SQLite Database Server

In this part, we will set up a SQLite database server using Docker.

Prerequisites Part 2

  • Docker - Install and verify it’s running as per the documentation

We will be using the SQLite server from the official MCP servers repository: MCP SQLite Server

Clone the repository and navigate to the SQLite folder:

git clone https://github.com/modelcontextprotocol/servers.git
cd servers/src/sqlite

Build the Docker image:

docker build -t mcp/sqlite .

Adding the SQLite Server to Claude Desktop

  1. Open Claude Desktop (On Windows, run as Administrator)

  2. Click on the “Files” tab in the top left

  3. Click on the “Settings” menu item

  4. Click on the “Developer” option

  5. Click on the “Edit Config” button to open the JSON configuration file

  6. Update the configuration file with the following content for Windows:

{
  "mcpServers": {
    "weather": {
      "command": "npx",
      "args": [
        "-y",
        "@h1deya/mcp-server-weather"
      ]
    },
    "sqlite": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-v",
        "mcp-test:/mcp",
        "mcp/sqlite",
        "--db-path",
        "/mcp/test.db"
      ]
    }
  }
}

Using the SQLite Server

You can now use the SQLite server in your chat. Try the following prompts:

Basic Example:

1) Create bakery DB tables:
- ingredients (id, name, unit, quantity, cost, supplier, min_order_quantity)

2) Populate with:
- 10 ingredients with MOQs

3) Add queries for:
- Low stock alerts

Create a dashboard visualization:

Let's create a simple dashboard to visualize the low stock alerts

Advanced Example (More Comprehensive):

1) Create bakery DB tables:
- ingredients (id, name, unit, quantity, cost, supplier, min_order_quantity)
- products (id, name, price, category, available)
- recipes (product_id, ingredient_id, quantity)
- suppliers (id, name, contact)
- inventory_logs (date, ingredient_id, quantity, type)

2) Populate with:
- 10 ingredients with MOQs
- 8 bakery products
- Complete recipes
- 3 suppliers
- Recent inventory activity

3) Add queries for:
- Low stock alerts
- Product cost analysis
- Production metrics

Create a comprehensive dashboard:

Let's create a detailed dashboard to visualize the low stock alerts and other insights

For Learning to build your own MCP server in Python, you check out the getting started page of this documentation: `Getting Started with building MCP server Page<https://aidecentralized.github.io/MCP_Hackathon_docs/getting-started.html>`_