3.9 KiB
3.9 KiB
name, description
| name | description |
|---|---|
| config-composio | Use when user asks to configure Composio API key, enable or disable Composio toolkits (Gmail, GitHub, Slack, etc.), manage app integrations, or authenticate with external services. |
Config Composio - Composio Integration Management
Overview
Manage Composio API key and toolkit configurations. Enable/disable app integrations like Gmail, GitHub, Slack, and more.
When to Use
- User needs to set up Composio API key
- User wants to enable a toolkit (Gmail, GitHub, Slack, etc.)
- User needs to disable a toolkit
- User wants to check which toolkits are available
- User needs to manage toolkit authentication (OAuth)
- User wants to configure toolkit tools selection
API Endpoints
Base path: $VIBESURF_ENDPOINT/api/composio
API Key Management
| Action | Method | Endpoint | Description |
|---|---|---|---|
| Check Status | GET | /api/composio/status |
Get Composio connection status |
| Verify Key | POST | /api/composio/verify-key |
Verify and store API key |
Toolkit Management
| Action | Method | Endpoint | Description |
|---|---|---|---|
| List Toolkits | GET | /api/composio/toolkits |
Get all available toolkits |
| Toggle Toolkit | POST | /api/composio/toolkit/{slug}/toggle |
Enable/disable toolkit |
| Get Tools | GET | /api/composio/toolkit/{slug}/tools |
Get tools for a toolkit |
| Update Tools | POST | /api/composio/toolkit/{slug}/tools |
Update selected tools |
| Connection Status | GET | /api/composio/toolkit/{slug}/connection-status |
Check OAuth connection |
Request Examples
Verify API Key
POST /api/composio/verify-key
{
"api_key": "your-composio-api-key"
}
Enable Toolkit
POST /api/composio/toolkit/gmail/toggle
{
"enabled": true,
"force_reauth": false
}
Disable Toolkit
POST /api/composio/toolkit/gmail/toggle
{
"enabled": false
}
Update Tool Selection
POST /api/composio/toolkit/gmail/tools
{
"selected_tools": {
"GMAIL_SEND_EMAIL": true,
"GMAIL_FETCH_EMAILS": false
}
}
Common Toolkits
| Toolkit | Description |
|---|---|
gmail |
Send and receive emails |
github |
Repository management, PRs, issues |
slack |
Send messages, manage channels |
google_calendar |
Event management |
google_sheets |
Spreadsheet operations |
notion |
Page and database management |
trello |
Card and board management |
asana |
Task management |
jira |
Issue tracking |
OAuth Flow
When enabling a toolkit that requires OAuth:
- Enable toolkit →
POST /api/composio/toolkit/{slug}/togglewithenabled: true - Check response → If
requires_oauth: true, anoauth_urlis provided - User authenticates → Open
oauth_urlin browser to complete OAuth - Verify connection →
GET /api/composio/toolkit/{slug}/connection-status
Using Composio Tools
Once toolkits are enabled, their tools become available through the integrations skill:
1. List available tools → GET /api/tool/search?keyword=composio
2. Execute tool → POST /api/tool/execute
{
"action_name": "execute_extra_tool",
"parameters": {
"tool_name": "cpo.{toolkit}.{action}",
"tool_arguments": {...}
}
}
Tool Naming Convention
Composio tools follow the pattern: cpo.{toolkit_slug}.{action_name}
Examples:
cpo.gmail.GMAIL_SEND_EMAILcpo.github.GITHUB_CREATE_PULL_REQUESTcpo.slack.SLACK_SEND_MESSAGE
Workflow
- Check API key status →
GET /api/composio/status - Set up API key (if needed) →
POST /api/composio/verify-key - List available toolkits →
GET /api/composio/toolkits - Enable desired toolkit →
POST /api/composio/toolkit/{slug}/toggle - Complete OAuth (if required) → Use provided
oauth_url - Use tools → Execute via
integrationsskill