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

Related MCP server: e2e-mcp-test

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.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    An MCP server that retrieves product data from the DummyJSON API, supporting filtering by various parameters like ID, title, category, brand, price and rating.
    1
    2 npm
    ISC
  • F
    license
    Not graded
    quality
    C
    maintenance
    An end-to-end test MCP server built with FastMCP that exposes a REST API as a set of tools for AI agents. It enables LLMs to perform CRUD operations on an upstream API by mapping HTTP methods to MCP tools.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server with six tools including web search, URL fetching, math calculation, and note management. Designed for a live-coding demo integrating FastMCP with LangGraph ReAct agents.
    8
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server for reading, querying, and filtering local JSON files with extended JSONPath syntax, supporting sorting, aggregations, and complex conditions.
    15 npm
    2
    MIT