Mandraki Mandraki
Get started

Available Tools Reference

Complete reference of all MCP tools available in Mandraki, organised by module, with example requests for common operations.

Tools by Module

Mandraki’s MCP server exposes tools from its app framework. Each app module registers tools that perform specific operations. The tools available to your integration depend on your API token’s scopes.

Tasks

Required scopes: tasks:read (read operations), tasks:write (write operations)

ToolDescriptionRisk tier
tasks.create-taskCreate a new task in a projectsafe_write
tasks.list-tasksList tasks, filtered by project, assignee, or statusread
tasks.update-taskUpdate an existing task’s title, description, priority, due date, or assigneesafe_write
tasks.complete-taskMark a task as completedsafe_write
tasks.get-my-tasksGet tasks assigned to the authenticated userread
tasks.add-commentAdd a comment to a tasksafe_write

Calendar

Required scopes: calendar:read (read operations), calendar:write (write operations)

ToolDescriptionRisk tier
calendar.list-eventsList calendar events within a date rangeread
calendar.create-eventCreate a new calendar eventsafe_write
calendar.check-availabilityCheck user availability for schedulingread

Drive

Required scopes: drive:read or files:read (read operations), drive:write or files:write (write operations)

ToolDescriptionRisk tier
drive.search-filesSearch for files by name or metadataread
drive.get-file-infoGet metadata for a specific fileread

Chat and Messages

Required scopes: channels:read, channels:history (read operations), messages:write (write operations)

ToolDescriptionRisk tier
chat.search-messagesSearch messages across channelsread
chat.get-thread-contextGet the full context of a message threadread

Mail

Required scopes: mail:read

ToolDescriptionRisk tier
mail.search-mailSearch mail by subject, sender, or dateread
mail.read-emailRead email metadata (subject, sender, date)read
mail.compose-draftCreate an email draftsafe_write
mail.list-foldersList mailbox foldersread

Example Requests

Create a Task

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "tasks.create-task",
    "arguments": {
      "title": "Review Q1 security audit report",
      "projectId": "proj_abc123",
      "description": "Review the findings and create follow-up tasks for critical items.",
      "priority": "HIGH",
      "dueDate": "2026-04-05T17:00:00Z"
    }
  }
}

Response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"id\": \"task_xyz789\",\n  \"title\": \"Review Q1 security audit report\",\n  \"status\": \"OPEN\",\n  \"priority\": \"HIGH\",\n  \"createdAt\": \"2026-03-27T10:30:00Z\"\n}"
      }
    ]
  }
}

List Tasks in a Project

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "tasks.list-tasks",
    "arguments": {
      "projectId": "proj_abc123",
      "status": "OPEN"
    }
  }
}

Search Messages

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "chat.search-messages",
    "arguments": {
      "query": "deployment rollback",
      "limit": 10
    }
  }
}

Create a Calendar Event

{
  "jsonrpc": "2.0",
  "id": 4,
  "method": "tools/call",
  "params": {
    "name": "calendar.create-event",
    "arguments": {
      "title": "Sprint planning",
      "startTime": "2026-03-31T09:00:00Z",
      "endTime": "2026-03-31T10:00:00Z",
      "attendees": ["user_abc", "user_def"]
    }
  }
}

Check Availability

{
  "jsonrpc": "2.0",
  "id": 5,
  "method": "tools/call",
  "params": {
    "name": "calendar.check-availability",
    "arguments": {
      "userIds": ["user_abc", "user_def"],
      "date": "2026-03-31"
    }
  }
}

Search Files

{
  "jsonrpc": "2.0",
  "id": 6,
  "method": "tools/call",
  "params": {
    "name": "drive.search-files",
    "arguments": {
      "query": "architecture diagram"
    }
  }
}

Error Responses

All tool calls return results in the same format. When a tool execution fails, isError is set to true:

{
  "jsonrpc": "2.0",
  "id": 7,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "Task not found"
      }
    ],
    "isError": true
  }
}

Common error scenarios:

ErrorCause
Tool 'x' is not within this token's scopesToken lacks the required scope for this tool
Missing required parameter: nametools/call was sent without a name in params
Tool execution failedThe underlying operation failed (invalid input, not found, etc.)

Risk Tiers

Each tool has a risk tier that affects policy enforcement:

TierDescriptionExample
readRead-only operations, no data modificationtasks.list-tasks, drive.search-files
safe_writeCreates or modifies data in a reversible waytasks.create-task, calendar.create-event
destructiveIrreversible operations (deletes, bulk changes)Not exposed via MCP

Destructive operations are not available through the MCP interface. Use the Mandraki web app or REST API for operations like permanent deletion.