sketch: add MCP support

Lets you initialize extra tools via MCP. This is additive, so it's
harmless enough.

Here are some examples of the kind of things you can pass to the -mcp
flag.

  {"name": "context7", "type": "http", "url": "https://mcp.context7.com/mcp"}
  {"name": "context7-http", "type": "http", "url": "https://mcp.context7.com/mcp"}
  {"name": "context7-stdio", "type": "stdio", "command": "npx", "args": ["-y", "@upstash/context7-mcp"]}
  {"name": "context7-sse", "type": "sse", "url": "https://mcp.context7.com/sse"}
  {"name": "local-tool", "type": "stdio", "command": "my_tool", "args": ["--option", "value"], "env": {"TOKEN": "secret"}}
  { "name": "playwright", "command": "npx", "args": [ "@playwright/mcp@latest" ]}

Co-Authored-By: sketch <hello@sketch.dev>
Change-ID: s259a35d11e7bd660k
diff --git a/go.mod b/go.mod
index 363a739..66ab7e1 100644
--- a/go.mod
+++ b/go.mod
@@ -13,6 +13,7 @@
 	github.com/google/go-cmp v0.7.0
 	github.com/google/uuid v1.6.0
 	github.com/kevinburke/ssh_config v1.2.0
+	github.com/mark3labs/mcp-go v0.32.0
 	github.com/oklog/ulid/v2 v2.1.0
 	github.com/pkg/sftp v1.13.9
 	github.com/richardlehane/crock32 v1.0.1
@@ -36,6 +37,8 @@
 	github.com/kr/fs v0.1.0 // indirect
 	github.com/mattn/go-colorable v0.1.13 // indirect
 	github.com/mattn/go-isatty v0.0.20 // indirect
+	github.com/spf13/cast v1.7.1 // indirect
+	github.com/yosida95/uritemplate/v3 v3.0.2 // indirect
 	golang.org/x/mod v0.24.0 // indirect
 	golang.org/x/sys v0.33.0 // indirect
 	golang.org/x/text v0.24.0 // indirect