Skip to main content

English | 中文

Software MCP Server

A Model Context Protocol server that provides software management capabilities for your computer. This server enables LLMs to get a list of installed software, open applications, and close running programs, with support for multiple operating systems (Windows, macOS, Linux).

Available Tools

  • get_software_list_tool - Get a list of installed software on the computer.

    • Returns a list of software names.
  • open_software - Open software by name.

    • Required arguments:
      • name (string): The name of the software to open.
  • close_software - Close running software by name (currently Windows-only).

    • Required arguments:
      • name (string): The name of the software to close.

Installation

When using uv, no specific installation is needed. We can use uvx to directly run mcp-software-server.

Using PIP

Alternatively, you can install dependencies via pip:

pip install mcp_server_software

Configuration

Configure for Claude.app

Add to your Claude settings:

Using uvx
"mcpServers": {
  "software_manager": {
    "command": "uvx",
    "args": ["mcp-server-software"]
  }
}
Using uv
"mcpServers": {
  "software_manager": {
        "command": "uv",
        "args": [
          "--directory",
          "{path/to/mcp_server_software.py}",
          "run",
          "mcp_server_software.py"
        ],
        "env": {},
        "disabled": false,
        "alwaysAllow": []
    }
}
Using manual Python command
"mcpServers": {
  "software_manager": {
    "command": "python",
    "args": ["path/to/mcp_server_software.py"]
  }
}

Platform Support

  • Windows: Full functionality (software listing, opening, closing)
  • macOS: Software listing and opening only
  • Linux: Software listing and opening only

Example Interactions

  1. Get software list:
{
  "name": "get_software_list_tool",
  "arguments": {}
}

Response:

[
  "Chrome",
  "Firefox",
  "Visual Studio Code",
  "Notepad++",
  ...
]
  1. Open software:
{
  "name": "open_software",
  "arguments": {
    "name": "Chrome"
  }
}

Response:

"Opened Chrome"
  1. Close software (Windows only):
{
  "name": "close_software",
  "arguments": {
    "name": "Chrome"
  }
}

Response:

"Closed Chrome"

Debugging

You can use the MCP inspector to debug the server:

npx @modelcontextprotocol/inspector python mcp_server_software.py

Examples of Questions for Claude/AI

  1. "What applications do I have installed on my computer?"
  2. "Can you open Notepad for me?"
  3. "Please close Chrome browser"
  4. "Show me all available software on my system"

How It Works

The server creates and maintains a JSON file (software_list.json) that maps software names to their executable paths. On Windows, it scans Start Menu shortcuts, on macOS it looks in the Applications folder, and on Linux it examines desktop entry files.

You can manually edit this JSON file to add custom software entries:

{
  "CustomApp": "C:\\Path\\To\\Custom\\App.exe"
}

Requirements

  • Python 3.7+
  • psutil
  • mcp
  • pywin32 (Windows only)

Contributing

Contributions are welcome to help expand and improve mcp-software-server. Consider adding support for:

  • Better closing support on macOS/Linux
  • Enhanced software detection
  • Software installation/uninstallation capabilities
  • Additional software management features

License

This project is licensed under the MIT License. See the LICENSE file for details.

Metadata

Release files for mcp-server-software 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-server-software 0.1.0
File Size Uploaded Provenance
mcp_server_software-0.1.0.tar.gz 4.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for mcp-server-software 0.1.0
File Interpreter ABI Platform
mcp_server_software-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 8.3 kB

Release files / mcp_server_software-0.1.0.tar.gz

Download URL mcp_server_software-0.1.0.tar.gz
Size 4.0 kB
Tags Source
SHA-256 checksum
How to use checksums
adee4db43215db344ea7c0833cf0574c6bde61dbbc68cc54b3dc9c95184d5cf0
BLAKE2b-256 checksum
How to use checksums
583224f72172549a2db2522e07d2e4ffe6c4ce39a86a7f73da9fbce4261364b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / mcp_server_software-0.1.0-py3-none-any.whl

Download URL mcp_server_software-0.1.0-py3-none-any.whl
Size 4.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6358f770eb84038f3027a0db29154fd7fb23d37144b7b3d36fa7410e31954701
BLAKE2b-256 checksum
How to use checksums
8cdd51863f2d598bc074f145f79bffecac2334705ea5279809e063f3fb106d0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Security for mcp-server-software 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page