Files

113 lines
3.2 KiB
Markdown

---
name: config-mcp
description: Use when user asks to configure MCP (Model Context Protocol) profiles, add MCP servers, manage MCP integrations, or enable/disable MCP tools for extended functionality.
---
# Config MCP - MCP Profile Management
## Overview
Manage MCP (Model Context Protocol) profiles for VibeSurf. MCP allows integrating external tools and data sources with the AI.
## When to Use
- User wants to add a new MCP server
- User needs to configure MCP integrations
- User wants to update MCP server parameters
- User needs to list or manage existing MCP profiles
- User wants to enable/disable MCP tools
## API Endpoints
Base path: `$VIBESURF_ENDPOINT/api/config`
### MCP Profile Management
| Action | Method | Endpoint | Description |
|--------|--------|----------|-------------|
| List Profiles | GET | `/api/config/mcp-profiles?active_only=true` | List all MCP profiles |
| Get Profile | GET | `/api/config/mcp-profiles/{mcp_id}` | Get specific profile details |
| Create Profile | POST | `/api/config/mcp-profiles` | Create new MCP profile |
| Update Profile | PUT | `/api/config/mcp-profiles/{mcp_id}` | Update existing profile |
## Request Examples
### Create MCP Profile
```json
POST /api/config/mcp-profiles
{
"display_name": "My MCP Server",
"mcp_server_name": "server-name",
"mcp_server_params": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-name"],
"env": {
"API_KEY": "..."
}
},
"description": "Description of what this MCP server does"
}
```
### Update MCP Profile
```json
PUT /api/config/mcp-profiles/{mcp_id}
{
"display_name": "Updated Name",
"mcp_server_params": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-name"],
"env": {
"API_KEY": "new-key"
}
}
}
```
## Profile Fields
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| display_name | string | Yes | Human-readable name |
| mcp_server_name | string | Yes | MCP server identifier |
| mcp_server_params | object | Yes | Server configuration |
| description | string | No | Profile description |
| is_active | bool | No | Enable/disable profile |
## MCP Server Params
| Field | Type | Description |
|-------|------|-------------|
| command | string | Command to run (e.g., npx, uvx, docker) |
| args | array | Arguments for the command |
| env | object | Environment variables |
## Using MCP Tools
Once MCP profiles are configured, their tools become available through the `integrations` skill:
```
1. List available tools → GET /api/tool/search?keyword=mcp
2. Execute MCP tool → POST /api/tool/execute
{
"action_name": "execute_extra_tool",
"parameters": {
"tool_name": "mcp.{server_name}.{tool_name}",
"tool_arguments": {...}
}
}
```
## Common MCP Servers
- `@modelcontextprotocol/server-filesystem` - File system access
- `@modelcontextprotocol/server-github` - GitHub integration
- `@modelcontextprotocol/server-postgres` - PostgreSQL access
- `@modelcontextprotocol/server-puppeteer` - Browser automation
## Workflow
1. **Identify MCP server** → Choose from available MCP servers
2. **Create profile**`POST /api/config/mcp-profiles` with server params
3. **Verify tools** → Use `integrations` skill to list and use MCP tools