Books API MCP Server
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., "@Books API MCP Serverlist all books"
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.
my-mcp-server — 3-layer HTTP + MCP demo
A small, all-Python demo of three layers wired together over HTTP:
VS Code (native MCP client)
│ HTTP → http://127.0.0.1:9100/mcp
▼
MCP server (mcp_server/server.py, Streamable HTTP transport)
│ HTTP → http://127.0.0.1:8000
▼
HTTP API server (http_server/app.py, Flask, GET endpoints)
│
▼
in-memory "books" dataLayer 1 — HTTP API (http_server/app.py): a plain Flask REST-ish API with GET endpoints. Knows nothing about MCP.
Layer 2 — MCP server (mcp_server/server.py): exposes MCP tools over the Streamable HTTP transport. Each tool calls a layer-1 endpoint with
httpx.Layer 3 — VS Code: uses its built-in MCP client via .vscode/mcp.json to connect to layer 2 over HTTP. No custom extension or Node.js needed.
Setup
Note: a Windows
.venv/is committed to this repo for convenience. It contains hardcoded paths toC:\Users\400861\...and Windows-only binaries, so it will not work on macOS/Linux or other machines. On any other setup, delete.venv/and rebuild it with the steps below.
Create a project-local virtual environment and install the pinned deps.
Each machine should build its own venv from requirements.txt.
Windows (PowerShell):
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade pip
.\.venv\Scripts\python.exe -m pip install -r requirements.txtmacOS / Linux (bash/zsh):
python3 -m venv .venv
./.venv/bin/python -m pip install --upgrade pip
./.venv/bin/python -m pip install -r requirements.txtThe direct-path form above works without "activating" the venv. If you prefer to activate it:
.\.venv\Scripts\Activate.ps1(Windows) orsource .venv/bin/activate(macOS/Linux), after which plainpythonuses the venv.
Related MCP server: Flask MCP Server Implementation Guide
Run (two terminals)
Use the venv's Python. Windows examples use .\.venv\Scripts\python.exe;
on macOS/Linux swap in ./.venv/bin/python.
Terminal 1 — the HTTP API (port 8000):
.\.venv\Scripts\python.exe http_server/app.pyTerminal 2 — the MCP server (port 9100):
.\.venv\Scripts\python.exe mcp_server/server.pyPort 9100 is used because 9000 is occupied by Zscaler (ZSATunnel) on this machine. Override any port with env vars:
HTTP_SERVER_PORT,MCP_SERVER_PORT,HTTP_API_BASE_URL.
Verify the chain
With both servers running:
.\.venv\Scripts\python.exe mcp_server/test_client.pyExpected: it lists the tools (list_books, get_book, list_genres,
api_health) and prints results proxied from the Flask API.
Use from VS Code
Open this folder in VS Code (MCP support requires a recent VS Code build).
With both servers running, VS Code reads .vscode/mcp.json and connects to
http://127.0.0.1:9100/mcp.Start the server from the
mcp.jsongutter "Start" action (or the MCP: List Servers command), then use the tools from Copilot Chat's Agent mode.
HTTP API endpoints (layer 1)
Method | Path | Description |
GET |
| Liveness probe |
GET |
| List books; filters: |
GET |
| Single book by id |
GET |
| Distinct genres |
MCP tools (layer 2)
Tool | Calls |
|
|
|
|
|
|
|
|
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for Russian books search, details, and recommendation candidates.
POC MCP server. Tool say_hello returns 'Welcome' (agent -> MCP -> API path).
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceA simple demonstration MCP server that provides basic greeting functionality and server information. Enables users to generate hello messages and retrieve server details through tools and resources.-
- FlicenseNot gradedqualityDmaintenanceA Flask-based reference implementation demonstrating how to build an MCP server with stateless HTTP transport, including example tools for generating random numbers and sentences.-
- FlicenseNot gradedqualityDmaintenanceA simple MCP server that exposes a calculator tool (addition) and a dynamic greeting resource.16-
- FlicenseNot gradedqualityDmaintenanceDemo MCP server that exposes order and customer data as read-only tools for AI assistants, simulating a business API or internal data source.-