KA 

khshanovskyi/ai-dial-mcp-fundamentals
Developer tools46 stars 0 forks 品質 45 トレンド 45
Python implementation for building Users Management Agent with MCP tools and MCP server
概要
Python implementation for building Users Management Agent with MCP tools and MCP server
README
Framework-based MCP (Server & Client)
Python implementation for building Users Management Agent with MCP tools and MCP server
🎯 Task Overview
Create and run MCP server with simple tools. Implement simple Users Management Agent with MCP Client that will use MCP tools from created server.
🎓 Learning Goals
By exploring and working with this project, you will learn:
- How to configure simple MCP server
- How to configure client and connect to MCP server
- How to create simple Agent with tools from MCP server
- Key features of MCP
🏗️ Architecture
task/
├── agent/
│ ├── models/
│ │ └──message.py ✅ Complete
│ ├── app.py 🚧 TODO: implement logic
│ ├── promps.py 🚧 TODO: write system prompt
│ ├── dial_client.py 🚧 TODO: implement logic
│ └── mcp_cleint.py 🚧 TODO: implement logic
└── mcp_server/
├── server.py 🚧 TODO: implement logic
├── user_client.py ✅ Complete
└── Dockerfile ✅ Complete
📋 Requirements
- Python: 3.11 or higher
- Dependencies: Listed in
requirements.txt - API Access: DIAL API key with appropriate permissions
- Network: EPAM VPN connection for internal API access
- Docker and Docker Compose
- Postman
✍️ Tasks:
If the task in the main branch is hard for you, then switch to the with-detailed-description branch
You need to implement the Users Management Agent, that will be able to perform CRUD operations within User Management Service.
Create and run MCP server:
- Run root docker-compose (Optional step in case if you have it from previous tasks)
- Open mcp_server
- Implement all TODO
- Run mcp_server
OPTIONAL: Work with MCP server in Postman
- Import mcp.postman_collection to Postman
- Make
initcall and getmcp-session-idin response headers - Make
init-notification. Pay attention that you need to usemcp-session-idretrieved frominitrequest. it should return 202 status - Get tools (don’t forget about
mcp-session-id). It should return stream with tools. - Call calculator (don’t forget about
mcp-session-id). It should return stream tool execution result.
Create and run Agent:
- Open mcp_client and implement all TODO
- Open dial_client and implement all TODO
- Open prompts and write System prompt
- Open app and implement all TODO
- Run application mcp_client and test that it is connecting to MCP Server and works properly
- Try with your solution with
fetch MCPhttps://remote.mcpservers.org/fetch/mcpand check the differences on theinitstep (what they have and don’t)
OPTIONAL: Support both (users-management and fetch) MCP servers:
- Remember that we have 1-to-1 connection between MCP client and MCP server!
- You need to think of the way how to change current flow to support tools from different MCP servers and implement it
- In the end you should have the Agent that is able to fetch the info from the WEB about some people and save it to Users Service
- Hint: the problem place is dial_client
インストール
This server does not publish a one-line install command.
Open the repository installation guide