Tool tree
gradeNot graded
page: Every page
listWorkspacesAnswer
List every workspace this site currently has, with its title and the WebMCP tools it registers. Call this before getDelegation if you are not sure which workspace id to use.
View tool JSON
{
"name": "listWorkspaces",
"kind": "answer",
"impl": "imperative",
"description": "List every workspace this site currently has, with its title and the WebMCP tools it registers. Call this before getDelegation if you are not sure which workspace id to use.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getDelegationAnswer
Read the delegation the human has granted for this task: what you may do, what is off limits, and what needs their approval. Call this FIRST, before you touch anything, and follow it exactly.
View tool JSON
{
"name": "getDelegation",
"kind": "answer",
"impl": "imperative",
"description": "Read the delegation the human has granted for this task: what you may do, what is off limits, and what needs their approval. Call this FIRST, before you touch anything, and follow it exactly.",
"inputSchema": {
"type": "object",
"properties": {
"workspace": {
"type": "string",
"enum": [
"custom",
"scholarship",
"job",
"subscriptions"
],
"description": "Which workspace on this site you are working in — call getTools or listWorkspaces to see the current list. Defaults to the workspace open on screen."
}
},
"additionalProperties": false
},
"page": "/"
}proposeDelegationContractAction
Turn what the human just asked you to do into a structured set of boundaries, and show it to them for approval. Nothing you propose takes effect until the human accepts it on screen. Use this when no delegation is active yet.
View tool JSON
{
"name": "proposeDelegationContract",
"kind": "act",
"impl": "imperative",
"description": "Turn what the human just asked you to do into a structured set of boundaries, and show it to them for approval. Nothing you propose takes effect until the human accepts it on screen. Use this when no delegation is active yet.",
"inputSchema": {
"type": "object",
"properties": {
"workspace": {
"type": "string",
"enum": [
"custom",
"scholarship",
"job",
"subscriptions"
],
"description": "Which workspace on this site you are working in — call getTools or listWorkspaces to see the current list. Defaults to the workspace open on screen."
},
"statement": {
"type": "string",
"description": "The human's request, in their own words, as close to verbatim as you can."
},
"rules": {
"type": "array",
"description": "The boundaries you read out of their request.",
"items": {
"type": "object",
"properties": {
"effect": {
"type": "string",
"enum": [
"allow",
"deny",
"ask"
]
},
"tools": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tool names this rule covers."
},
"operations": {
"type": "array",
"items": {
"type": "string",
"enum": [
"READ",
"WRITE",
"UPLOAD",
"SUBMIT",
"DELETE"
]
}
},
"fields": {
"type": "array",
"items": {
"type": "string"
}
},
"fieldState": {
"type": "string",
"enum": [
"answered",
"empty",
"any"
]
},
"sources": {
"type": "array",
"items": {
"type": "string",
"enum": [
"document",
"human",
"inference"
]
}
},
"label": {
"type": "string",
"description": "Plain language, for the human to read."
},
"reason": {
"type": "string"
}
},
"required": [
"effect",
"label"
]
}
}
},
"required": [
"statement",
"rules"
],
"additionalProperties": false
},
"page": "/"
}requestPermissionAction
Ask the human for permission BEFORE attempting something you think is outside your delegation. If they agree, TaskFence mints a narrow one-time grant for exactly that action, and your next call will go through. Politer and clearer than triggering a block.
View tool JSON
{
"name": "requestPermission",
"kind": "act",
"impl": "imperative",
"description": "Ask the human for permission BEFORE attempting something you think is outside your delegation. If they agree, TaskFence mints a narrow one-time grant for exactly that action, and your next call will go through. Politer and clearer than triggering a block.",
"inputSchema": {
"type": "object",
"properties": {
"workspace": {
"type": "string",
"enum": [
"custom",
"scholarship",
"job",
"subscriptions"
],
"description": "Which workspace on this site you are working in — call getTools or listWorkspaces to see the current list. Defaults to the workspace open on screen."
},
"tool": {
"type": "string",
"description": "The tool you want to call."
},
"field": {
"type": "string",
"description": "The field or record you want to act on, if any."
},
"reason": {
"type": "string",
"description": "Why you want to do it, in plain language the human will read."
}
},
"required": [
"tool",
"reason"
],
"additionalProperties": false
},
"page": "/"
}explainLastDecisionAnswer
Get the plain-language reason for the most recent TaskFence decision on this task, so you can explain to the human why something did or did not happen.
View tool JSON
{
"name": "explainLastDecision",
"kind": "answer",
"impl": "imperative",
"description": "Get the plain-language reason for the most recent TaskFence decision on this task, so you can explain to the human why something did or did not happen.",
"inputSchema": {
"type": "object",
"properties": {
"workspace": {
"type": "string",
"enum": [
"custom",
"scholarship",
"job",
"subscriptions"
],
"description": "Which workspace on this site you are working in — call getTools or listWorkspaces to see the current list. Defaults to the workspace open on screen."
}
},
"additionalProperties": false
},
"page": "/"
}getRecordAnswer
Read the record: every field, its current value, and whether it is already answered or still blank. Start here.
View tool JSON
{
"name": "getRecord",
"kind": "answer",
"impl": "imperative",
"description": "Read the record: every field, its current value, and whether it is already answered or still blank. Start here.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getRecordRequirementsAnswer
Read what this record requires, grouped into blocks, plus which required fields are still blank.
View tool JSON
{
"name": "getRecordRequirements",
"kind": "answer",
"impl": "imperative",
"description": "Read what this record requires, grouped into blocks, plus which required fields are still blank.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}listRecordDocumentsAnswer
List the supporting documents on this page with a one-line summary of each. Use the read-document tool to get what is inside one.
View tool JSON
{
"name": "listRecordDocuments",
"kind": "answer",
"impl": "imperative",
"description": "List the supporting documents on this page with a one-line summary of each. Use the read-document tool to get what is inside one.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}readRecordDocumentAnswer
Read the text of one supporting document. Values taken from here can be written with source="document".
View tool JSON
{
"name": "readRecordDocument",
"kind": "answer",
"impl": "imperative",
"description": "Read the text of one supporting document. Values taken from here can be written with source=\"document\".",
"inputSchema": {
"type": "object",
"properties": {
"documentId": {
"type": "string",
"description": "Document id from the list-documents tool."
}
},
"required": [
"documentId"
],
"additionalProperties": false
},
"page": "/"
}attachRecordDocumentAction
Attach one of the documents on this page to the record, so it is formally part of the submission. Only the human can add files — you may attach what is already there, never invent a document.
View tool JSON
{
"name": "attachRecordDocument",
"kind": "act",
"impl": "imperative",
"description": "Attach one of the documents on this page to the record, so it is formally part of the submission. Only the human can add files — you may attach what is already there, never invent a document.",
"inputSchema": {
"type": "object",
"properties": {
"documentId": {
"type": "string",
"description": "Document id from the list-documents tool."
}
},
"required": [
"documentId"
],
"additionalProperties": false
},
"page": "/"
}updateRecordAction
Write a value into one field of the record. IMPORTANT: set `source` honestly — "document" if you read the value out of a document on this page, "human" if the person just told you, "inference" if you worked it out yourself. The active delegation may allow, block or pause the write depending on the source and on whether the field is already answered. This site VERIFIES a "document" claim against the document's actual text: if the value is not in it, the write is treated as "inference" instead and will usually be sent to the human. Claiming "document" for a value you did not read there gains you nothing.
View tool JSON
{
"name": "updateRecord",
"kind": "act",
"impl": "imperative",
"description": "Write a value into one field of the record. IMPORTANT: set `source` honestly — \"document\" if you read the value out of a document on this page, \"human\" if the person just told you, \"inference\" if you worked it out yourself. The active delegation may allow, block or pause the write depending on the source and on whether the field is already answered. This site VERIFIES a \"document\" claim against the document's actual text: if the value is not in it, the write is treated as \"inference\" instead and will usually be sent to the human. Claiming \"document\" for a value you did not read there gains you nothing.",
"inputSchema": {
"type": "object",
"properties": {
"field": {
"type": "string",
"description": "Field id, from the read tool."
},
"value": {
"type": "string",
"description": "The value to write."
},
"source": {
"type": "string",
"enum": [
"document",
"human",
"inference"
],
"description": "Where this value came from."
},
"documentId": {
"type": "string",
"description": "If source is \"document\", which document it came from."
}
},
"required": [
"field",
"value"
],
"additionalProperties": false
},
"page": "/"
}submitRecordSensitive Action
Submit the completed record. This is final and cannot be undone. TaskFence always pauses this for explicit human approval, whatever the delegation says.
View tool JSON
{
"name": "submitRecord",
"kind": "transact",
"impl": "imperative",
"description": "Submit the completed record. This is final and cannot be undone. TaskFence always pauses this for explicit human approval, whatever the delegation says.",
"inputSchema": {
"type": "object",
"properties": {
"confirm": {
"type": "boolean",
"description": "Set true to indicate you believe the record is complete."
}
},
"additionalProperties": false
},
"page": "/"
}checkRecordAnswer
Check every answer already on the record for values that do not look valid — a malformed email address, a phone number with letters in it, a date that is not a date, a blank line left over from a printed form. Read-only: it reports problems and changes nothing. Use it to tell the human what is wrong; fixing anything still needs a write, which the delegation governs.
View tool JSON
{
"name": "checkRecord",
"kind": "answer",
"impl": "imperative",
"description": "Check every answer already on the record for values that do not look valid — a malformed email address, a phone number with letters in it, a date that is not a date, a blank line left over from a printed form. Read-only: it reports problems and changes nothing. Use it to tell the human what is wrong; fixing anything still needs a write, which the delegation governs.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getApplicationAnswer
Read the application: every field, its current value, and whether it is already answered or still blank. Start here.
View tool JSON
{
"name": "getApplication",
"kind": "answer",
"impl": "imperative",
"description": "Read the application: every field, its current value, and whether it is already answered or still blank. Start here.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getRequirementsAnswer
Read what this application requires, grouped into blocks, plus which required fields are still blank.
View tool JSON
{
"name": "getRequirements",
"kind": "answer",
"impl": "imperative",
"description": "Read what this application requires, grouped into blocks, plus which required fields are still blank.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}listDocumentsAnswer
List the supporting documents on this page with a one-line summary of each. Use the read-document tool to get what is inside one.
View tool JSON
{
"name": "listDocuments",
"kind": "answer",
"impl": "imperative",
"description": "List the supporting documents on this page with a one-line summary of each. Use the read-document tool to get what is inside one.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}readDocumentAnswer
Read the text of one supporting document. Values taken from here can be written with source="document".
View tool JSON
{
"name": "readDocument",
"kind": "answer",
"impl": "imperative",
"description": "Read the text of one supporting document. Values taken from here can be written with source=\"document\".",
"inputSchema": {
"type": "object",
"properties": {
"documentId": {
"type": "string",
"description": "Document id from the list-documents tool."
}
},
"required": [
"documentId"
],
"additionalProperties": false
},
"page": "/"
}uploadDocumentAction
Attach one of the documents on this page to the record, so it is formally part of the submission. Only the human can add files — you may attach what is already there, never invent a document.
View tool JSON
{
"name": "uploadDocument",
"kind": "act",
"impl": "imperative",
"description": "Attach one of the documents on this page to the record, so it is formally part of the submission. Only the human can add files — you may attach what is already there, never invent a document.",
"inputSchema": {
"type": "object",
"properties": {
"documentId": {
"type": "string",
"description": "Document id from the list-documents tool."
}
},
"required": [
"documentId"
],
"additionalProperties": false
},
"page": "/"
}updateApplicationAction
Write a value into one field of the application. IMPORTANT: set `source` honestly — "document" if you read the value out of a document on this page, "human" if the person just told you, "inference" if you worked it out yourself. The active delegation may allow, block or pause the write depending on the source and on whether the field is already answered. This site VERIFIES a "document" claim against the document's actual text: if the value is not in it, the write is treated as "inference" instead and will usually be sent to the human. Claiming "document" for a value you did not read there gains you nothing.
View tool JSON
{
"name": "updateApplication",
"kind": "act",
"impl": "imperative",
"description": "Write a value into one field of the application. IMPORTANT: set `source` honestly — \"document\" if you read the value out of a document on this page, \"human\" if the person just told you, \"inference\" if you worked it out yourself. The active delegation may allow, block or pause the write depending on the source and on whether the field is already answered. This site VERIFIES a \"document\" claim against the document's actual text: if the value is not in it, the write is treated as \"inference\" instead and will usually be sent to the human. Claiming \"document\" for a value you did not read there gains you nothing.",
"inputSchema": {
"type": "object",
"properties": {
"field": {
"type": "string",
"description": "Field id, from the read tool."
},
"value": {
"type": "string",
"description": "The value to write."
},
"source": {
"type": "string",
"enum": [
"document",
"human",
"inference"
],
"description": "Where this value came from."
},
"documentId": {
"type": "string",
"description": "If source is \"document\", which document it came from."
}
},
"required": [
"field",
"value"
],
"additionalProperties": false
},
"page": "/"
}submitApplicationSensitive Action
Submit the completed application. This is final and cannot be undone. TaskFence always pauses this for explicit human approval, whatever the delegation says.
View tool JSON
{
"name": "submitApplication",
"kind": "transact",
"impl": "imperative",
"description": "Submit the completed application. This is final and cannot be undone. TaskFence always pauses this for explicit human approval, whatever the delegation says.",
"inputSchema": {
"type": "object",
"properties": {
"confirm": {
"type": "boolean",
"description": "Set true to indicate you believe the record is complete."
}
},
"additionalProperties": false
},
"page": "/"
}checkApplicationAnswer
Check every answer already on the application for values that do not look valid — a malformed email address, a phone number with letters in it, a date that is not a date, a blank line left over from a printed form. Read-only: it reports problems and changes nothing. Use it to tell the human what is wrong; fixing anything still needs a write, which the delegation governs.
View tool JSON
{
"name": "checkApplication",
"kind": "answer",
"impl": "imperative",
"description": "Check every answer already on the application for values that do not look valid — a malformed email address, a phone number with letters in it, a date that is not a date, a blank line left over from a printed form. Read-only: it reports problems and changes nothing. Use it to tell the human what is wrong; fixing anything still needs a write, which the delegation governs.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getJobApplicationAnswer
Read the application: every field, its current value, and whether it is already answered or still blank. Start here.
View tool JSON
{
"name": "getJobApplication",
"kind": "answer",
"impl": "imperative",
"description": "Read the application: every field, its current value, and whether it is already answered or still blank. Start here.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getJobRequirementsAnswer
Read what this application requires, grouped into blocks, plus which required fields are still blank.
View tool JSON
{
"name": "getJobRequirements",
"kind": "answer",
"impl": "imperative",
"description": "Read what this application requires, grouped into blocks, plus which required fields are still blank.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}listJobDocumentsAnswer
List the supporting documents on this page with a one-line summary of each. Use the read-document tool to get what is inside one.
View tool JSON
{
"name": "listJobDocuments",
"kind": "answer",
"impl": "imperative",
"description": "List the supporting documents on this page with a one-line summary of each. Use the read-document tool to get what is inside one.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}readJobDocumentAnswer
Read the text of one supporting document. Values taken from here can be written with source="document".
View tool JSON
{
"name": "readJobDocument",
"kind": "answer",
"impl": "imperative",
"description": "Read the text of one supporting document. Values taken from here can be written with source=\"document\".",
"inputSchema": {
"type": "object",
"properties": {
"documentId": {
"type": "string",
"description": "Document id from the list-documents tool."
}
},
"required": [
"documentId"
],
"additionalProperties": false
},
"page": "/"
}attachJobDocumentAction
Attach one of the documents on this page to the record, so it is formally part of the submission. Only the human can add files — you may attach what is already there, never invent a document.
View tool JSON
{
"name": "attachJobDocument",
"kind": "act",
"impl": "imperative",
"description": "Attach one of the documents on this page to the record, so it is formally part of the submission. Only the human can add files — you may attach what is already there, never invent a document.",
"inputSchema": {
"type": "object",
"properties": {
"documentId": {
"type": "string",
"description": "Document id from the list-documents tool."
}
},
"required": [
"documentId"
],
"additionalProperties": false
},
"page": "/"
}updateJobApplicationAction
Write a value into one field of the application. IMPORTANT: set `source` honestly — "document" if you read the value out of a document on this page, "human" if the person just told you, "inference" if you worked it out yourself. The active delegation may allow, block or pause the write depending on the source and on whether the field is already answered. This site VERIFIES a "document" claim against the document's actual text: if the value is not in it, the write is treated as "inference" instead and will usually be sent to the human. Claiming "document" for a value you did not read there gains you nothing.
View tool JSON
{
"name": "updateJobApplication",
"kind": "act",
"impl": "imperative",
"description": "Write a value into one field of the application. IMPORTANT: set `source` honestly — \"document\" if you read the value out of a document on this page, \"human\" if the person just told you, \"inference\" if you worked it out yourself. The active delegation may allow, block or pause the write depending on the source and on whether the field is already answered. This site VERIFIES a \"document\" claim against the document's actual text: if the value is not in it, the write is treated as \"inference\" instead and will usually be sent to the human. Claiming \"document\" for a value you did not read there gains you nothing.",
"inputSchema": {
"type": "object",
"properties": {
"field": {
"type": "string",
"description": "Field id, from the read tool."
},
"value": {
"type": "string",
"description": "The value to write."
},
"source": {
"type": "string",
"enum": [
"document",
"human",
"inference"
],
"description": "Where this value came from."
},
"documentId": {
"type": "string",
"description": "If source is \"document\", which document it came from."
}
},
"required": [
"field",
"value"
],
"additionalProperties": false
},
"page": "/"
}submitJobApplicationSensitive Action
Submit the completed application. This is final and cannot be undone. TaskFence always pauses this for explicit human approval, whatever the delegation says.
View tool JSON
{
"name": "submitJobApplication",
"kind": "transact",
"impl": "imperative",
"description": "Submit the completed application. This is final and cannot be undone. TaskFence always pauses this for explicit human approval, whatever the delegation says.",
"inputSchema": {
"type": "object",
"properties": {
"confirm": {
"type": "boolean",
"description": "Set true to indicate you believe the record is complete."
}
},
"additionalProperties": false
},
"page": "/"
}checkJobApplicationAnswer
Check every answer already on the application for values that do not look valid — a malformed email address, a phone number with letters in it, a date that is not a date, a blank line left over from a printed form. Read-only: it reports problems and changes nothing. Use it to tell the human what is wrong; fixing anything still needs a write, which the delegation governs.
View tool JSON
{
"name": "checkJobApplication",
"kind": "answer",
"impl": "imperative",
"description": "Check every answer already on the application for values that do not look valid — a malformed email address, a phone number with letters in it, a date that is not a date, a blank line left over from a printed form. Read-only: it reports problems and changes nothing. Use it to tell the human what is wrong; fixing anything still needs a write, which the delegation governs.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}listSubscriptionsAnswer
List every subscription on the account with its plan, monthly price, renewal date, status and when it was last used.
View tool JSON
{
"name": "listSubscriptions",
"kind": "answer",
"impl": "imperative",
"description": "List every subscription on the account with its plan, monthly price, renewal date, status and when it was last used.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}getSubscriptionAnswer
Read one subscription in detail, including the plans it can be moved to.
View tool JSON
{
"name": "getSubscription",
"kind": "answer",
"impl": "imperative",
"description": "Read one subscription in detail, including the plans it can be moved to.",
"inputSchema": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "string",
"description": "Id from listSubscriptions."
}
},
"required": [
"subscriptionId"
],
"additionalProperties": false
},
"page": "/"
}getSpendSummaryAnswer
Read a summary of monthly and annual spend, broken down by category and by how recently each service was used.
View tool JSON
{
"name": "getSpendSummary",
"kind": "answer",
"impl": "imperative",
"description": "Read a summary of monthly and annual spend, broken down by category and by how recently each service was used.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}changePlanSensitive Action
Move a subscription to a different plan (for example, downgrade it). Reversible.
View tool JSON
{
"name": "changePlan",
"kind": "transact",
"impl": "imperative",
"description": "Move a subscription to a different plan (for example, downgrade it). Reversible.",
"inputSchema": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "string"
},
"plan": {
"type": "string",
"description": "One of availablePlans for that subscription."
}
},
"required": [
"subscriptionId",
"plan"
],
"additionalProperties": false
},
"page": "/"
}pauseSubscriptionSensitive Action
Pause a subscription. Reversible — billing stops until it is resumed.
View tool JSON
{
"name": "pauseSubscription",
"kind": "transact",
"impl": "imperative",
"description": "Pause a subscription. Reversible — billing stops until it is resumed.",
"inputSchema": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "string"
}
},
"required": [
"subscriptionId"
],
"additionalProperties": false
},
"page": "/"
}setRenewalReminderAction
Set a reminder before a subscription renews. Reversible and low risk.
View tool JSON
{
"name": "setRenewalReminder",
"kind": "act",
"impl": "imperative",
"description": "Set a reminder before a subscription renews. Reversible and low risk.",
"inputSchema": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "string"
},
"when": {
"type": "string",
"description": "e.g. \"3 days before renewal\"."
}
},
"required": [
"subscriptionId",
"when"
],
"additionalProperties": false
},
"page": "/"
}cancelSubscriptionSensitive Action
Cancel a subscription outright. This is irreversible in this demo, so TaskFence always pauses it for explicit human approval.
View tool JSON
{
"name": "cancelSubscription",
"kind": "transact",
"impl": "imperative",
"description": "Cancel a subscription outright. This is irreversible in this demo, so TaskFence always pauses it for explicit human approval.",
"inputSchema": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "string"
}
},
"required": [
"subscriptionId"
],
"additionalProperties": false
},
"page": "/"
}