dpc / README.md
cevheri's picture
docs: update README and dpc_restapi_summary with new metadata and remove outdated sections
fe1381b
metadata
title: DpcMcpClient
emoji: 🀯
colorFrom: pink
colorTo: yellow
sdk: docker
pinned: false
short_description: MCP-Client Test for DNext Product Catalog MCPServer

DPC MCP Client

Desinged to test the DNext Product Catalog REST API MCP Server.

A Gradio-based chatbot application designed to interact with Product Catalog APIs through FASTMC-Server's streamable-http protocol using LangChain MCP Client.

πŸš€ Features

  • LangChain MCP Client integration
  • Gradio-based user interface
  • StreamableHTTP protocol support
  • Product Catalog API integration
  • Astral/UV package manager support
  • Python 3.13 compatibility

πŸ“‹ Requirements

  • Python 3.13 or higher
  • UV package manager
  • The following environment variables:
AGENT_DEBUG=true
LLM_PROVIDER=OPENAI
LLM_API_KEY=your_api_key_here
LLM_MODEL=gpt-4.1
MCP_SERVER_URL=http://localhost:8080/mcp/

πŸ› οΈ Installation

  1. Clone the repository:
git clone https://github.com/yourusername/dpc_mcp_client.git
cd dpc_mcp_client
  1. Install dependencies using UV:
uv sync

πŸš€ Usage

To start the application:

uv run app.py
  • Once started, the Gradio interface will automatically open in your browser. You can query Product Catalog APIs through this interface.
  • Click the link to open the Gradio interface in your browser: http://0.0.0.0:7860

πŸ“ Project Structure

dpc_mcp_client/
β”œβ”€β”€ app.py              # Gradio UI and main application
β”œβ”€β”€ mcp_client.py       # MCP Client implementation
β”œβ”€β”€ resources/          # Resource files
β”‚   β”œβ”€β”€ instruction.txt
β”‚   └── dpc_restapi_summary.txt
β”œβ”€β”€ pyproject.toml      # Project dependencies
└── README.md

πŸ”§ Dependencies

  • environs>=14.2.0
  • gradio>=5.32.1
  • langchain-mcp-adapters>=0.1.4
  • langchain-openai>=0.3.19
  • langgraph>=0.4.8
  • loguru>=0.7.3

🀝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request