Token导航 LogoToken导航TokenDH.com
Demo MCP Productcatalog logo
AI代理未说明官方级别未说明来源级核验

Demo MCP Productcatalog

MCP Server

Product Catalog MCP Server 是一个基于.NET 8的Web应用程序,实现了用于管理零售产品库存的模型上下文协议(MCP)服务器,为AI助手和其他应用提供标准化的产品数据交互接口。

工具数

7

提示词数

0

GitHub Stars

3

资源数

0
库存管理C#AI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

petender

提供方

petender

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

产品目录MCP服务器

概述

产品目录MCP服务器 是a。NET 8 web应用程序,实现了用于管理零售产品库存的模型上下文协议(MCP)服务器。它为AI助手和其他应用程序提供了一个标准化的接口,通过一组定义良好的工具和API与产品数据进行交互。

该场景提供了一个MCP服务器产品目录后端,可以集成到Copilot Studio(请参阅演示指南说明)或Azure AI Foundry演示中。

此场景是更广泛的Azure演示目录的一部分,可在 培训师演示部署.

什么是MCP(模型上下文协议)?

模型上下文协议是一种标准,使人工智能助手能够安全地与外部数据源和工具连接。该服务器充当人工智能模型和产品库存数据之间的桥梁,允许与产品管理操作进行自然语言交互。

建筑

技术栈

  • 框架:ASP。NET核心8.0
  • 协议:模型上下文协议(MCP)
  • 数据存储:基于JSON文件的存储
  • 语言:启用了可空引用类型的C#

核心组件

  1. 程序cs -应用程序入口点和服务配置
  2. 产品目录工具s.cs -产品操作的MCP工具定义
  3. 产品服务cs -产品管理的业务逻辑
  4. Models.cs -数据模型和DTO
  5. 配置 -服务器配置设置

数据模型

产品由 Product 类具有以下属性:

public class Product
{
    public string Name { get; set; }           // Product name
    public string Description { get; set; }   // Product description  
    public string EAN { get; set; }          // European Article Number (barcode)
    public decimal Cost { get; set; }        // Product price/cost
    public int UnitsInStock { get; set; }    // Current inventory count
    public string Brand { get; set; }        // Product manufacturer/brand
    public List Categories { get; set; } // Product categories/tags
}

特性和功能

核心产品管理

  • 添加产品的 -在库存中创建新产品
  • 更新产品 -修改现有产品信息
  • 删除产品 -从库存中删除产品
  • 产品列表 -检索目录中的所有产品
  • 搜索产品 -按名称、描述、EAN、品牌或类别查找产品

库存管理

  • 库存跟踪 -监控每种产品的库存单位
  • 股票更新 -修改库存水平
  • 低库存检测 -识别库存水平低的产品

数据持久层

  • 产品以JSON格式存储在 Data/products.json
  • 基于文件初始化的内存操作
  • 使用锁定机制的线程安全操作

可用的MCP工具

服务器通过MCP协议公开以下工具:

工具名称描述参数
ListProducts退回库存中的所有产品
AddProduct添加新产品名称、描述、ean、成本、单位库存、品牌?,类别?
UpdateProduct按EANEAN+可选字段更新现有产品
UpdateStock更新库存数量ean,newStock
RemoveProduct按EANEAN删除产品
SearchProducts按术语搜索产品searchTerm
GetLowStockProducts获取低于阈值阈值的产品

工具详细信息

产品列表

返回库存中所有产品的完整列表。

添加产品

将新产品添加到库存中。要求:

  • name(string):产品名称
  • description(string):产品描述
  • Ean(string):Ean条形码
  • 成本(小数):产品成本
  • unitsInStock(int):库存数量
  • brand(字符串,可选):产品品牌
  • 类别(字符串,可选):逗号分隔的类别

更新产品

通过EAN更新现有产品。可选参数:

  • 名称、描述、成本、品牌、类别

更新库存

按EAN更新特定产品的库存数量。

移除产品

通过EAN从库存中删除产品。

搜索产品

使用与名称、描述、EAN、品牌或类别匹配的搜索词搜索产品。

GetLowstock产品

返回库存水平低于指定阈值(默认值:10个单位)的产品。

项目示意图

项目结构

graph TD
    Root[📁 demo-mcp-productcatalog] --> Program[📄 Program.cs]
    Root --> Project[📄 product-catalog-mcp-server.csproj]
    Root --> Build[📄 build.ps1]
    Root --> ReadMe[📄 README.md]
    Root --> AppSettings[📄 appsettings.Development.json]
    
    Root --> Config[📁 Configuration]
    Config --> ConfigFile[📄 ProductCatalogMCPServerConfiguration.cs]
    
    Root --> Data[📁 Data]
    Data --> Products[📄 products.json]
    
    Root --> Services[📁 Services]
    Services --> IService[📄 IProductService.cs]
    Services --> Service[📄 ProductService.cs]
    
    Root --> Tools[📁 Tools]
    Tools --> Models[📄 Models.cs]
    Tools --> MCPTools[📄 ProductCatalogTools.cs]
    
    Root --> Props[📁 Properties]
    Props --> Launch[📄 launchSettings.json]
    
    Root --> Infra[📁 infra]
    Infra --> DeployPS[📄 deploy.ps1]
    Infra --> DeploySH[📄 deploy.sh]
    Infra --> Bicep[📄 main.bicep]
    Infra --> BicepParam[📄 main.bicepparam]
    Infra --> InfraReadMe[📄 README.md]
    
    Root --> Bin[📁 bin]
    Bin --> Debug1[📁 Debug]
    Debug1 --> Net80[📁 net8.0]
    Net80 --> Artifacts[📄 Built artifacts...]
    
    Root --> Obj[📁 obj]
    Obj --> Debug2[📁 Debug]
    Debug2 --> Net80Obj[📁 net8.0]
    Net80Obj --> BuildFiles[📄 Build files...]

    style Root fill:#e1f5fe
    style Program fill:#fff3e0
    style Project fill:#fff3e0
    style Config fill:#f3e5f5
    style Data fill:#e8f5e8
    style Services fill:#fff8e1
    style Tools fill:#fce4ec
    style Props fill:#f1f8e9
    style Infra fill:#e0f2f1
    style Bin fill:#f5f5f5
    style Obj fill:#f5f5f5

应用架构

graph LR
    subgraph "MCP Server Application"
        Entry[Program.cs
Entry Point] --> MCPTools[ProductCatalogTools
MCP Tools]
        Entry --> BusinessLogic[ProductService
Business Logic]
        MCPTools --> BusinessLogic
        
        DataModels[Models.cs
Data Models] --> MCPTools
        DataModels --> BusinessLogic
        
        AppConfig[Configuration
Settings] --> Entry
        DataStore[products.json
Data Store] --> BusinessLogic
    end
    
    subgraph "Infrastructure"
        IaC[bicep templates
IaC] --> Deployment[Azure Deployment]
        Scripts[PowerShell Scripts
Automation] --> Deployment
    end
    
    subgraph "MCP Protocol"
        Assistant[AI Assistant] --> Transport[HTTP Transport]
        Transport --> MCPTools
        MCPTools --> Operations[Product Operations]
        Operations --> Inventory[Inventory Management]
    end

    style Entry fill:#ffeb3b
    style MCPTools fill:#4caf50
    style BusinessLogic fill:#2196f3

    style DataModels fill:#ff9800
    style DataStore fill:#9c27b0
    style IaC fill:#607d8b
    style Assistant fill:#f44336

______________________________________________________________________

选项1:使用DevTunnel从开发环境本地运行应用程序

要快速简单地进行设置,请使用以下五个基本命令:

1.运行.NET应用程序

在您最喜欢的终端/控制台的应用程序文件夹中,执行

dotnet run

该应用程序在以下时间启动

2.运行DevTunnel,将本地运行的应用程序暴露给公共URL/端点:

1.登录DevTunnel

devtunnel user login

它的作用: 使用您的Microsoft帐户通过DevTunnel服务对您进行身份验证。在创建或管理隧道之前,这是必需的。

2.创建隧道

devtunnel create product-catalog-mcp -a --host-header unchanged

它的作用:

  • 创建一个名为的新隧道 product-catalog-mcp
  • -a 标志使隧道可供任何人访问(匿名访问)
  • --host-header unchanged 保留原始主机标头,这对于依赖于特定主机值的应用程序很重要

3.创建端口映射

devtunnel port create product-catalog-mcp -p 47002

它的作用: 为创建端口映射 product-catalog-mcp 隧道,将流量转发到本地端口 47002 产品目录MCP服务器正在运行。

4.启动隧道

devtunnel host product-catalog-mcp

它的作用: 开始托管 product-catalog-mcp 隧道,使您的本地应用程序可以通过公共URL访问。此命令将显示您可以从任何地方访问产品目录MCP服务器的公共URL。

注: 保持终端窗口 devtunnel host product-catalog-mcp 当你需要激活隧道时打开。在启动隧道之前,请确保您的产品目录MCP服务器正在端口47002上运行。

选项2:将应用程序部署到Azure应用程序服务

⬇️ 安装

🚀 分4个步骤部署场景:

  1. 在您的计算机上创建一个新文件夹。
mkdir -p petender/demo-mcp-productcatalog
  1. 接下来,导航到新文件夹。
cd petender/demo-mcp-productcatalog
  1. 接下来,运行 azd init 以初始化部署。
azd init -t petender/demo-mcp-productcatalog
  1. 最后,跑 azd up 以触发实际部署。
azd up

⏩ 注意:您可以通过删除资源组或运行以下命令从Azure门户中删除已部署的场景 azd down 从启动的文件夹中。

关闭

该MCP服务器为人工智能驱动的产品管理应用程序提供了坚实的基础,同时保持了其核心操作的简单性和可靠性。

目录标签

目录标签

库存管理C#AI代理产品目录管理本地部署AI接口MCP协议零售技术

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP