Skip to main content
Glama
Zhangeldi123

Product Agent MCP Server

by Zhangeldi123

MCP + LangGraph Product Agent (Test Task)

This repo implements:

  • MCP server (FastMCP, stdio) with product tools

  • LangGraph agent that connects to the MCP server via stdio subprocess

  • FastAPI endpoint to chat with the agent

  • Dockerfile + docker-compose

  • 3+ tests

Project structure

.
├─ app/
│  ├─ api.py
│  ├─ agent/
│  │  ├─ graph.py
│  │  ├─ mcp_client.py
│  │  ├─ mock_llm.py
│  │  ├─ tools_custom.py
│  │  └─ types.py
│  └─ mcp_server/
│     ├─ products_server.py
│     └─ storage.py
├─ data/products.json
├─ tests/
│  └─ test_api.py
├─ Dockerfile
├─ docker-compose.yml
└─ requirements.txt
docker compose up --build

API будет доступен на:

  • http://localhost:8000/docs

  • endpoint: POST http://localhost:8000/api/v1/agent/query

Example request:

curl -X POST "http://localhost:8000/api/v1/agent/query" \
  -H "Content-Type: application/json" \
  -d '{"query":"Покажи все продукты в категории Электроника"}'

Run locally

python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt

export PRODUCTS_DB_PATH=./data/products.json  # Windows: set PRODUCTS_DB_PATH=...
uvicorn app.api:app --reload

Tests

pytest -q

Notes

  • MCP server runs via stdio (python app/mcp_server/products_server.py) and is spawned by the FastMCP Client(...) inside the agent.

  • The agent uses a mock LLM (rule-based) that outputs a JSON plan, then executes the plan by calling MCP tools + custom tools.

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/Zhangeldi123/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server