• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / cli / 19105505226

05 Nov 2025 02:34PM UTC coverage: 53.269% (-1.4%) from 54.699%
19105505226

Pull #4383

github

web-flow
Merge 79948e448 into 4054f205d
Pull Request #4383: feat(mcp): add `supabase mcp init` command to configure MCP clients

0 of 309 new or added lines in 9 files covered. (0.0%)

5 existing lines in 1 file now uncovered.

6388 of 11992 relevant lines covered (53.27%)

5.97 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/internal/mcp/init/client.go
1
package mcpinit
2

3
import (
4
        "context"
5
        "os/exec"
6

7
        "github.com/spf13/afero"
8
)
9

10
// Client represents an MCP client that can be configured
11
type Client interface {
12
        // Name returns the client identifier (e.g., "claude-code")
13
        Name() string
14

15
        // DisplayName returns the human-readable name (e.g., "Claude Code")
16
        DisplayName() string
17

18
        // IsInstalled checks if the client is installed on the system
19
        IsInstalled() bool
20

21
        // InstallInstructions returns instructions for installing the client
22
        InstallInstructions() string
23

24
        // Configure performs the configuration for this client
25
        Configure(ctx context.Context, fsys afero.Fs) error
26
}
27

28
// baseClient provides default implementations for the Client interface
29
type baseClient struct {
30
        name                string
31
        displayName         string
32
        installInstructions string
33
        checkInstalled      func() bool
34
}
35

NEW
36
func (b *baseClient) Name() string {
×
NEW
37
        return b.name
×
NEW
38
}
×
39

NEW
40
func (b *baseClient) DisplayName() string {
×
NEW
41
        return b.displayName
×
NEW
42
}
×
43

NEW
44
func (b *baseClient) IsInstalled() bool {
×
NEW
45
        if b.checkInstalled != nil {
×
NEW
46
                return b.checkInstalled()
×
NEW
47
        }
×
NEW
48
        return false
×
49
}
50

NEW
51
func (b *baseClient) InstallInstructions() string {
×
NEW
52
        return b.installInstructions
×
NEW
53
}
×
54

55
// commandExists checks if a command-line tool is available
NEW
56
func commandExists(command string) bool {
×
NEW
57
        _, err := exec.LookPath(command)
×
NEW
58
        return err == nil
×
NEW
59
}
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc