docs: fix README quick start to use templates and git backup
- 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:
64
README.md
64
README.md
@@ -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 get instances # See running containers
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user