Tools Reference
SLOP MCP exposes 8 meta-tools that provide access to all connected MCPs.
search_tools
Search for tools across all connected MCPs.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | Search query (fuzzy matched) |
mcp_name | string | No | Filter to specific MCP |
Response
Returns matching tools with their schemas:
{
"tools": [
{
"name": "calculate",
"description": "Evaluate mathematical expressions",
"mcp_name": "math-mcp",
"input_schema": { ... }
}
],
"total": 1
}
Examples
# Search all MCPs
search_tools query="file upload"
# Search specific MCP
search_tools mcp_name="github" query="issue"
# List all tools from an MCP
search_tools mcp_name="math-mcp"
execute_tool
Execute a tool on a specific MCP.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
mcp_name | string | Yes | Target MCP name |
tool_name | string | Yes | Tool to execute |
parameters | object | No | Tool parameters |
Response
Returns the tool's response:
{
"content": [
{
"type": "text",
"text": "Result: 42"
}
]
}
Examples
# Simple execution
execute_tool mcp_name="math-mcp" tool_name="calculate" \
parameters={"expression": "2 + 2"}
# With complex parameters
execute_tool mcp_name="github" tool_name="create_issue" \
parameters={
"repo": "owner/repo",
"title": "Bug report",
"body": "Description here",
"labels": ["bug", "priority-high"]
}
manage_mcps
Manage MCP server connections.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
action | string | Yes | Action: register, unregister, list, status |
name | string | Conditional | MCP name (required for register/unregister) |
type | string | No | Transport type (for register) |
command | string | No | Command (for stdio) |
args | array | No | Command arguments |
url | string | No | URL (for http/sse/streamable) |
env | object | No | Environment variables |
headers | object | No | HTTP headers |
Actions
register
Register a new MCP:
manage_mcps action="register" name="my-mcp" \
type="stdio" command="npx" args=["my-mcp-package"]
manage_mcps action="register" name="figma" \
type="streamable" url="https://mcp.figma.com/mcp"
unregister
Remove an MCP:
manage_mcps action="unregister" name="my-mcp"
list
List all MCPs:
manage_mcps action="list"
Response:
{
"mcps": [
{
"name": "math-mcp",
"type": "stdio",
"connected": true,
"tool_count": 8
}
]
}
status
Get detailed status:
manage_mcps action="status" name="figma"
auth_mcp
Manage OAuth authentication for MCPs.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
action | string | Yes | Action: login, logout, status, list |
name | string | Conditional | MCP name (required for login/logout/status) |
Actions
login
Initiate OAuth flow:
auth_mcp action="login" name="figma"
Opens browser for authentication. After completion:
{
"message": "Successfully authenticated with figma - connection re-established with new credentials",
"status": {
"server_name": "figma",
"is_authenticated": true,
"expires_at": "2024-01-15T10:30:00Z",
"has_refresh_token": true
}
}
logout
Remove authentication:
auth_mcp action="logout" name="figma"
status
Check auth status:
auth_mcp action="status" name="figma"
list
List authenticated MCPs:
auth_mcp action="list"
get_metadata
Get full metadata for connected MCPs.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
mcp_name | string | No | Filter to specific MCP |
file_path | string | No | Write output to file |
Response
Returns comprehensive metadata:
{
"metadata": [
{
"name": "math-mcp",
"type": "stdio",
"state": "connected",
"tools": [
{
"name": "calculate",
"description": "...",
"input_schema": { ... }
}
],
"prompts": [],
"resources": [],
"resource_templates": []
}
]
}
Examples
# Get all metadata
get_metadata
# Get specific MCP
get_metadata mcp_name="github"
# Write to file
get_metadata file_path="metadata.json"
run_slop
Execute a SLOP script.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
script | string | Conditional | Inline SLOP script |
file_path | string | Conditional | Path to .slop file |
One of script or file_path is required.
Examples
Inline Script
run_slop script='
result = math.calculate(expression: "100 * 1.15")
emit(result)
'
File Script
run_slop file_path="scripts/deploy.slop"
Recipes
run_slop recipe="list"
run_slop recipe="batch_collect"
SLOP Script Syntax
# Variables
tax_rate = 0.08
# MCP calls
result = math.calculate(expression: format("100 * (1 + {})", tax_rate))
# Conditionals
if result > 100 {
slack.post_message(channel: "#alerts", text: format("High value: {}", result))
}
# Loops
for item in items {
processor.process(data: item)
}
# Pipes
[1, 2, 3, 4, 5] | filter(|x| x > 2) | map(|x| x * 10)
See the SLOP Language Reference for full syntax documentation.
Error Handling
All tools return errors in a consistent format:
{
"error": {
"code": "MCP_NOT_FOUND",
"message": "MCP 'unknown' not found",
"details": {
"available_mcps": ["math-mcp", "github", "figma"]
}
}
}
slop_reference
Search SLOP built-in functions by name, category, or description.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | Search query for function names and descriptions |
category | string | No | Filter by category (math, string, list, map, etc.) |
limit | integer | No | Max results (default: 10) |
verbose | boolean | No | Include full details (default: false, compact mode) |
list_categories | boolean | No | Return category counts instead of functions |
Examples
# Search for string functions
slop_reference query="string"
# List all categories
slop_reference list_categories=true
# Get verbose details for math functions
slop_reference category="math" verbose=true
slop_help
Get full details for a specific SLOP built-in function.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Function name |
Examples
# Get help for the map function
slop_help name="map"
# Get help for mem_save
slop_help name="mem_save"
Error Handling
All tools return errors in a consistent format:
{
"error": {
"code": "MCP_NOT_FOUND",
"message": "MCP 'unknown' not found",
"details": {
"available_mcps": ["math-mcp", "github", "figma"]
}
}
}
Error Codes
| Code | Description |
|---|---|
MCP_NOT_FOUND | MCP not registered |
TOOL_NOT_FOUND | Tool not found in MCP |
AUTH_REQUIRED | MCP requires authentication |
AUTH_EXPIRED | Token expired, re-auth needed |
CONNECTION_FAILED | Failed to connect to MCP |
EXECUTION_FAILED | Tool execution failed |
INVALID_PARAMS | Invalid parameters provided |