- Home
- MCP servers
- MCPMake
MCPMake
- python
0
GitHub Stars
python
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"shex1627-mcpmake": {
"command": "python",
"args": [
"-m",
"mcpmake.server"
],
"env": {
"ANTHROPIC_API_KEY": "YOUR_API_KEY"
}
}
}
}You can install, configure, and run MCPMake to manage and execute Python scripts with automatic schema extraction, argument validation, and complete run history. This MCP server lets you register scripts, run them with validated inputs, and review outputs and logs all from a unified interface.
How to use
Register a script to have its arguments analyzed and mapped to a JSON Schema. Then list scripts, view details, run a script with your chosen inputs, and inspect the execution history. You can customize the Python interpreter, pass environment variables per run, and control timeouts and how much output is returned.
How to install
# Clone or navigate to the project directory
cd mcpmake
# Install in development mode
pip install -e .
Configuration and usage notes
Prerequisites: Python 3.10+ and the MCP SDK. You will also need an API key for Anthropic or OpenAI (or both) to enable automatic schema extraction.
Set your API keys in your environment before starting the server. You can use Anthropic or OpenAI keys as needed.
Add the MCP server to your MCP client configuration with the following stdio configuration that runs the server using Python and the MCPMake server module. The server will read its API key from the environment.
{
"mcpServers": {
"mcpmake": {
"command": "python",
"args": ["-m", "mcpmake.server"],
"env": {
"ANTHROPIC_API_KEY": "YOUR_API_KEY"
}
}
}
}
## Run and manage scripts in practice
1) Register a script so the system can extract its argument schema from the code and docstrings. 2) List registered scripts to confirm registration. 3) Get detailed information about a script, including its schema, path, and recent runs. 4) Run the script by providing inputs that match the extracted schema and optional environment variables, a tailored Python interpreter, a timeout, and a limit on output lines. 5) View the run history to track execution results, inputs, durations, and outputs. 6) Update the script’s schema after you modify the code.
## Data storage and retention
All data is stored under your home directory in ~/.mcpmake/. This includes the script registry, execution history, and full outputs for each run. You can inspect individual run logs and output files as needed.
## Example scripts and conventions
MCPMake works best with scripts that expose a clear command-line interface, such as argparse or click, or simple Python functions. Typical patterns include accepting input\_file and output\_dir as arguments and providing an optional verbose flag.
## Security and best practices
Use strong API keys and rotate them periodically. Isolate credentials per execution when possible. Monitor execution logs for any unexpected outputs and set appropriate timeouts to prevent runaway processes.
## Troubleshooting
If a script fails to register, verify that the script is accessible at the specified path and that the code provides a parsable argument structure. If you encounter authentication issues, ensure your API keys are correctly set in the environment where the MCP server runs.
## Notes
This server configuration uses a local Python runtime to host the MCPMake server module. All configuration and execution are performed through your MCP client, which communicates with the local server process.
## Available tools
### register\_script
Register a Python script with automatic schema extraction from LLM analysis, store its metadata, and expose a validated argument schema for future runs.
### list\_scripts
List all registered scripts along with their descriptions and current schemas.
### get\_script\_info
Retrieve detailed information about a registered script, including its schema, path, and recent runs.
### run\_script
Execute a registered script with validated inputs, optional environment variables, a chosen Python interpreter, timeout, and controlled output truncation.
### get\_run\_history
View historical runs for one or more scripts, including timestamps, inputs, exit codes, and outputs.
### update\_script
Re-analyze and refresh the script schema after changes to code or docstrings.
### delete\_script
Remove a script from the registry and delete its associated history and outputs.