BM

bs4876/mcp

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

0 stars 0 forks 품질 58 트렌드 0

A local Model Context Protocol (MCP) server that empowers AI coding agents to manage software on a computer in a safe, automated, and non-interactive way.

개요

A local Model Context Protocol (MCP) server that empowers AI coding agents to manage software on a computer in a safe, automated, and non-interactive way. This project focuses on system automation: it enables AI agents to execute common software management workflows through explicit MCP tools, from installing applications to checking updates and recommending software for specific tasks. Modern AI coding agents excel at understanding requirements and automating tasks, but they often lack standardized, non-interactive access to system software management workflows. This project bridges that gap by exposing software management capabilities as explicit MCP tools, allowing AI agents to manage system software safely and predictably without relying on terminal prompts or interactive installers.

README

원문 README의 일부입니다. 원문 보기.

MCP - Software Management 🚀

A local Model Context Protocol (MCP) server that empowers AI coding agents to manage software on a computer in a safe, automated, and non-interactive way.

This project focuses on system automation: it enables AI agents to execute common software management workflows through explicit MCP tools, from installing applications to checking updates and recommending software for specific tasks.

🌟 Overview

Modern AI coding agents excel at understanding requirements and automating tasks, but they often lack standardized, non-interactive access to system software management workflows.

This project bridges that gap by exposing software management capabilities as explicit MCP tools, allowing AI agents to manage system software safely and predictably without relying on terminal prompts or interactive installers.

🏗️ Architecture

The project follows a clean layered architecture inspired by best practices from modern MCP servers:

main.py (MCP Tool Endpoints)
    ↓ Async/Sync Bridge (asyncio.to_thread)
services/ (Business Logic)
    ↓
utils/ (Low-level Utilities)
    ↓
models/ (Data Validation)

Directory Structure

software/
├── main.py                 # MCP tool endpoints
├── settings.py             # Configuration management
├── pyproject.toml          # Project metadata
├── requirements.txt        # Python dependencies
├── README.md               # This file
├── models/                 # Data validation & response models
│   ├── __init__.py
│   ├── result.py           # ToolResult, ErrorInfo
│   ├── cmd_result.py       # CmdResult (command execution)
│   └── software_models.py  # Input validators (Pydantic)
├── services/               # Business logic layer
│   ├── __init__.py
│   └── software_service.py # SoftwareService class
├── utils/                  # Utility functions
│   ├── __init__.py
│   ├── errors.py           # Error code constants
│   ├── paths.py            # Path utilities
│   └── validate.py         # Input validation helpers
└── tests/                  # Test suite (future)

Architecture Principles

  • Separation of Concerns: Each layer has a single responsibility
  • Error Handling: Structured error codes for programmatic handling
  • Non-Interactive: All operations run asynchronously, suitable for AI agents
  • Type Safety: Pydantic models for input/output validation
  • Immutability: Frozen dataclasses for reliable state management

🛠️ Available Tools

install_software

Install a software application with automatic version management and tracking.

Parameters:

  • software_name (string, required): Name of the software to install

Returns:

  • ok (boolean): Success indicator
  • data (object): Contains software name, version, and status

Error Codes:

  • software_not_found: Software not in database
  • already_installed: Software already installed
GitHub에서 전체 README 보기

설치

This server does not publish a one-line install command.

Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "software-management": { "command": "python", "args": ["/absolute/path/to/software/main.py"] } } }