docs: fix README quick start to use templates and git backup
Some checks are pending
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / test (push) Waiting to run
CI / build (push) Blocked by required conditions
CI / package (push) Blocked by required conditions

- Section 4 now uses --from-template instead of manual --docker-image
- Declarative YAML example uses fromTemplate + envFrom secretRef
- Backup section updated to git-based commands (was old JSON bundle)
- Consistent server naming (my-grafana from template, not bare grafana)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Michal
2026-03-08 14:58:12 +00:00
parent 6ddc49569a
commit 13e256aa0c

View File

@@ -56,28 +56,30 @@ mcpctl status
Secrets store credentials that servers need — API tokens, passwords, etc.
```bash
mcpctl create secret grafana-token \
--data TOKEN=glsa_xxxxxxxxxxxx
mcpctl create secret grafana-creds \
--data GRAFANA_URL=http://grafana.local:3000 \
--data GRAFANA_SERVICE_ACCOUNT_TOKEN=glsa_xxxxxxxxxxxx
```
### 4. Create your first server
A server is an MCP server definition — what Docker image to run, what transport it speaks, what environment it needs.
Browse available templates, then create a server from one:
```bash
mcpctl create server grafana \
--docker-image grafana/mcp-grafana:latest \
--transport STDIO \
--env GRAFANA_URL=http://grafana.local:3000 \
--env GRAFANA_AUTH_TOKEN=secretRef:grafana-token:TOKEN
mcpctl get templates # List available server blueprints
mcpctl describe template grafana # See required env vars, health checks, etc.
mcpctl create server my-grafana \
--from-template grafana \
--env-from-secret grafana-creds
```
mcpd pulls the image, starts a container, and keeps it running. Check on it:
```bash
mcpctl get instances # See running containers
mcpctl logs grafana # View server logs
mcpctl describe server grafana # Full details
mcpctl logs my-grafana # View server logs
mcpctl describe server my-grafana # Full details
```
### 5. Create a project
@@ -87,7 +89,7 @@ A project groups servers together and configures how Claude interacts with them.
```bash
mcpctl create project monitoring \
--description "Grafana dashboards and alerting" \
--server grafana \
--server my-grafana \
--proxy-model content-pipeline
```
@@ -112,30 +114,25 @@ Everything can be defined in YAML and applied with `mcpctl apply`:
```yaml
# infrastructure.yaml
secrets:
- name: grafana-token
- name: grafana-creds
data:
TOKEN: "glsa_xxxxxxxxxxxx"
GRAFANA_URL: "http://grafana.local:3000"
GRAFANA_SERVICE_ACCOUNT_TOKEN: "glsa_xxxxxxxxxxxx"
servers:
- name: grafana
- name: my-grafana
description: "Grafana dashboards and alerting"
dockerImage: grafana/mcp-grafana:latest
transport: STDIO
env:
- name: GRAFANA_URL
value: "http://grafana.local:3000"
- name: GRAFANA_AUTH_TOKEN
valueFrom:
secretRef:
name: grafana-token
key: TOKEN
fromTemplate: grafana
envFrom:
- secretRef:
name: grafana-creds
projects:
- name: monitoring
description: "Infrastructure monitoring"
proxyModel: content-pipeline
servers:
- grafana
- my-grafana
```
```bash
@@ -145,9 +142,9 @@ mcpctl apply -f infrastructure.yaml
Round-trip works too — export, edit, re-apply:
```bash
mcpctl get all --project monitoring -o yaml > backup.yaml
# edit backup.yaml...
mcpctl apply -f backup.yaml
mcpctl get all --project monitoring -o yaml > state.yaml
# edit state.yaml...
mcpctl apply -f state.yaml
```
## Plugin System (ProxyModel)
@@ -513,9 +510,12 @@ mcpctl console --inspect # Traffic inspector
mcpctl console --audit # Audit event timeline
mcpctl console --stdin-mcp # Claude monitor (MCP tools for Claude)
# Backup and restore
mcpctl backup -o backup.json
mcpctl restore -i backup.json
# Backup (git-based)
mcpctl backup # Status and SSH key
mcpctl backup log # Commit history
mcpctl backup restore list # Available restore points
mcpctl backup restore diff abc1234 # Preview a restore
mcpctl backup restore to abc1234 --force # Restore to a commit
# Project management
mcpctl --project monitoring get servers # Project-scoped listing