Connect TaScan and your agent gets 80 tools, among them tascan_add_subtasks, tascan_add_tasks, tascan_analyze_issue. It answers at https://app.tascan.io/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 11 September 2026; the last check, on 24 October 2026, succeeded.
36 MCP tools for projects, tasks, workers, QR/NFC tags, and AI remediation. Task. Scan. Done.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
tascan_add_subtasks | Add one or more subtasks to a task (bulk). Subtasks support typed responses: "number" for per-set data (reps, weight, distance), "text" for notes, "choice" for options, "checkbox" for simple steps. Set-logging example: task "Bench Press" wi Inputs: task_id, subtasks |
tascan_add_tasks | Add one or more tasks to an event (task list). Supports bulk creation. IMPORTANT: Set response_type correctly — use "text" for info collection (names, phones, emails, notes), "photo" for visual verification (inspections, serial numbers, dam Inputs: list_id, tasks |
tascan_analyze_issue | Step 1 of the Closed-Loop Autonomous Operations Protocol. Retrieves full issue context including worker info, message thread, project history, and recent similar issues. Use this data to reason about the root cause and generate a remediatio Inputs: issue_id, server_side_ai |
tascan_apply_template | Apply a pre-built template to a task list, adding all template tasks Inputs: list_id, template_slug |
tascan_assess_condition | Run an AI condition assessment of an asset from a photo. The model scores 0-100 with the asset's full assessment history in context, so it reads degradation over time — returning the Condition Delta Score vs the previous assessment, defects Inputs: asset_id, photo_url, worker_name |
tascan_auto_resolve | FULL Closed-Loop Autonomous Operations Protocol in one call. Server-side AI analyzes the issue, generates remediation tasks, creates a task list, and dispatches to the worker — all without human intervention. This executes Patent Claim 7: a Inputs: issue_id |
tascan_cancel_scheduled_sms | Cancel a scheduled text that has not been sent yet (status pending). A row already sending, sent, failed or cancelled is refused (409) — a sent text cannot be recalled. Inputs: id |
tascan_complete_subtask | Complete a subtask, optionally recording a typed response_value (e.g. the weight or reps for that set). Each completion is timestamped, so consecutive set completions yield per-set durations. Returns progress including all_subtasks_complete Inputs: subtask_id, worker_id, response_value, notes |
tascan_complete_task | Complete an ORDINARY task on behalf of a worker. Inserts a completion record and timer event. Use this to simulate or record task completions via the API. Coordination-cycle tasks (a CODE:/REVIEW: build or review, a Decision / Question / In Inputs: task_id, worker_id, notes, response_value |
tascan_condition_history | Get an asset's longitudinal condition history — score trend over time, every assessment with grade, delta, findings, and who assessed it. The per-serial-number condition ledger. Inputs: asset_id |
tascan_create_cycle | Start an unattended build-review-decide cycle (protocol v0.2). Queues T1 CODE: (or SHELL:) with your build_brief on the AI Inbox and T2 REVIEW: with your review_brief, born blocked on T1. The local executor builds, stores the exact bytes of Inputs: project_id, title, build_brief, review_brief, artifact_paths, task_type |
tascan_create_event | Create a new event (task list) within a project. Supports team_mode (shared completions) and multi_instance (each worker gets isolated copy — great for surveys, onboarding, info collection). team_mode and multi_instance cannot both be true. Inputs: project_id, name, description, team_mode, multi_instance, assigned_worker_ids |
tascan_create_invoice | Create a client invoice and get its shareable link. Two ways to bill: (a) pass explicit line_items, or (b) pass project_id or task_list_ids plus hourly_rate (quarter-hour billing from first→last verified completion per list) or flat_rate_pe Inputs: client_name, client_email, client_phone, project_id, task_list_ids, hourly_rate |
tascan_create_project | Create a new TaScan project (top-level container for events) Inputs: name, location |
tascan_create_worker | Create a new worker (taskee) in the organization Inputs: name, phone, email |
tascan_create_zone | Create a geofenced work zone. Delivery zones route workers who open the project Site Gate (geo.html?project=...) to this zone's task list when GPS places them inside the radius. Set enforce_on_list=true to zone-lock the task list — workers Inputs: name, lat, lng, radius_m, project_id, task_list_id |
tascan_delete_event | Delete an event (task list) and all its tasks and completions. This action is irreversible. Inputs: list_id |
tascan_delete_project | Delete a project and all its events, tasks, and completions. This action is irreversible. Inputs: project_id |
tascan_delete_subtask | Delete a subtask and its completions. This action is irreversible. Inputs: subtask_id |
tascan_delete_task | Delete a specific task and its completions. This action is irreversible. Inputs: task_id |
tascan_delete_worker | Tombstone a worker record (is_active=false). REFUSES if the worker has any task/subtask completions or payments — merge those into the real worker with tascan_merge_workers instead. Never hard-deletes. Inputs: worker_id |
tascan_dispatch_instruction | Step 3 of the Closed-Loop Autonomous Operations Protocol. Dispatches remediation to the worker via MULTI-CHANNEL delivery: (1) issue thread message, (2) in-app notification, (3) progress feed update, (4) SMS if phone on file, (5) optional r Inputs: issue_id, instruction, worker_id, remediation_tasks, recommendation_summary, send_sms |
tascan_dispatch_to_agent | PREFERRED tool for sending work to an AI agent. Dispatches a task to the agent's inbox — picked up and executed automatically. No list ID needed. REQUIRES the agent:dispatch permission on this connection (CODE:/SHELL: tasks also require age Inputs: task, agent, priority |
tascan_find | Cross-entity search: find projects, task lists, tasks, workers, or condition assets by name in one call — with ids and parent context to disambiguate. Use this instead of walking projects→lists→tasks or guessing ids from display names. Inputs: query, type |
tascan_find_duplicate_workers | Find candidate same-person worker records with per-signal match detail (Patent 4 §6.25(b) signals: phone reuse, name similarity, GPS pattern correlation). Turns identity fragmentation from an accidental discovery into a monitorable metric, Inputs: worker_id, name, threshold, include_orphans |
tascan_generate_qr | Generate a QR code for a task list (event) that workers can scan to access tasks Inputs: list_id |
tascan_generate_report | Mint a shareable report and get its link. Types: completion (full proof-of-work for one list: tasks, responses, subtasks, photos, GPS + place names, timing, QR pair), service (client-facing version of a list with YOUR company branding and a Inputs: type, list_id, project_id, company_name, message, show_workers |
tascan_get_build | Manifest of a stored build bundle by build_ref (protocol v0.2 build_artifacts): the exact files the executor produced for the cycle's artifact_paths, each with sha256, byte length and whether text content is stored (binary or over-cap files Inputs: build_ref |
tascan_get_build_file | Read one file from a stored build bundle by build_ref and path (protocol v0.2 build_artifacts) — the exact bytes the executor produced, not a working-tree read. Returns up to 12000 chars per call with offset/limit paging (next_offset when t Inputs: build_ref, path, offset, limit |
tascan_get_cycle_report | The audit report of one coordination cycle by its root task id (protocol v0.2, get_cycle_report): every step task (build, review, checkpoint, integrate, question, parked) with its revision and state, every execution attempt with runner, out Inputs: root_id, full |
tascan_get_event | Get details of a specific event (task list) including its tasks Inputs: list_id |
tascan_get_project | Get details of a specific project Inputs: project_id |
tascan_get_receipt | Fetch the signed Action Receipt (Ed25519 JWS) for one completed task by completion_id (tascan_get_task -> completions[].id). Returns a readable summary (what, who, verification, evidence hashes, outcome, ledger chain) plus receipt_id/serial Inputs: completion_id, profile |
tascan_get_report | Get completion report for a task list (event) including task status, completions, workers, and photos. Set include_responses to also return the actual submitted response data (numbers, text, choices) for each completed task plus a per-task Inputs: list_id, include_responses |
tascan_get_scan_history | Scan accountability data. Two modes: (1) tag_id — scans of a registered NFC tag; (2) task_list_id or project_id — every QR/link page-open stamp: when the code was scanned, GPS + IP + channel (qr/nfc/sms/email/link), who the scanner turned o Inputs: tag_id, task_list_id, project_id, source, since, limit |
tascan_get_sms_status | Check delivery status of a previously sent TaScan SMS by its Twilio SID (returned by tascan_send_sms). Shows queued/sent/delivered/undelivered/failed plus carrier error codes. Inputs: twilio_sid |
tascan_get_task | Get details of a specific task including completions and subtasks. Each completion carries photo_url (raw storage path, stable) and photo_signed_url (short-lived fetchable URL, ~1h; null when no photo) so you can actually view the photo evi Inputs: task_id |
tascan_get_worker | Ungated, plain read of one worker row: name, contact, org, points, streaks, timestamps. (tascan_get_worker_passport is the rich stats view; this is the boring lookup.) Inputs: worker_id |
tascan_get_worker_passport | Get a worker's verified work passport — task counts, lists worked, photos submitted, GPS-verified hours, points, streaks, and earned merit badges, all computed from real completion data (not self-reported). Includes the shareable profile UR Inputs: worker_id |
tascan_invite_worker | Invite a marketplace worker to a task list — the consented intro. TaScan texts the worker from its own number ("<Your org> wants you for <list>. Reply YES to share your contact and get the list, or NO to pass."). On YES the worker appears i Inputs: worker_id, list_id, message |
tascan_list_agents, tascan_list_assets, tascan_list_events, tascan_list_invites, tascan_list_invoices, tascan_list_issues, tascan_list_payments, tascan_list_projects, tascan_list_reports, tascan_list_scheduled_sms, tascan_list_subtasks, tascan_list_tags, tascan_list_tasks, tascan_list_templates, tascan_list_workers, tascan_list_zones, tascan_merge_workers, tascan_post_message, tascan_project_digest, tascan_query_responses, tascan_recommend_fix, tascan_record_integration, tascan_register_agent, tascan_register_asset, tascan_register_tag, tascan_reply_with_list, tascan_request_payment, tascan_schedule_sms, tascan_search_marketplace, tascan_send_sms, tascan_send_task_email, tascan_server_info, tascan_update_event, tascan_update_invoice, tascan_update_project, tascan_update_subtask, tascan_update_task, tascan_update_worker, tascan_update_zone, tascan_zone_compliance
Every block below points at https://app.tascan.io/mcp. Pick your client and copy.
claude mcp add --transport http tascan https://app.tascan.io/mcp
{
"mcpServers": {
"tascan": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://app.tascan.io/mcp"]
}
}
}{
"mcpServers": {
"tascan": {
"url": "https://app.tascan.io/mcp"
}
}
}{
"servers": {
"tascan": {
"type": "http",
"url": "https://app.tascan.io/mcp"
}
}
}{
"context_servers": {
"tascan": {
"url": "https://app.tascan.io/mcp"
}
}
}{
"mcpServers": {
"tascan": {
"serverUrl": "https://app.tascan.io/mcp"
}
}
}{
"mcpServers": {
"tascan": {
"url": "https://app.tascan.io/mcp"
}
}
}name: TaScan
version: 0.0.1
schema: v1
mcpServers:
- name: TaScan
type: streamable-http
url: https://app.tascan.io/mcp{
"mcpServers": {
"tascan": {
"httpUrl": "https://app.tascan.io/mcp"
}
}
}{
"mcpServers": {
"tascan": {
"type": "http",
"url": "https://app.tascan.io/mcp"
}
}
}{
"mcpServers": {
"tascan": {
"url": "https://app.tascan.io/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fapp.tascan.io%2Fmcp&type=streamable_http&id=tascan&name=TaScan
It answered our last check on 24 October 2026 in 539 ms. Over 6 checks since 11 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
80, as returned by the server's own tools/list on 21 September 2026: tascan_add_subtasks, tascan_add_tasks, tascan_analyze_issue, tascan_apply_template, tascan_assess_condition, tascan_auto_resolve, tascan_cancel_scheduled_sms, tascan_complete_subtask, and 72 more.
It answered our last check on 24 October 2026 in 539 ms. Over 6 checks since 11 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://app.tascan.io/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: io.github.snowbikemike. Endpoint host: app.tascan.io. ARD identifier: urn:air:io.github.snowbikemike:mcp:tascan-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.