@butlerw/vellum 0.2.11 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +411 -411
- package/dist/index.mjs +16169 -10856
- package/dist/markdown/mcp/integration.md +98 -98
- package/dist/markdown/modes/plan.md +505 -505
- package/dist/markdown/modes/spec.md +549 -549
- package/dist/markdown/modes/vibe.md +403 -403
- package/dist/markdown/roles/analyst.md +504 -504
- package/dist/markdown/roles/architect.md +409 -409
- package/dist/markdown/roles/base.md +838 -838
- package/dist/markdown/roles/coder.md +489 -489
- package/dist/markdown/roles/orchestrator.md +665 -665
- package/dist/markdown/roles/qa.md +431 -431
- package/dist/markdown/roles/writer.md +498 -498
- package/dist/markdown/spec/architect.md +801 -801
- package/dist/markdown/spec/requirements.md +607 -607
- package/dist/markdown/spec/researcher.md +583 -583
- package/dist/markdown/spec/tasks.md +581 -581
- package/dist/markdown/spec/validator.md +672 -672
- package/dist/markdown/workers/analyst.md +247 -247
- package/dist/markdown/workers/architect.md +320 -320
- package/dist/markdown/workers/coder.md +235 -235
- package/dist/markdown/workers/devops.md +336 -336
- package/dist/markdown/workers/qa.md +311 -311
- package/dist/markdown/workers/researcher.md +310 -310
- package/dist/markdown/workers/security.md +348 -348
- package/dist/markdown/workers/writer.md +295 -295
- package/package.json +3 -3
|
@@ -1,98 +1,98 @@
|
|
|
1
|
-
# MCP Tool Integration
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
|
|
5
|
-
The Model Context Protocol (MCP) extends your capabilities by connecting to external servers that provide additional tools and resources. MCP servers can run locally (stdio) or remotely (HTTP/SSE).
|
|
6
|
-
|
|
7
|
-
## Tool Naming Convention
|
|
8
|
-
|
|
9
|
-
MCP tools follow the naming pattern:
|
|
10
|
-
|
|
11
|
-
```text
|
|
12
|
-
mcp:{server-uid}/{tool-name}
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
**Examples:**
|
|
16
|
-
|
|
17
|
-
- `mcp:fs01/read_file` - Read file tool from filesystem server
|
|
18
|
-
- `mcp:gh01/create_issue` - Create issue tool from GitHub server
|
|
19
|
-
- `mcp:db01/query` - Query tool from database server
|
|
20
|
-
|
|
21
|
-
The server UID is a short identifier (e.g., `fs01`, `gh01`) assigned to each connected server.
|
|
22
|
-
|
|
23
|
-
## When to Use MCP Tools
|
|
24
|
-
|
|
25
|
-
### Prefer MCP Tools When
|
|
26
|
-
|
|
27
|
-
1. **Domain-specific operations** - MCP servers often provide specialized tools (e.g., database queries, API integrations)
|
|
28
|
-
2. **External service access** - Interacting with third-party services configured by the user
|
|
29
|
-
3. **User-configured capabilities** - Tools the user has explicitly added via MCP
|
|
30
|
-
|
|
31
|
-
### Prefer Built-in Tools When
|
|
32
|
-
|
|
33
|
-
1. **Standard file operations** - Use built-in `read_file`, `write_file` for local filesystem
|
|
34
|
-
2. **Shell commands** - Use built-in `execute_command` for terminal operations
|
|
35
|
-
3. **Core functionality** - Built-in tools are optimized and don't require external server
|
|
36
|
-
|
|
37
|
-
## Tool Discovery
|
|
38
|
-
|
|
39
|
-
Connected MCP servers and their tools are listed in the system prompt under "Connected MCP Servers". Each server section includes:
|
|
40
|
-
|
|
41
|
-
- **Server name and UID** - Identifier for tool calls
|
|
42
|
-
- **Status** - Connection state (connected, error, etc.)
|
|
43
|
-
- **Available Tools** - List of tools with descriptions and input schemas
|
|
44
|
-
- **Resources** - Static data resources the server provides
|
|
45
|
-
- **Resource Templates** - Dynamic resource patterns
|
|
46
|
-
|
|
47
|
-
## Usage Best Practices
|
|
48
|
-
|
|
49
|
-
1. **Check available tools** - Review the connected servers section before attempting MCP tool calls
|
|
50
|
-
2. **Use correct naming** - Always use the full `mcp:{uid}/{tool}` format
|
|
51
|
-
3. **Handle errors gracefully** - MCP servers may disconnect; fall back to alternatives if needed
|
|
52
|
-
4. **Respect trust levels** - Some servers are marked as trusted; others may require user confirmation
|
|
53
|
-
|
|
54
|
-
## Trust Levels
|
|
55
|
-
|
|
56
|
-
Servers can be configured with trust levels:
|
|
57
|
-
|
|
58
|
-
- **Trusted servers** (🔓) - Tool calls execute without user confirmation
|
|
59
|
-
- **Untrusted servers** - Each tool call requires explicit user approval
|
|
60
|
-
|
|
61
|
-
Trust is configured per-server in the MCP configuration file.
|
|
62
|
-
|
|
63
|
-
## Configuration
|
|
64
|
-
|
|
65
|
-
MCP servers are configured in:
|
|
66
|
-
|
|
67
|
-
- Global: `~/.vellum/mcp.json`
|
|
68
|
-
- Project: `.vellum/mcp.json` (overrides global)
|
|
69
|
-
|
|
70
|
-
Example configuration:
|
|
71
|
-
|
|
72
|
-
```json
|
|
73
|
-
{
|
|
74
|
-
"mcpServers": {
|
|
75
|
-
"filesystem": {
|
|
76
|
-
"command": "npx",
|
|
77
|
-
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"],
|
|
78
|
-
"trusted": true
|
|
79
|
-
},
|
|
80
|
-
"github": {
|
|
81
|
-
"command": "npx",
|
|
82
|
-
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
83
|
-
"env": { "GITHUB_TOKEN": "${GITHUB_TOKEN}" },
|
|
84
|
-
"includeTools": ["create_issue", "list_issues"],
|
|
85
|
-
"trusted": false
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
## Error Handling
|
|
92
|
-
|
|
93
|
-
If an MCP tool call fails:
|
|
94
|
-
|
|
95
|
-
1. Check if the server is still connected
|
|
96
|
-
2. Verify the tool name and parameters
|
|
97
|
-
3. Review any error messages in the response
|
|
98
|
-
4. Consider using an alternative approach or built-in tool
|
|
1
|
+
# MCP Tool Integration
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
The Model Context Protocol (MCP) extends your capabilities by connecting to external servers that provide additional tools and resources. MCP servers can run locally (stdio) or remotely (HTTP/SSE).
|
|
6
|
+
|
|
7
|
+
## Tool Naming Convention
|
|
8
|
+
|
|
9
|
+
MCP tools follow the naming pattern:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
mcp:{server-uid}/{tool-name}
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Examples:**
|
|
16
|
+
|
|
17
|
+
- `mcp:fs01/read_file` - Read file tool from filesystem server
|
|
18
|
+
- `mcp:gh01/create_issue` - Create issue tool from GitHub server
|
|
19
|
+
- `mcp:db01/query` - Query tool from database server
|
|
20
|
+
|
|
21
|
+
The server UID is a short identifier (e.g., `fs01`, `gh01`) assigned to each connected server.
|
|
22
|
+
|
|
23
|
+
## When to Use MCP Tools
|
|
24
|
+
|
|
25
|
+
### Prefer MCP Tools When
|
|
26
|
+
|
|
27
|
+
1. **Domain-specific operations** - MCP servers often provide specialized tools (e.g., database queries, API integrations)
|
|
28
|
+
2. **External service access** - Interacting with third-party services configured by the user
|
|
29
|
+
3. **User-configured capabilities** - Tools the user has explicitly added via MCP
|
|
30
|
+
|
|
31
|
+
### Prefer Built-in Tools When
|
|
32
|
+
|
|
33
|
+
1. **Standard file operations** - Use built-in `read_file`, `write_file` for local filesystem
|
|
34
|
+
2. **Shell commands** - Use built-in `execute_command` for terminal operations
|
|
35
|
+
3. **Core functionality** - Built-in tools are optimized and don't require external server
|
|
36
|
+
|
|
37
|
+
## Tool Discovery
|
|
38
|
+
|
|
39
|
+
Connected MCP servers and their tools are listed in the system prompt under "Connected MCP Servers". Each server section includes:
|
|
40
|
+
|
|
41
|
+
- **Server name and UID** - Identifier for tool calls
|
|
42
|
+
- **Status** - Connection state (connected, error, etc.)
|
|
43
|
+
- **Available Tools** - List of tools with descriptions and input schemas
|
|
44
|
+
- **Resources** - Static data resources the server provides
|
|
45
|
+
- **Resource Templates** - Dynamic resource patterns
|
|
46
|
+
|
|
47
|
+
## Usage Best Practices
|
|
48
|
+
|
|
49
|
+
1. **Check available tools** - Review the connected servers section before attempting MCP tool calls
|
|
50
|
+
2. **Use correct naming** - Always use the full `mcp:{uid}/{tool}` format
|
|
51
|
+
3. **Handle errors gracefully** - MCP servers may disconnect; fall back to alternatives if needed
|
|
52
|
+
4. **Respect trust levels** - Some servers are marked as trusted; others may require user confirmation
|
|
53
|
+
|
|
54
|
+
## Trust Levels
|
|
55
|
+
|
|
56
|
+
Servers can be configured with trust levels:
|
|
57
|
+
|
|
58
|
+
- **Trusted servers** (🔓) - Tool calls execute without user confirmation
|
|
59
|
+
- **Untrusted servers** - Each tool call requires explicit user approval
|
|
60
|
+
|
|
61
|
+
Trust is configured per-server in the MCP configuration file.
|
|
62
|
+
|
|
63
|
+
## Configuration
|
|
64
|
+
|
|
65
|
+
MCP servers are configured in:
|
|
66
|
+
|
|
67
|
+
- Global: `~/.vellum/mcp.json`
|
|
68
|
+
- Project: `.vellum/mcp.json` (overrides global)
|
|
69
|
+
|
|
70
|
+
Example configuration:
|
|
71
|
+
|
|
72
|
+
```json
|
|
73
|
+
{
|
|
74
|
+
"mcpServers": {
|
|
75
|
+
"filesystem": {
|
|
76
|
+
"command": "npx",
|
|
77
|
+
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"],
|
|
78
|
+
"trusted": true
|
|
79
|
+
},
|
|
80
|
+
"github": {
|
|
81
|
+
"command": "npx",
|
|
82
|
+
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
83
|
+
"env": { "GITHUB_TOKEN": "${GITHUB_TOKEN}" },
|
|
84
|
+
"includeTools": ["create_issue", "list_issues"],
|
|
85
|
+
"trusted": false
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Error Handling
|
|
92
|
+
|
|
93
|
+
If an MCP tool call fails:
|
|
94
|
+
|
|
95
|
+
1. Check if the server is still connected
|
|
96
|
+
2. Verify the tool name and parameters
|
|
97
|
+
3. Review any error messages in the response
|
|
98
|
+
4. Consider using an alternative approach or built-in tool
|