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