dpc / README.md
cevheri's picture
docs: update README and dpc_restapi_summary with new metadata and remove outdated sections
fe1381b
---
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:
```env
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:
```bash
git clone https://github.com/yourusername/dpc_mcp_client.git
cd dpc_mcp_client
```
2. Install dependencies using UV:
```bash
uv sync
```
## πŸš€ Usage
To start the application:
```bash
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](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