Connect Plate and your agent gets 28 tools, among them complete_task, complete_tasks, create_comment. It answers at https://plate.to/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 12 September 2026; the last check, on 24 October 2026, succeeded.
Minimal project management for teams and AI agents.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
complete_task | Mark an existing task as completed or reopen it. Use this instead of create_task when the task already exists and you only need to change its completion state. The taskId is the internal document ID from list_tasks — NOT the public task num Inputs: taskId, isCompleted |
complete_tasks | Mark multiple tasks as completed in one action. Use this instead of calling complete_task multiple times. Already-completed tasks are left as-is. Inputs: taskIds, isCompleted |
create_comment | Add a comment to a task. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408). Inputs: taskId, text |
create_comments | Add multiple comments to tasks in one action. Use this instead of calling create_comment multiple times. Inputs: comments |
create_project | Create a new project in a workspace. If a project with the same name already exists in the workspace, returns the existing project instead of creating a duplicate — check the `created` field in the response to tell the two cases apart. Inputs: workspaceId, name, description |
create_section | Create a new section (column) in a project. If a section with the same name already exists in the project, returns the existing section instead of creating a duplicate — check the `created` field in the response to tell the two cases apart. Inputs: projectId, name |
create_sections | Create multiple sections in a project in one action. Use this instead of calling create_section multiple times. Inputs: projectId, sections |
create_task | Create a new task in a project section. Only call this tool when creating a brand-new task that does not yet exist. To change the name, status, assignee, or description of an existing task, call update_task instead. To mark an existing task Inputs: projectId, listId, name, statusId, assigneeId, labels |
create_tasks | Create multiple tasks in a project in one action. Use this instead of calling create_task multiple times when the user asks to create several tasks at once. All tasks are created atomically — if validation fails for any item, nothing is cre Inputs: projectId, listId, tasks |
delete_comment | Delete a comment from a task. Inputs: commentId |
delete_comments | Delete multiple comments in one action. Use this instead of calling delete_comment multiple times. All comments are validated before any are deleted. Inputs: commentIds |
delete_task | Permanently delete a task. Comments and attachments are removed automatically. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408). Inputs: taskId |
delete_tasks | Permanently delete multiple tasks in one action. Use this instead of calling delete_task multiple times. All tasks are validated before any are deleted. Inputs: taskIds |
get_task | Get full details of a task. You can look up by internal taskId OR by public task identifier. To resolve a public ID like 'TES-1' or 'SCD-409', pass it as taskId — the prefix is used to find the correct workspace automatically. Alternatively Inputs: taskId, workspaceId, number |
list_activity | List task activity history (status changes, assignments, moves, etc.) over a time range. Use it for time-based questions like which tasks were completed last week or what someone did. Filters: from/to (ISO 8601 dates), actorId (who made the Inputs: workspaceId, from, to, actorId, type, projectId |
list_comments | List a task's comments, oldest first. The taskId is the internal document ID from list_tasks — NOT the public SCD-XXX number. Inputs: taskId |
list_labels | List task labels for a workspace. Use the returned IDs (or names) as `labels` when creating or updating tasks. Inputs: workspaceId |
list_members | List workspace members with their userId, name, email, and role. Use userId as assigneeId when creating or updating tasks. Inputs: workspaceId |
list_projects | List projects in a workspace. Inputs: workspaceId |
list_sections | List sections (columns) in a project. Inputs: projectId |
list_statuses | List workflow statuses for a workspace. Use the returned IDs as statusId when creating or updating tasks. Inputs: workspaceId |
list_tasks | List tasks in a project, or look up a specific task by its public number. To resolve a public ID like 'TES-1': pass taskPrefix='TES' and number=1 — the prefix locates the correct workspace automatically (do NOT hardcode workspaceId when the Inputs: projectId, workspaceId, taskPrefix, number, statusId, listId |
list_workspaces | List all Plate workspaces the user is a member of. |
update_project | Rename a project or update its description. Inputs: projectId, name, description |
update_section | Rename a section. Inputs: sectionId, name |
update_sections | Rename multiple sections in one action. Use this instead of calling update_section multiple times. Inputs: sections |
update_task | Update one or more fields on an existing task. Use this instead of create_task when the task already exists. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408). To resolve a public number to a Inputs: taskId, name, statusId, assigneeId, listId, description |
update_tasks | Update multiple existing tasks in one action. Use this instead of calling update_task multiple times when the user asks to change several tasks at once. All updates are applied atomically. Inputs: tasks |
Every block below points at https://plate.to/mcp. Pick your client and copy.
claude mcp add --transport http plate https://plate.to/mcp
{
"mcpServers": {
"plate": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://plate.to/mcp"]
}
}
}{
"mcpServers": {
"plate": {
"url": "https://plate.to/mcp"
}
}
}{
"servers": {
"plate": {
"type": "http",
"url": "https://plate.to/mcp"
}
}
}{
"context_servers": {
"plate": {
"url": "https://plate.to/mcp"
}
}
}{
"mcpServers": {
"plate": {
"serverUrl": "https://plate.to/mcp"
}
}
}{
"mcpServers": {
"plate": {
"url": "https://plate.to/mcp"
}
}
}name: Plate
version: 0.0.1
schema: v1
mcpServers:
- name: Plate
type: streamable-http
url: https://plate.to/mcp{
"mcpServers": {
"plate": {
"httpUrl": "https://plate.to/mcp"
}
}
}{
"mcpServers": {
"plate": {
"type": "http",
"url": "https://plate.to/mcp"
}
}
}{
"mcpServers": {
"plate": {
"url": "https://plate.to/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fplate.to%2Fmcp&type=streamable_http&id=plate&name=Plate
It answered our last check on 24 October 2026 in 183 ms. Over 6 checks since 12 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by plate.to and served from plate.to, the vendor's own domain: https://plate.to/mcp.
28, as returned by the server's own tools/list on 23 September 2026: complete_task, complete_tasks, create_comment, create_comments, create_project, create_section, create_sections, create_task, and 20 more.
It answered our last check on 24 October 2026 in 183 ms. Over 6 checks since 12 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://plate.to/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: to.plate. Endpoint host: plate.to. ARD identifier: urn:air:to.plate:mcp:mcp.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.