@felores/mcp-video 0.5.3 → 0.5.4
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/.prettierrc +3 -3
- package/CODE_OF_CONDUCT.md +49 -49
- package/COPYING +7 -7
- package/README.md +186 -207
- package/eslint.config.mjs +88 -88
- package/lib/index.mjs +9 -8
- package/lib/index.mjs.map +1 -1
- package/package.json +28 -28
- package/src/index.mts +208 -207
- package/src/vtt2txt.mts +24 -24
- package/tsconfig.json +28 -28
- package/documentation/mcp-inspector-guide.md +0 -308
- package/documentation/mcp-llm-guide.md +0 -379
@@ -1,308 +0,0 @@
|
|
1
|
-
# MCP Inspector Guide for LLMs
|
2
|
-
|
3
|
-
This guide provides detailed information about using the MCP Inspector tool for testing, debugging, and validating MCP servers.
|
4
|
-
|
5
|
-
## 1. Getting Started
|
6
|
-
|
7
|
-
### Installation and Basic Usage
|
8
|
-
```bash
|
9
|
-
# Run directly without installation
|
10
|
-
npx mcp-inspector <server-command>
|
11
|
-
|
12
|
-
# For NPM/PyPi packages
|
13
|
-
npx mcp-inspector npx -y @your-package/server-name
|
14
|
-
|
15
|
-
# For local development
|
16
|
-
npx mcp-inspector node path/to/your/server.js
|
17
|
-
npx mcp-inspector python path/to/your/server.py
|
18
|
-
```
|
19
|
-
|
20
|
-
### Server Connection Setup
|
21
|
-
1. Select appropriate transport (stdio/SSE)
|
22
|
-
2. Configure command-line arguments
|
23
|
-
3. Set required environment variables
|
24
|
-
4. Test initial connection
|
25
|
-
|
26
|
-
## 2. Core Features
|
27
|
-
|
28
|
-
### Server Connection Pane
|
29
|
-
1. Transport Selection:
|
30
|
-
- stdio for local servers
|
31
|
-
- SSE for network-based servers
|
32
|
-
- Custom transport configuration
|
33
|
-
|
34
|
-
2. Connection Settings:
|
35
|
-
- Command-line arguments
|
36
|
-
- Environment variables
|
37
|
-
- Connection timeouts
|
38
|
-
|
39
|
-
3. Status Monitoring:
|
40
|
-
- Connection state
|
41
|
-
- Protocol version
|
42
|
-
- Capability negotiation
|
43
|
-
|
44
|
-
### Resources Tab
|
45
|
-
1. Resource Listing:
|
46
|
-
```typescript
|
47
|
-
// Example resource listing structure
|
48
|
-
{
|
49
|
-
resources: [
|
50
|
-
{
|
51
|
-
uri: "custom://resource",
|
52
|
-
name: "Resource Name",
|
53
|
-
description: "Resource description",
|
54
|
-
mimeType: "text/plain"
|
55
|
-
}
|
56
|
-
]
|
57
|
-
}
|
58
|
-
```
|
59
|
-
|
60
|
-
2. Resource Inspection:
|
61
|
-
- View metadata
|
62
|
-
- Examine content
|
63
|
-
- Check MIME types
|
64
|
-
- Test resource reading
|
65
|
-
|
66
|
-
3. Subscription Testing:
|
67
|
-
- Subscribe to updates
|
68
|
-
- Monitor changes
|
69
|
-
- Test unsubscribe
|
70
|
-
|
71
|
-
### Prompts Tab
|
72
|
-
1. Template Inspection:
|
73
|
-
```typescript
|
74
|
-
// Example prompt structure
|
75
|
-
{
|
76
|
-
name: "prompt-name",
|
77
|
-
description: "Prompt description",
|
78
|
-
arguments: [
|
79
|
-
{
|
80
|
-
name: "arg1",
|
81
|
-
description: "Argument description",
|
82
|
-
required: true
|
83
|
-
}
|
84
|
-
]
|
85
|
-
}
|
86
|
-
```
|
87
|
-
|
88
|
-
2. Testing Features:
|
89
|
-
- View available templates
|
90
|
-
- Test with custom arguments
|
91
|
-
- Preview generated messages
|
92
|
-
- Validate responses
|
93
|
-
|
94
|
-
### Tools Tab
|
95
|
-
1. Tool Discovery:
|
96
|
-
```typescript
|
97
|
-
// Example tool listing
|
98
|
-
{
|
99
|
-
tools: [
|
100
|
-
{
|
101
|
-
name: "tool-name",
|
102
|
-
description: "Tool description",
|
103
|
-
inputSchema: {
|
104
|
-
type: "object",
|
105
|
-
properties: {
|
106
|
-
// Parameter definitions
|
107
|
-
}
|
108
|
-
}
|
109
|
-
}
|
110
|
-
]
|
111
|
-
}
|
112
|
-
```
|
113
|
-
|
114
|
-
2. Testing Features:
|
115
|
-
- List available tools
|
116
|
-
- Validate schemas
|
117
|
-
- Test execution
|
118
|
-
- Monitor results
|
119
|
-
|
120
|
-
### Notifications Pane
|
121
|
-
1. Message Types:
|
122
|
-
- Server logs
|
123
|
-
- Error messages
|
124
|
-
- Status updates
|
125
|
-
- Progress notifications
|
126
|
-
|
127
|
-
2. Monitoring:
|
128
|
-
- Real-time updates
|
129
|
-
- Message filtering
|
130
|
-
- Error tracking
|
131
|
-
|
132
|
-
## 3. Testing Workflows
|
133
|
-
|
134
|
-
### Development Workflow
|
135
|
-
1. Initial Testing:
|
136
|
-
```bash
|
137
|
-
# Start Inspector with development server
|
138
|
-
npx mcp-inspector npm run dev
|
139
|
-
```
|
140
|
-
|
141
|
-
2. Development Cycle:
|
142
|
-
- Make code changes
|
143
|
-
- Restart server
|
144
|
-
- Test affected features
|
145
|
-
- Monitor logs
|
146
|
-
- Debug issues
|
147
|
-
|
148
|
-
3. Feature Testing:
|
149
|
-
- Verify basic functionality
|
150
|
-
- Test edge cases
|
151
|
-
- Check error handling
|
152
|
-
- Validate responses
|
153
|
-
|
154
|
-
### Resource Testing
|
155
|
-
1. Listing Verification:
|
156
|
-
- Check resource discovery
|
157
|
-
- Validate metadata
|
158
|
-
- Test pagination
|
159
|
-
- Check updates
|
160
|
-
|
161
|
-
2. Content Testing:
|
162
|
-
- Read resource content
|
163
|
-
- Verify MIME types
|
164
|
-
- Test binary data
|
165
|
-
- Check encoding
|
166
|
-
|
167
|
-
3. Subscription Testing:
|
168
|
-
- Subscribe to resources
|
169
|
-
- Monitor updates
|
170
|
-
- Test unsubscribe
|
171
|
-
- Verify notifications
|
172
|
-
|
173
|
-
### Tool Testing
|
174
|
-
1. Discovery Testing:
|
175
|
-
- List available tools
|
176
|
-
- Verify schemas
|
177
|
-
- Check descriptions
|
178
|
-
- Validate metadata
|
179
|
-
|
180
|
-
2. Execution Testing:
|
181
|
-
- Test with valid inputs
|
182
|
-
- Try invalid inputs
|
183
|
-
- Check error handling
|
184
|
-
- Monitor progress
|
185
|
-
- Validate results
|
186
|
-
|
187
|
-
### Prompt Testing
|
188
|
-
1. Template Verification:
|
189
|
-
- Check available prompts
|
190
|
-
- Validate arguments
|
191
|
-
- Test descriptions
|
192
|
-
- Verify schemas
|
193
|
-
|
194
|
-
2. Generation Testing:
|
195
|
-
- Test with arguments
|
196
|
-
- Check message format
|
197
|
-
- Validate content
|
198
|
-
- Test error cases
|
199
|
-
|
200
|
-
## 4. Debugging
|
201
|
-
|
202
|
-
### Common Issues
|
203
|
-
1. Connection Problems:
|
204
|
-
- Check server process
|
205
|
-
- Verify transport
|
206
|
-
- Monitor initialization
|
207
|
-
- Check capabilities
|
208
|
-
|
209
|
-
2. Message Errors:
|
210
|
-
- Validate formats
|
211
|
-
- Check handlers
|
212
|
-
- Monitor responses
|
213
|
-
- Track errors
|
214
|
-
|
215
|
-
3. Resource Issues:
|
216
|
-
- Check permissions
|
217
|
-
- Verify paths
|
218
|
-
- Test content types
|
219
|
-
- Monitor updates
|
220
|
-
|
221
|
-
### Debugging Tools
|
222
|
-
1. Console Logging:
|
223
|
-
```typescript
|
224
|
-
// Server-side logging
|
225
|
-
console.error("Debug message");
|
226
|
-
```
|
227
|
-
|
228
|
-
2. Message Inspection:
|
229
|
-
- View raw messages
|
230
|
-
- Check formatting
|
231
|
-
- Track request/response
|
232
|
-
- Monitor timing
|
233
|
-
|
234
|
-
3. Error Analysis:
|
235
|
-
- Stack traces
|
236
|
-
- Error codes
|
237
|
-
- Response validation
|
238
|
-
- Context examination
|
239
|
-
|
240
|
-
## 5. Best Practices
|
241
|
-
|
242
|
-
### Testing Strategy
|
243
|
-
1. Systematic Approach:
|
244
|
-
- Test core features first
|
245
|
-
- Add edge cases
|
246
|
-
- Verify error handling
|
247
|
-
- Check performance
|
248
|
-
|
249
|
-
2. Resource Management:
|
250
|
-
- Monitor memory usage
|
251
|
-
- Check file handles
|
252
|
-
- Verify cleanup
|
253
|
-
- Test limits
|
254
|
-
|
255
|
-
3. Error Handling:
|
256
|
-
- Test all error paths
|
257
|
-
- Verify messages
|
258
|
-
- Check recovery
|
259
|
-
- Monitor cleanup
|
260
|
-
|
261
|
-
### Security Testing
|
262
|
-
1. Input Validation:
|
263
|
-
- Test boundaries
|
264
|
-
- Try invalid input
|
265
|
-
- Check sanitization
|
266
|
-
- Verify limits
|
267
|
-
|
268
|
-
2. Authentication:
|
269
|
-
- Test credentials
|
270
|
-
- Check permissions
|
271
|
-
- Verify tokens
|
272
|
-
- Monitor access
|
273
|
-
|
274
|
-
3. Resource Protection:
|
275
|
-
- Test access control
|
276
|
-
- Check paths
|
277
|
-
- Verify isolation
|
278
|
-
- Monitor usage
|
279
|
-
|
280
|
-
## 6. Performance Testing
|
281
|
-
|
282
|
-
### Response Time
|
283
|
-
1. Operation Timing:
|
284
|
-
- Track latency
|
285
|
-
- Monitor variance
|
286
|
-
- Check thresholds
|
287
|
-
- Log outliers
|
288
|
-
|
289
|
-
2. Batch Operations:
|
290
|
-
- Test concurrent requests
|
291
|
-
- Monitor memory
|
292
|
-
- Check throughput
|
293
|
-
- Verify ordering
|
294
|
-
|
295
|
-
### Resource Usage
|
296
|
-
1. Memory Monitoring:
|
297
|
-
- Track allocation
|
298
|
-
- Check leaks
|
299
|
-
- Monitor peaks
|
300
|
-
- Verify cleanup
|
301
|
-
|
302
|
-
2. Connection Management:
|
303
|
-
- Test connection stability
|
304
|
-
- Check timeouts
|
305
|
-
- Monitor states
|
306
|
-
- Verify cleanup
|
307
|
-
|
308
|
-
This guide should be used as a reference when testing and debugging MCP servers using the Inspector tool. Always consider the specific requirements of your server while following these guidelines.
|
@@ -1,379 +0,0 @@
|
|
1
|
-
# MCP Development Guide for LLMs
|
2
|
-
|
3
|
-
This guide provides structured information for LLMs to assist in creating, modifying, and using Model Context Protocol (MCP) servers.
|
4
|
-
|
5
|
-
## 1. Core Concepts
|
6
|
-
|
7
|
-
### Protocol Overview
|
8
|
-
- MCP enables standardized communication between LLM applications and integrations
|
9
|
-
- Uses client-server architecture with JSON-RPC 2.0 message format
|
10
|
-
- Latest protocol version: 2024-11-05
|
11
|
-
- Supports stdio and SSE transports
|
12
|
-
|
13
|
-
### Key Components
|
14
|
-
1. **Hosts**: LLM applications that initiate connections (e.g., Claude Desktop)
|
15
|
-
2. **Clients**: Maintain 1:1 connections with servers
|
16
|
-
3. **Servers**: Provide context, tools, and prompts to clients
|
17
|
-
4. **Resources**: File-like data that can be read by clients
|
18
|
-
5. **Tools**: Functions that can be called by the LLM
|
19
|
-
6. **Prompts**: Pre-written templates for specific tasks
|
20
|
-
|
21
|
-
## 2. Server Implementation Guidelines
|
22
|
-
|
23
|
-
### Server Structure
|
24
|
-
1. Core Server Class:
|
25
|
-
```typescript
|
26
|
-
class Server extends Protocol<ServerRequest, ServerNotification, ServerResult> {
|
27
|
-
constructor(serverInfo: Implementation, options: ServerOptions)
|
28
|
-
// Must implement base protocol methods
|
29
|
-
}
|
30
|
-
```
|
31
|
-
|
32
|
-
2. Required Capabilities:
|
33
|
-
```typescript
|
34
|
-
interface ServerCapabilities {
|
35
|
-
experimental?: object;
|
36
|
-
logging?: object;
|
37
|
-
prompts?: { listChanged?: boolean };
|
38
|
-
resources?: {
|
39
|
-
subscribe?: boolean;
|
40
|
-
listChanged?: boolean
|
41
|
-
};
|
42
|
-
tools?: { listChanged?: boolean };
|
43
|
-
}
|
44
|
-
```
|
45
|
-
|
46
|
-
### Essential Implementation Steps
|
47
|
-
|
48
|
-
1. **Server Initialization**:
|
49
|
-
```typescript
|
50
|
-
const server = new Server(
|
51
|
-
{
|
52
|
-
name: "your-server-name",
|
53
|
-
version: "1.0.0"
|
54
|
-
},
|
55
|
-
{
|
56
|
-
capabilities: {
|
57
|
-
// Declare supported capabilities
|
58
|
-
resources: {},
|
59
|
-
tools: {},
|
60
|
-
prompts: {}
|
61
|
-
}
|
62
|
-
}
|
63
|
-
);
|
64
|
-
```
|
65
|
-
|
66
|
-
2. **Request Handlers**:
|
67
|
-
```typescript
|
68
|
-
// Example tool handler
|
69
|
-
server.setRequestHandler(ListToolsRequestSchema, async () => ({
|
70
|
-
tools: [
|
71
|
-
{
|
72
|
-
name: "tool-name",
|
73
|
-
description: "Tool description",
|
74
|
-
inputSchema: {
|
75
|
-
type: "object",
|
76
|
-
properties: {
|
77
|
-
// Define parameters
|
78
|
-
}
|
79
|
-
}
|
80
|
-
}
|
81
|
-
]
|
82
|
-
}));
|
83
|
-
```
|
84
|
-
|
85
|
-
3. **Transport Setup**:
|
86
|
-
```typescript
|
87
|
-
const transport = new StdioServerTransport();
|
88
|
-
await server.connect(transport);
|
89
|
-
```
|
90
|
-
|
91
|
-
## 3. Core Features Implementation
|
92
|
-
|
93
|
-
### Resources
|
94
|
-
```typescript
|
95
|
-
interface Resource {
|
96
|
-
uri: string;
|
97
|
-
name: string;
|
98
|
-
description?: string;
|
99
|
-
mimeType?: string;
|
100
|
-
}
|
101
|
-
|
102
|
-
// Handler example
|
103
|
-
server.setRequestHandler(ListResourcesRequestSchema, async () => ({
|
104
|
-
resources: [
|
105
|
-
{
|
106
|
-
uri: "custom://resource",
|
107
|
-
name: "Resource Name",
|
108
|
-
description: "Resource description"
|
109
|
-
}
|
110
|
-
]
|
111
|
-
}));
|
112
|
-
```
|
113
|
-
|
114
|
-
### Tools
|
115
|
-
```typescript
|
116
|
-
interface Tool {
|
117
|
-
name: string;
|
118
|
-
description?: string;
|
119
|
-
inputSchema: {
|
120
|
-
type: "object";
|
121
|
-
properties?: object;
|
122
|
-
required?: string[];
|
123
|
-
};
|
124
|
-
}
|
125
|
-
|
126
|
-
// Handler example
|
127
|
-
server.setRequestHandler(CallToolRequestSchema, async (request) => ({
|
128
|
-
content: [
|
129
|
-
{
|
130
|
-
type: "text",
|
131
|
-
text: "Tool execution result"
|
132
|
-
}
|
133
|
-
]
|
134
|
-
}));
|
135
|
-
```
|
136
|
-
|
137
|
-
### Prompts
|
138
|
-
```typescript
|
139
|
-
interface Prompt {
|
140
|
-
name: string;
|
141
|
-
description?: string;
|
142
|
-
arguments?: PromptArgument[];
|
143
|
-
}
|
144
|
-
|
145
|
-
// Handler example
|
146
|
-
server.setRequestHandler(GetPromptRequestSchema, async (request) => ({
|
147
|
-
messages: [
|
148
|
-
{
|
149
|
-
role: "user",
|
150
|
-
content: {
|
151
|
-
type: "text",
|
152
|
-
text: "Prompt template"
|
153
|
-
}
|
154
|
-
}
|
155
|
-
]
|
156
|
-
}));
|
157
|
-
```
|
158
|
-
|
159
|
-
## 4. Best Practices
|
160
|
-
|
161
|
-
### Error Handling
|
162
|
-
1. Use appropriate error codes:
|
163
|
-
```typescript
|
164
|
-
enum ErrorCode {
|
165
|
-
ParseError = -32700,
|
166
|
-
InvalidRequest = -32600,
|
167
|
-
MethodNotFound = -32601,
|
168
|
-
InvalidParams = -32602,
|
169
|
-
InternalError = -32603
|
170
|
-
}
|
171
|
-
```
|
172
|
-
|
173
|
-
2. Tool errors should be in result:
|
174
|
-
```typescript
|
175
|
-
{
|
176
|
-
isError: true,
|
177
|
-
content: [{
|
178
|
-
type: "text",
|
179
|
-
text: "Error description"
|
180
|
-
}]
|
181
|
-
}
|
182
|
-
```
|
183
|
-
|
184
|
-
### Security Considerations
|
185
|
-
1. Input Validation:
|
186
|
-
- Validate all parameters against schemas
|
187
|
-
- Sanitize file paths and system commands
|
188
|
-
- Validate URLs and external identifiers
|
189
|
-
- Check parameter sizes and ranges
|
190
|
-
|
191
|
-
2. Access Control:
|
192
|
-
- Implement authentication where needed
|
193
|
-
- Use appropriate authorization checks
|
194
|
-
- Audit tool usage
|
195
|
-
- Rate limit requests
|
196
|
-
|
197
|
-
3. Resource Protection:
|
198
|
-
- Validate resource paths
|
199
|
-
- Monitor resource usage
|
200
|
-
- Implement access controls
|
201
|
-
- Rate limit requests
|
202
|
-
|
203
|
-
### Message Handling
|
204
|
-
1. Request Processing:
|
205
|
-
- Validate inputs thoroughly
|
206
|
-
- Use type-safe schemas
|
207
|
-
- Handle errors gracefully
|
208
|
-
- Implement timeouts
|
209
|
-
|
210
|
-
2. Progress Reporting:
|
211
|
-
- Use progress tokens for long operations
|
212
|
-
- Report progress incrementally
|
213
|
-
- Include total progress when known
|
214
|
-
|
215
|
-
## 5. Client Integration Guidelines
|
216
|
-
|
217
|
-
### Client Configuration
|
218
|
-
```json
|
219
|
-
{
|
220
|
-
"mcpServers": {
|
221
|
-
"server-name": {
|
222
|
-
"command": "command-to-run",
|
223
|
-
"args": ["arg1", "arg2"],
|
224
|
-
"env": {
|
225
|
-
"ENV_VAR": "value"
|
226
|
-
}
|
227
|
-
}
|
228
|
-
}
|
229
|
-
}
|
230
|
-
```
|
231
|
-
|
232
|
-
### Environment Variables
|
233
|
-
- Server inherits limited environment variables
|
234
|
-
- Custom variables must be specified in config
|
235
|
-
- Sensitive data should be in environment variables
|
236
|
-
|
237
|
-
## 6. Testing and Debugging
|
238
|
-
|
239
|
-
### MCP Inspector Usage
|
240
|
-
1. Start inspector with server:
|
241
|
-
```bash
|
242
|
-
npx mcp-inspector your-server-command
|
243
|
-
```
|
244
|
-
|
245
|
-
2. Features to test:
|
246
|
-
- Resource listing and reading
|
247
|
-
- Tool execution
|
248
|
-
- Prompt generation
|
249
|
-
- Error handling
|
250
|
-
- Progress reporting
|
251
|
-
|
252
|
-
### Common Issues
|
253
|
-
1. Connection Problems:
|
254
|
-
- Check transport configuration
|
255
|
-
- Verify server process is running
|
256
|
-
- Check for initialization errors
|
257
|
-
|
258
|
-
2. Message Handling:
|
259
|
-
- Validate message formats
|
260
|
-
- Check handler implementations
|
261
|
-
- Verify error responses
|
262
|
-
|
263
|
-
3. Resource Issues:
|
264
|
-
- Check file permissions
|
265
|
-
- Validate URI formats
|
266
|
-
- Verify content types
|
267
|
-
|
268
|
-
## 7. Performance and Scaling
|
269
|
-
|
270
|
-
### Best Practices
|
271
|
-
1. Resource Management:
|
272
|
-
- Cache when appropriate
|
273
|
-
- Implement cleanup
|
274
|
-
- Monitor memory usage
|
275
|
-
|
276
|
-
2. Request Handling:
|
277
|
-
- Use appropriate timeouts
|
278
|
-
- Implement rate limiting
|
279
|
-
- Handle concurrent requests
|
280
|
-
|
281
|
-
3. Error Recovery:
|
282
|
-
- Implement reconnection logic
|
283
|
-
- Handle partial failures
|
284
|
-
- Clean up resources
|
285
|
-
|
286
|
-
## 8. Documentation Requirements
|
287
|
-
|
288
|
-
### Server Documentation
|
289
|
-
1. Capabilities Documentation:
|
290
|
-
- List supported features
|
291
|
-
- Document configuration options
|
292
|
-
- Describe environment variables
|
293
|
-
|
294
|
-
2. API Documentation:
|
295
|
-
- Document all resources
|
296
|
-
- Document all tools
|
297
|
-
- Document all prompts
|
298
|
-
- Include example usage
|
299
|
-
|
300
|
-
3. Error Documentation:
|
301
|
-
- List possible error codes
|
302
|
-
- Describe error conditions
|
303
|
-
- Include recovery steps
|
304
|
-
|
305
|
-
### Integration Guide
|
306
|
-
1. Setup Instructions:
|
307
|
-
- Installation steps
|
308
|
-
- Configuration options
|
309
|
-
- Environment setup
|
310
|
-
|
311
|
-
2. Usage Examples:
|
312
|
-
- Basic usage patterns
|
313
|
-
- Common integrations
|
314
|
-
- Error handling examples
|
315
|
-
|
316
|
-
## 9. Versioning and Updates
|
317
|
-
|
318
|
-
### Version Management
|
319
|
-
1. Protocol Versioning:
|
320
|
-
- Support LATEST_PROTOCOL_VERSION
|
321
|
-
- Handle version negotiation
|
322
|
-
- Maintain compatibility
|
323
|
-
|
324
|
-
2. Server Versioning:
|
325
|
-
- Use semantic versioning
|
326
|
-
- Document breaking changes
|
327
|
-
- Provide migration guides
|
328
|
-
|
329
|
-
### Update Handling
|
330
|
-
1. Capability Updates:
|
331
|
-
- Notify clients of changes
|
332
|
-
- Handle capability negotiation
|
333
|
-
- Maintain backwards compatibility
|
334
|
-
|
335
|
-
2. Resource Updates:
|
336
|
-
- Handle resource changes
|
337
|
-
- Notify subscribed clients
|
338
|
-
- Maintain consistency
|
339
|
-
|
340
|
-
## 10. Specific Server Types
|
341
|
-
|
342
|
-
### Database Servers (like Airtable)
|
343
|
-
1. Required Capabilities:
|
344
|
-
- Resources for data access
|
345
|
-
- Tools for data manipulation
|
346
|
-
- Prompts for common operations
|
347
|
-
|
348
|
-
2. Implementation Focus:
|
349
|
-
- Connection management
|
350
|
-
- Query handling
|
351
|
-
- Data transformation
|
352
|
-
- Error handling
|
353
|
-
- Rate limiting
|
354
|
-
|
355
|
-
3. Security Considerations:
|
356
|
-
- API key management
|
357
|
-
- Access control
|
358
|
-
- Data validation
|
359
|
-
- Request sanitization
|
360
|
-
|
361
|
-
4. Tools to Implement:
|
362
|
-
- List databases/bases
|
363
|
-
- Create/modify tables
|
364
|
-
- Query data
|
365
|
-
- Update records
|
366
|
-
- Delete records
|
367
|
-
|
368
|
-
5. Resource Structure:
|
369
|
-
- Database schema
|
370
|
-
- Table contents
|
371
|
-
- Query results
|
372
|
-
|
373
|
-
6. Error Handling:
|
374
|
-
- Connection errors
|
375
|
-
- Query errors
|
376
|
-
- Rate limit errors
|
377
|
-
- Authorization errors
|
378
|
-
|
379
|
-
This guide should be used as a reference when assisting with MCP server development. Always consider the specific requirements and constraints of the project while following these guidelines.
|