GDG Store MCP Server
Enables the MCP server to interact with DPD's shipping API, providing tools for shipment tracking and delivery management.
Enables the MCP server to interact with Medusa's e-commerce API, providing tools for store operations such as product lookup and order management.
Enables the MCP server to interact with WooCommerce's e-commerce API, providing tools for store operations such as product lookup and order management.
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., "@GDG Store MCP ServerIs the 75% mechanical keyboard available?"
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.
Zbuduj własny serwer MCP w TypeScript
Repozytorium do spotkania GDG. Teza przewodnia: MCP to USB-C dla narzędzi AI — narzędzie napisane raz działa w każdym kliencie (Claude Desktop, Cursor, Gemini CLI, VS Code, Twój własny agent). Zamiast M aplikacji × N integracji piszemy M + N.
Przechodzimy cały protokół od zera: minimalny serwer → prawdziwe narzędzia z walidacją → resources i prompts → transport HTTP → własny klient. Do checkpointów 01–05 nie potrzebujesz żadnego klucza API — testujemy przez MCP Inspector i własnego klienta.
Wymagania
Node.js 20+
Edytor (VS Code / Cursor / cokolwiek)
(Tylko do teasera) klucz Gemini z darmowego tieru: https://aistudio.google.com/apikey
Related MCP server: pension-pro-mcp
Architektura
Serwery MCP w tym repo nie trzymają danych — są cienkimi adapterami nad lokalnym REST API (dokładnie tak, jak produkcyjne serwery MCP opakowują istniejące systemy):
host (Claude/Inspector) → klient MCP → serwer MCP → backend REST (:4000) → data/*.jsonBackend czyta pliki data/*.json przy każdym requeście — możesz edytować dane na żywo, bez restartu.
Setup
git clone <adres-repo>
cd gdg-agent-workshop
npm installTerminal 1 — backend (potrzebny do checkpointów 02-05 i teasera):
npm run api
# 🗄️ GDG Store API: http://localhost:4000
# szybki test na Windows: curl.exe http://localhost:4000/products/KB-MECH-75Gotowe zapytania do skopiowania: curl-requests.md.
Sprawdzenie, że wszystko działa (odpala serwer 01 w GUI Inspectora):
npx @modelcontextprotocol/inspector npx tsx src/01-minimal/server.tsCheckpointy
Scenariusz: budujemy serwer MCP fikcyjnego sklepu GDG Store. Dane serwuje lokalny backend REST (npm run api, dane w data/*.json) — w realnym projekcie w jego miejscu stałyby Medusa/WooCommerce i API InPost/DPD.
# | Uruchomienie | Co pokazuje |
01 | Inspector (komenda wyżej) | Minimalny serwer: 1 narzędzie, stdio, ~25 linijek. Anatomia: nazwa + opis + schemat + handler. Jedyny checkpoint bez backendu. |
02 |
| 4 narzędzia sklepu jako adaptery nad REST API. Walidacja zod (regex na SKU!), błędy domenowe przez |
03 |
| Resources (statyczny + template z |
04 |
| Ten sam protokół zdalnie po HTTP. Tryb stateless. Komendy curl w komentarzu na dole pliku. |
05 |
| Własny klient MCP w ~50 linijkach: handshake, odkrywanie, wywołania. Zero LLM-a. |
teaser |
| Klient z 05 + Gemini = pętla agentowa. Temat następnego spotkania 😉 |
Podpięcie serwera do prawdziwych hostów
Ten sam serwer (checkpoint 02), zero zmian w kodzie:
Claude Desktop — claude_desktop_config.json (Settings → Developer):
{
"mcpServers": {
"gdg-store": {
"command": "npx",
"args": ["tsx", "/ABSOLUTNA/SCIEZKA/DO/repo/src/02-store/server.ts"]
}
}
}Gemini CLI — ~/.gemini/settings.json:
{
"mcpServers": {
"gdg-store": {
"command": "npx",
"args": ["tsx", "/ABSOLUTNA/SCIEZKA/DO/repo/src/02-store/server.ts"]
}
}
}Cursor — Settings → MCP → Add new global MCP server (ta sama struktura).
Po restarcie hosta zapytaj: „Czy klawiatura mechaniczna 75% jest dostępna w GDG Store?”
Trzy prymitywy MCP (jeśli zapamiętasz jedną tabelkę)
Prymityw | Kto decyduje o użyciu | Analogia |
Tools | model | „model sam sięga po dane / wykonuje akcję” |
Resources | aplikacja / user | „załącz plik do rozmowy” |
Prompts | user | „slash-command przygotowany przez autora serwera” |
Kluczowe wnioski
Opis narzędzia to interfejs użytkownika dla modelu. LLM widzi tylko nazwę, opis i schemat — jakość opisów decyduje o tym, czy narzędzie w ogóle zostanie sensownie użyte.
Serwer stdio nie może pisać na stdout. stdout to kanał protokołu; logi zawsze na stderr (
console.error).Błąd domenowy ≠ błąd protokołu.
isError: truewraca do modelu jako treść, żeby mógł zareagować; wyjątek JSON-RPC to sprawa między klientem a serwerem.Klient to nie magia. Handshake +
tools/list+tools/call— Claude Desktop robi dokładnie to samo, co nasz 50-linijkowy klient z checkpointu 05.
Co dalej
Dodaj do backendu endpoint
GET /orders(lista wszystkich), a potem użyj go w resource template zamiast zahardkodowanych ID (patrz komentarz w checkpoincie 03)Dołóż własne narzędzie do serwera 02 (np.
create_return— zgłoszenie zwrotu; uwaga: POST do backendu i to już nie jestreadOnlyHint!)Dodaj resource template
gdg-store://products/{sku}Podepnij serwer 02 do swojego ulubionego hosta i używaj na co dzień
Przeczytaj o autoryzacji zdalnych serwerów (OAuth 2.1) w spec: https://modelcontextprotocol.io
Przyjdź na następne spotkanie: pętla agentowa od zera — jak hosty naprawdę używają tych narzędzi (
npm run teaserto zapowiedź)
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceA production-grade MCP server for the WooCommerce REST API, enabling AI assistants to manage products, orders, customers, and store settings.Last updated341MIT
- AlicenseBqualityCmaintenanceA local, open-source MCP server that provides AI assistants with tools to interact with the PensionPro REST API.Last updated32MIT
- Alicense-qualityBmaintenanceA plugin-based MCP server that enables AI assistants to interact with external systems through custom tools, resources, and prompts.Last updated4AGPL 3.0
- Alicense-qualityFmaintenanceA comprehensive MCP server for Shopify Admin API integration, enabling AI assistants to manage products, orders, customers, inventory, analytics, and more through natural language.Last updated3218MIT
Related MCP Connectors
MCP server for AI dialogue using various LLM models via AceDataCloud
Pocket Agent (aipocketagent.com) MCP server — read tools for personas, apps, and product info.
Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mkidawa/gdg-mcp-workshop'
If you have feedback or need assistance with the MCP directory API, please join our Discord server