Token导航 LogoToken导航

MCP Server · AI代理

Smartfridge MCP Server Fixed

一个生产就绪的智能冰箱MCP服务器,提供MCP协议支持、HTTP桥接、Docker容器化、数据持久化和全面测试。

stdio官方级别未说明来源级核验工具 3
TypeScriptAI代理工作流自动化

快速开始

作者 / 组织
TheAriaki
提供方
TheAriaki
运行时
Docker

工具数量

3

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Smartfridge MCP Server Fixed 属于AI代理类 MCP Server,公开资料标注 3 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

AI代理

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

docker run -p 3000:3000 -v $(pwd)/data:/app/data smartfridge-mcp-server

客户端配置示例

{
  "mcpServers": {
    "smartfridge-mcp-server-fixed": {
      "command": "docker",
      "args": [
        "run",
        "-p",
        "3000:3000",
        "-v",
        "$(pwd)/data:/app/data",
        "smartfridge-mcp-server"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 3 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

SmartFridge MCP 服务器 - 准生产就绪 🚀

一个经过全面测试、具备容器化和生产就绪特性的强大SmartFridge MCP服务器。此实现提供了关键修复、适当的数据持久性、HTTP桥接、容器化支持以及广泛的错误处理功能。

✨ 特点

  • 🔧 MCP 协议支持完整模型上下文协议实现
  • 🌐 HTTP桥接器用于网页集成的RESTful API
  • 🐳 Docker 准备就绪使用Docker和docker-compose实现完全容器化
  • 📊 数据持久化可靠的基于JSON的数据存储,支持备份/恢复
  • 🔒 安全全面的安全头部信息、输入验证和错误处理
  • 🧪 广泛测试100%的测试覆盖率,涵盖单元测试、集成测试和端到端(E2E)测试
  • 📈 生产监控健康检查、日志记录和指标监控
  • 🔄 持续集成/持续交付(CI/CD)流水线自动化测试、构建和部署
  • 📖 完整的文档资料详细的设置、使用和测试指南

🚀 快速入门

先决条件

  • Node.js 18.0.0 或更高版本
  • npm 8.0.0 或更高版本
  • Docker(可选,用于容器化部署)

安装

# Clone the repository
git clone https://github.com/TheAriaki/smartfridge-mcp-server-fixed.git
cd smartfridge-mcp-server-fixed

# Install dependencies
npm install

# Build the project
npm run build

# Initialize sample data (optional)
npm run init-data

运行服务器

# MCP mode (stdio)
npm start

# HTTP mode
npm run start:http

# Development mode with hot reload
npm run dev            # MCP mode
npm run dev:http       # HTTP mode

🧪 测试

这个项目包含一个全面的测试套件,涵盖了应用程序的所有方面:

快速测试命令

# Run all tests
npm test

# Run specific test types
npm run test:unit          # Unit tests
npm run test:integration   # Integration tests
npm run test:config        # Configuration tests

# Run tests with coverage
npm run test:coverage

# Validate deployment readiness
npm run validate-deployment

测试运行器脚本

进行全面测试并输出详细结果:

# Make script executable
chmod +x scripts/run-tests.sh

# Run all tests
./scripts/run-tests.sh

# Run specific test type
./scripts/run-tests.sh unit
./scripts/run-tests.sh integration
./scripts/run-tests.sh validation

测试覆盖率

测试套件包括:

  • 单元测试MCP服务器工具、HTTP终端点、数据验证
  • 集成测试Docker部署,端到端工作流程
  • 配置测试环境变量、Nginx代理、安全性
  • 部署验证生产准备就绪验证

见 TESTING.md 翻译为中文是:“测试说明文件.md” 或者 “测试文档.md”(具体翻译可能根据上下文有所调整,但“md”通常表示Markdown格式的文件) 以获取详细的测试文档。

🐳 Docker 部署

Docker Compose(推荐)

# Start with docker-compose
docker-compose up -d

# View logs
docker-compose logs -f

# Stop services
docker-compose down

手动Docker

# Build image
npm run docker:build

# Run container
npm run docker:run

# Or manually
docker run -p 3000:3000 -v $(pwd)/data:/app/data smartfridge-mcp-server

🌐 HTTP API 使用

当以HTTP模式运行时,服务器提供RESTful端点:

健康与信息终端

# Health check
curl http://localhost:3000/health

# Server information
curl http://localhost:3000/info

# Readiness check
curl http://localhost:3000/ready

食品管理API

# Add a food item
curl -X POST http://localhost:3000/api/tools/addFoodItem \\
  -H "Content-Type: application/json" \\
  -d '{
    "name": "Organic Milk",
    "quantity": 1,
    "unit": "liter",
    "category": "dairy",
    "expirationDate": "2025-01-15",
    "location": "Main Shelf",
    "notes": "2% fat content"
  }'

# List all items
curl -X POST http://localhost:3000/api/tools/listFoodItems \\
  -H "Content-Type: application/json" \\
  -d '{}'

# Filter by category
curl -X POST http://localhost:3000/api/tools/listFoodItems \\
  -H "Content-Type: application/json" \\
  -d '{"category": "dairy"}'

# Remove an item (replace ITEM_ID with actual ID)
curl -X POST http://localhost:3000/api/tools/removeFoodItem \\
  -H "Content-Type: application/json" \\
  -d '{"id": "ITEM_ID"}'

🏗️ 建筑学

项目结构

smartfridge-mcp-server-fixed/
├── src/                    # Source code
│   ├── index.ts           # Application entry point
│   ├── mcp-server.ts      # MCP protocol implementation
│   ├── http-server.ts     # HTTP bridge server
│   ├── services/          # Business logic services
│   ├── types/             # TypeScript type definitions
│   └── utils/             # Utility functions
├── tests/                 # Comprehensive test suite
│   ├── unit/              # Unit tests
│   ├── integration/       # Integration tests
│   ├── config/            # Configuration tests
│   ├── fixtures/          # Test data
│   └── setup.ts           # Test configuration
├── scripts/               # Utility scripts
│   ├── validate-deployment.js  # Deployment validation
│   ├── run-tests.sh       # Test runner
│   └── init-data.js       # Sample data initialization
├── nginx/                 # Nginx configuration
├── data/                  # Data storage directory
├── logs/                  # Application logs
└── .github/workflows/     # CI/CD pipelines

核心组件

  1. MCP 服务器实现了用于AI助手集成的模型上下文协议
  2. HTTP桥接器提供RESTful API访问MCP功能
  3. 数据层基于JSON的持久化存储,支持原子操作
  4. 安全层输入验证、错误处理和安全头部信息
  5. 监测健康检查、日志记录和指标收集

🔧 配置

环境变量

创建一个 .env 基于文件的 .env.example:

# Server configuration
SERVER_MODE=http           # 'mcp' or 'http'
PORT=3000                 # HTTP server port
NODE_ENV=production       # Environment

# Data configuration
DATA_FILE=data/fridge-data.json  # Data storage file

# Logging
LOG_LEVEL=info            # Log level: error, warn, info, debug

Nginx 代理

对于生产环境部署,请使用提供的 Nginx 配置:

# Copy configuration
sudo cp nginx/smartfridge.conf /etc/nginx/sites-available/
sudo ln -s /etc/nginx/sites-available/smartfridge.conf /etc/nginx/sites-enabled/

# Test configuration
sudo nginx -t

# Reload Nginx
sudo systemctl reload nginx

📊 监控与健康检查

健康终点指标

  • GET /health基本健康检查
  • GET /ready就绪性探针(包括数据文件状态)
  • GET /info服务器信息和功能

记录日志

服务器使用结构化日志记录,并支持可配置的日志级别:

  • 错误严重错误和异常
  • 警告警告条件和可恢复错误
  • 信息一般操作信息
  • 调试详细的调试信息

日志同时写入控制台和文件(logs/smartfridge.log)。

🚀 持续集成/持续交付 (CI/CD) 流水线

该项目包含一个全面的GitHub Actions工作流:

  • 多版本测试Node.js 18、20 和 22
  • 测试覆盖率单元测试、集成测试和端到端(E2E)测试
  • 安全扫描使用Trivy进行漏洞评估
  • Docker 测试容器构建和部署验证
  • 性能测试使用Artillery进行负载测试
  • 自动化部署Docker镜像发布

🔒 安全功能

  • 输入验证对所有输入进行Zod模式验证
  • 安全头部(或安全标头)XSS防护、CSRF防护、内容嗅探防护
  • 错误处理全面的错误捕获和安全的错误提示
  • 速率限制基于Nginx的请求速率限制
  • 集装箱安全非root用户,最小化基础镜像

📚 API 文档

MCP 工具

  1. 添加食物项在冰箱里添加一种新的食物
  2. 移除食物项通过ID移除一个食物项
  3. 列出食品项目列出并筛选食品项目

HTTP 端点

  • POST /api/tools/{toolName}通过HTTP执行MCP工具
  • GET /api/tools列出可用工具
  • GET /api/resources列出可用资源
  • GET /api/resources/{uri}读取资源内容

请参阅测试文件以获取全面的API使用示例。

🤝 贡献(或:参与贡献)

  1. 克隆该仓库
  2. 创建一个特性分支: git checkout -b feature/amazing-feature
  3. 进行你的更改并添加测试
  4. 运行测试套件: npm run validate
  5. 提交您的更改: git commit -m 'Add amazing feature'
  6. 推送到分支: git push origin feature/amazing-feature
  7. 创建拉取请求

开发环境设置

# Install dependencies
npm install

# Run in development mode
npm run dev:http

# Run tests in watch mode
npm run test:watch

# Lint and format code
npm run lint:fix
npm run format

📋 生产检查清单

在部署到生产环境之前:

  • \[ \] 运行完整测试套件: npm run validate
  • \[ \] 运行部署验证: npm run validate-deployment
  • \[ \] 配置环境变量
  • \[ \] 设置数据目录并分配适当权限
  • \[ \] 配置 Nginx 代理(如使用)
  • \[ \] 建立监控和日志记录
  • \[ \] 为数据目录配置备份
  • \[ \] 测试健康检查端点
  • \[ \] 验证安全头部

📖 文档

📄 许可证

这个项目遵循MIT许可证授权——详见 许可证 文件中有详细信息。

🙏 致谢

  • 模型上下文协议(MCP)规范和软件开发工具包(SDK)
  • Express.js 用于实现HTTP服务器功能
  • 卓越测试工具的社区与测试环境
  • Docker和容器化生态系统
  • GitHub Actions 用于 CI/CD 自动化

______________________________________________________________________

满怀信心地准备投入生产部署! 🚀✨(火箭+星星,常用于表达兴奋或庆祝的语气,无直接对应中文翻译,可保留原样或根据语境译为“🚀✨(激动/庆祝的语气)”)

工具与能力

工具数量

3

资源数量

0

提示词数量

0

能力标签

智能冰箱TypeScript本地部署MCP协议HTTP桥接Docker容器化数据持久化

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 只提供 3 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Smartfridge MCP Server Fixed

MCP World · 本页

3stdio有1 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Smartfridge MCP Server Fixed 怎么安装?

公开资料给出的安装命令是 docker run -p 3000:3000 -v $(pwd)/data:/app/data smartfridge-mcp-server,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Smartfridge MCP Server Fixed 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

Smartfridge MCP Server Fixed 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Smartfridge MCP Server Fixed 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Smartfridge MCP Server Fixed 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP