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

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