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)
| Tool | Description | Risk tier |
|---|---|---|
tasks.create-task | Create a new task in a project | safe_write |
tasks.list-tasks | List tasks, filtered by project, assignee, or status | read |
tasks.update-task | Update an existing task’s title, description, priority, due date, or assignee | safe_write |
tasks.complete-task | Mark a task as completed | safe_write |
tasks.get-my-tasks | Get tasks assigned to the authenticated user | read |
tasks.add-comment | Add a comment to a task | safe_write |
Calendar
Required scopes: calendar:read (read operations), calendar:write (write operations)
| Tool | Description | Risk tier |
|---|---|---|
calendar.list-events | List calendar events within a date range | read |
calendar.create-event | Create a new calendar event | safe_write |
calendar.check-availability | Check user availability for scheduling | read |
Drive
Required scopes: drive:read or files:read (read operations), drive:write or files:write (write operations)
| Tool | Description | Risk tier |
|---|---|---|
drive.search-files | Search for files by name or metadata | read |
drive.get-file-info | Get metadata for a specific file | read |
Chat and Messages
Required scopes: channels:read, channels:history (read operations), messages:write (write operations)
| Tool | Description | Risk tier |
|---|---|---|
chat.search-messages | Search messages across channels | read |
chat.get-thread-context | Get the full context of a message thread | read |
Required scopes: mail:read
| Tool | Description | Risk tier |
|---|---|---|
mail.search-mail | Search mail by subject, sender, or date | read |
mail.read-email | Read email metadata (subject, sender, date) | read |
mail.compose-draft | Create an email draft | safe_write |
mail.list-folders | List mailbox folders | read |
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:
| Error | Cause |
|---|---|
Tool 'x' is not within this token's scopes | Token lacks the required scope for this tool |
Missing required parameter: name | tools/call was sent without a name in params |
Tool execution failed | The underlying operation failed (invalid input, not found, etc.) |
Risk Tiers
Each tool has a risk tier that affects policy enforcement:
| Tier | Description | Example |
|---|---|---|
read | Read-only operations, no data modification | tasks.list-tasks, drive.search-files |
safe_write | Creates or modifies data in a reversible way | tasks.create-task, calendar.create-event |
destructive | Irreversible 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.