MCP 2025-06-18
task_create
Create a task in a project. Set source to where the request came from, such as { type: 'slack', url: <https message link> }; task_list sourceUrl finds it again.
Scopes
The agent key needs these scopes. The server also checks access to each record before returning data or changing it.
- read:projects
- write:projects
Input schema
This schema is shared with tools/list, including the required fields and additionalProperties rules.
{
"type": "object",
"properties": {
"project": {
"type": "string",
"description": "Project name, key (DEV) or ID"
},
"title": {
"type": "string",
"description": "Concise task title"
},
"description": {
"type": "string",
"description": "Full task description"
},
"status": {
"type": "string",
"description": "Status name (Ready, In progress), kind (backlog, ready, active, waiting, review, done) or ID"
},
"priority": {
"enum": [
"low",
"normal",
"high",
"urgent"
]
},
"assignee": {
"enum": [
"me"
]
},
"source": {
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"pattern": "^https://"
},
"type": {
"type": "string",
"description": "A short word such as slack or github"
}
},
"required": [
"url"
],
"additionalProperties": false
},
"idempotencyKey": {
"type": "string",
"description": "Unique retry key retained for 24 hours"
}
},
"required": [
"project",
"title",
"idempotencyKey"
],
"additionalProperties": false
}Call this tool
Send it as POST https://www.specifywork.com/api/mcp. Authorization: Bearer <agent key>, a key that starts with sw_agent. Replace the example values with records your key can reach.
{
"jsonrpc": "2.0",
"id": "example_task_create",
"method": "tools/call",
"params": {
"name": "task_create",
"arguments": {
"project": "<project>",
"title": "<title>",
"idempotencyKey": "retry-1"
}
}
}Read the result before continuing
The created task.
A call returns content[0].text with the JSON result and structuredContent.result with the same value. A refused call returns isError: true and the error code in content[0].text.
A request being accepted is not proof of an external action completing. Keep correlation IDs and mutation idempotency keys unchanged across safe retries.