33 lines
944 B
PowerShell
33 lines
944 B
PowerShell
# Install Redmine MCP server and register in .mcp.json
|
|
param(
|
|
[string]$McpFile = ".mcp.json"
|
|
)
|
|
|
|
$ErrorActionPreference = "Stop"
|
|
$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
|
|
$ServerPath = Join-Path $ScriptDir "redmine-mcp-server.mjs"
|
|
|
|
Write-Host "Installing dependencies..."
|
|
npm install --prefix $ScriptDir
|
|
|
|
Write-Host "Registering in $McpFile..."
|
|
$entry = @{
|
|
type = "stdio"
|
|
command = "node"
|
|
args = @($ServerPath.Replace('\', '/'))
|
|
}
|
|
|
|
if (Test-Path $McpFile) {
|
|
$cfg = Get-Content $McpFile -Raw | ConvertFrom-Json
|
|
if (-not $cfg.mcpServers) {
|
|
$cfg | Add-Member -NotePropertyName "mcpServers" -NotePropertyValue @{}
|
|
}
|
|
$cfg.mcpServers | Add-Member -NotePropertyName "redmine" -NotePropertyValue $entry -Force
|
|
} else {
|
|
$cfg = @{ mcpServers = @{ redmine = $entry } }
|
|
}
|
|
|
|
$cfg | ConvertTo-Json -Depth 10 | Set-Content $McpFile -Encoding UTF8
|
|
|
|
Write-Host "Done. Redmine MCP server registered."
|