Install
$ agentstack add mcp-darko-martinovic-mcpserver ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Supermarket MCP Server
A modern, dual-mode server for supermarket inventory and sales management. Supports both Web API (REST) and console/MCP operation for integration with AI tools like Claude Desktop.
🎬 Demo Video
See the McpServer in action with Claude Desktop integration and Web API functionality:
https://github.com/user-attachments/assets/7675de32-fa05-48e1-9327-8417670e9165
The demo showcases dual-mode operation, MCP tool integration with Claude Desktop, and REST API endpoints.
🆕 Latest Features
Recent Additions:
- API Versioning - All endpoints now use versioned paths (
/api/v1/...) for future compatibility - Unified Tool Proxy - Native .NET tool execution service replacing external middleware
- Articles with Ingredients - New endpoint for retrieving articles with ingredient information from MongoDB
- Custom Plugin Support - Define custom logic to access your database or API through configurable plugins
- Advanced JSON Viewer - Interactive data visualizer with expand/collapse functionality and intelligent formatting
- Enhanced AI Response Tracking - Each AI response now includes detailed metadata:
- Number of tokens used (prompt + completion)
- Estimated cost breakdown
- Tools utilized during processing
- AI model information
Features
- Dual Mode: Run as a Web API (REST endpoints) or as a console MCP tool provider
- API Versioning: URI-based versioning (
/api/v1/...) for all endpoints - Plugin Architecture: Extensible system supporting multiple data sources and operations
- Supermarket Analytics: Inventory, sales, revenue, category, and stock tools (SQL Server)
- ThirdApi Integration: MongoDB-based operations for prices analysis, content statistics, and article ingredients
- Unified Tool Proxy: Execute any MCP tool via a single endpoint with automatic routing
- Resource-like Endpoints: Real-time inventory, daily summaries, detailed product info
- Advanced Analytics: Complex MongoDB aggregation pipelines for data analysis
- Comprehensive Logging: Serilog-based, file and console
Quick Start
Prerequisites
- .NET 9.0+
- SQL Server 2014+ (for Supermarket plugin)
- MongoDB 4.0+ (for ThirdApi plugin, optional)
Setup
- Database:
- Run
Database/SetupDatabase.sqlto create tables and sample data
- Configure:
- Edit
appsettings.jsonwith your SQL Server connection string
- Build:
``bash dotnet build ``
- Run:
- Web API mode:
``bash dotnet run --webapi # or use your published executable with --webapi ``
- Console/MCP mode:
``bash dotnet run # or use with Claude Desktop/Inspector as shown below ``
Usage
Web API Mode
- Start the server with
--webapi - Base URL:
http://localhost:5000 - API Version:
v1
Tool Proxy Endpoints (Unified Tool Execution)
POST /api/v1/tool- Execute any MCP tool by namePOST /api/v1/search- Search for tools via Azure Cognitive SearchGET /api/v1/tools/schema- Get all available tool schemasGET /api/v1/proxy/health- Tool proxy health check
Supermarket Plugin Endpoints (SQL Server)
GET /api/v1/supermarket/products- All productsGET /api/v1/supermarket/products/low-stock?threshold=10- Low stock productsGET /api/v1/supermarket/sales?startDate=2025-01-01&endDate=2025-12-31- Sales dataGET /api/v1/supermarket/revenue?startDate=2025-01-01&endDate=2025-12-31- Total revenueGET /api/v1/supermarket/inventory/status- Inventory statusGET /api/v1/supermarket/inventory/detailed- Detailed inventoryGET /api/v1/supermarket/health- SQL Server health check
ThirdApi Plugin Endpoints (MongoDB)
GET /api/v1/thirdapi/prices-without-base-item- Prices analysisGET /api/v1/thirdapi/latest-statistics- Processing statisticsGET /api/v1/thirdapi/content-types- Content types summaryGET /api/v1/thirdapi/articles/search?name=MASTI- Find articles by nameGET /api/v1/thirdapi/articles/{contentKey}- Find article by content keyGET /api/v1/thirdapi/articles/ingredients- Articles with ingredientsGET /api/v1/thirdapi/plu-data- PLU data from SAP FioriGET /api/v1/thirdapi/health- MongoDB health check
Chat Endpoints
POST /api/v1/chat/message- Process chat message with AIGET /api/v1/chat/functions- Get available AI functions
Health & Documentation
GET /health- General system health checkGET /swagger- Swagger UI API documentation
MCP Tool Provider Mode
- Start the server without
--webapi - Integrate with Claude Desktop or MCP Inspector
- Example Claude config (
claude_desktop_config.json):
``json { "mcpServers": { "supermarket": { "command": "dotnet", "args": ["run", "--project", "/path/to/your/McpServer", "--no-build"] } } } ``
- Config file location:
C:\Users\\AppData\Roaming\Claude
Configuration
Database Connections
- SQL Server (Supermarket Plugin): Edit
appsettings.json:
``json { "ConnectionStrings": { "DefaultConnection": "Server=your-server;Database=your-db;Integrated Security=true;TrustServerCertificate=true;" } } ``
- MongoDB (ThirdApi Plugin): Default connection to
mongodb://localhost:27017/ThirdApi - Connects to
ThirdApidatabase - Uses
Pumpcollection for article and price data - Uses
Summarycollection for statistics
Claude Desktop Integration
- Claude Desktop: See above for config example and file location
Plugin Architecture
The server supports a plugin-based architecture allowing multiple data sources:
- Supermarket Plugin: SQL Server-based inventory and sales management
- ThirdApi Plugin: MongoDB-based price analysis, content statistics, and article ingredients
- Extensible Design: Easy to add new plugins for additional data sources
Each plugin provides:
- MCP tools for AI integration
- REST API endpoints for web clients
- Health monitoring and logging
- Independent data service layer
API Versioning
All API endpoints use URI-based versioning:
/api/v1/supermarket/products
/api/v1/thirdapi/articles/ingredients
/api/v1/tool
- Default Version: v1.0
- Version Header: API responses include
api-supported-versionsheader - Future Versions: New versions (v2, v3) can be added without breaking existing clients
Troubleshooting & Logs
- Logs:
Logs/mcpserver.log(file), console output - Common issues: Check connection string, database setup, and logs for errors
- For MCP/Claude issues: Ensure config file is correct and restart the app after changes
Postman Collection
Import the Postman collection and environment from the postman/ folder:
McpServer-Collection.json- All API endpointsMcpServer-Environment.json- Environment variables (protocol, host, port, api_version)
📄 License
MIT License - see LICENSE file for details.
⚠️ Disclaimer
This project was developed independently on personal equipment and in personal time. It is not affiliated with, endorsed by, or derived from the intellectual property of EPAM Systems or any of its clients. All examples, configurations, and data are generic and intended solely for demonstration and educational purposes.
For more details, see the code and comments. Contributions welcome!
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Darko-Martinovic
- Source: Darko-Martinovic/McpServer
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.