Uses FastAPI to create an MCP server that exposes the Northwind database through both a REST API and an MCP endpoint, allowing queries for product data and other Northwind dataset information.
Click on "Install 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., "@Northwind FastAPI MCP Examplelist all products in the Northwind database"
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.
๐ Northwind FastAPI MCP Example
This project demonstrates how to use fastapi-mcp to create a Model Context Protocol (MCP) server that allows Large Language Models (LLMs) to connect and interact with a REST API.
๐ Overview
The Northwind API is a simple example that shows how to expose data from the classic Northwind database through both a traditional REST API and an MCP endpoint, making it accessible for LLMs to query and understand.
Related MCP server: MyAIServ MCP Server
๐ Getting Started
Prerequisites
Python 3.10+ ๐
Virtual environment tool ๐ง
Installation
Clone the repository and install dependencies:
git clone https://github.com/RobertoRuben/mcp-northwind-fastapi-example.git cd mcp-northwind-fastapi-example python -m venv venv venv\Scripts\activate # On Windows pip install -r requirements.txtRun the application:
uvicorn src.main:app --reloadAccess the API documentation at
http://localhost:8000/api/v1/docs๐
๐ Available Endpoints
REST API Endpoints
GET /api/v1/products: List all products ๐ฆ
MCP Endpoint
http://localhost:8000/mcp: Model Context Protocol endpoint for LLM connections ๐ค
๐ Connecting an LLM to the API
This example demonstrates how fastapi-mcp creates a bridge between your REST API and Large Language Models:
Traditional REST endpoints serve structured data at
/api/v1/products*๐The MCP endpoint at
/mcpallows LLMs to discover and interact with your API programmatically ๐งLLMs can understand your data schema and execute appropriate API calls automatically. โจ