Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

TaScan

REMOTE · APP.TASCAN.IO · 2 COMPONENTS · SCANNED SEP 20

36 MCP tools for projects, tasks, workers, QR/NFC tags, and AI remediation. Task. Scan. Done.

+2 this week 90 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security94
Transport & Reachability100
Schema Quality & AI Usability68
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 12174 tokens (~154/item across 79 items; 79 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage95
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 85% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 8 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 79 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
  • Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
Install

How do I install the TaScan MCP server?

TaScan is a hosted endpoint at https://app.tascan.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · app.tascan.io

# add to Claude Code
claude mcp add --transport http snowbikemike-tascan-mcp 'https://app.tascan.io/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "snowbikemike-tascan-mcp": {
      "url": "https://app.tascan.io/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "snowbikemike-tascan-mcp": {
      "type": "http",
      "url": "https://app.tascan.io/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.snowbikemike-tascan-mcp]
url = "https://app.tascan.io/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "snowbikemike-tascan-mcp": {
      "type": "remote",
      "url": "https://app.tascan.io/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add snowbikemike-tascan-mcp --url 'https://app.tascan.io/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  snowbikemike-tascan-mcp:
    url: "https://app.tascan.io/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "snowbikemike-tascan-mcp": {
      "Transport": "http",
      "Url": "https://app.tascan.io/mcp"
    }
  }
}
# add to Vellum
assistant mcp add snowbikemike-tascan-mcp -t streamable-http -u 'https://app.tascan.io/mcp'
// mcp.json
{
  "mcpServers": {
    "snowbikemike-tascan-mcp": {
      "type": "http",
      "url": "https://app.tascan.io/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 0
    • Tool “tascan_create_cycle” rewrote its description, which is the text the model reads security
    • Server version: 3.14.1 → 3.15.0 functional
    • “tascan_create_cycle” added an optional parameter “reviews” cosmetic
    • “tascan_create_cycle” reworded the description of “review_brief” cosmetic
  • 19 Sept 26 0
    • New tool “tascan_cancel_scheduled_sms”, which the server declares destructive security
    • Server version: 3.13.1 → 3.14.1 functional
    • New tool “tascan_schedule_sms” functional
    • New tool “tascan_list_scheduled_sms” functional
    • New tool “tascan_project_digest” functional
    • “tascan_create_cycle” added an optional parameter “repo” cosmetic
  • 17 Sept 26 0
    • Stability: 0.97 → pass security
    • Tool “tascan_get_build” rewrote its description, which is the text the model reads security
    • Tool “tascan_get_build_file” rewrote its description, which is the text the model reads security
  • 16 Sept 26 +1
    • Tool “tascan_complete_task” rewrote its description, which is the text the model reads security
    • Tool “tascan_get_receipt” rewrote its description, which is the text the model reads security
    • Schema quality: 131 → 148 functional
    • New tool “tascan_get_build_file” functional
    • New tool “tascan_get_cycle_report” functional
    • New tool “tascan_post_message” functional
    • New tool “tascan_create_cycle” functional
    • New tool “tascan_get_build” functional
    • “tascan_get_receipt” reworded the description of “profile” cosmetic
  • 15 Sept 26 +1
    • Tool “tascan_add_tasks” rewrote its description, which is the text the model reads security
    • Tool “tascan_dispatch_to_agent” rewrote its description, which is the text the model reads security
    • Tool “tascan_get_task” rewrote its description, which is the text the model reads security
    • Tool “tascan_register_agent” rewrote its description, which is the text the model reads security
    • Tool “tascan_update_task” rewrote its description, which is the text the model reads security
    • MCP protocol version: 2025-03-26 → 2025-06-18 functional
    • Server version: 3.12.0 → 3.13.1 functional
    • New tool “tascan_get_receipt” functional
    • “tascan_dispatch_to_agent” reworded the description of “agent” cosmetic
    • “tascan_dispatch_to_agent” reworded the description of “priority” cosmetic
    • “tascan_dispatch_to_agent” reworded the description of “task” cosmetic
  • 13 Sept 26 +1
    • Server version: 3.11.0 → 3.12.0 functional
  • 12 Sept 26 0
    • Tool “tascan_get_task” rewrote its description, which is the text the model reads security
    • Tool “tascan_get_report” rewrote its description, which is the text the model reads security
    • Schema quality: good → excellent functional
    • Server version: 3.9.0 → 3.11.0 functional
  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Probed https://app.tascan.io/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=tascan.io CN=YE1,O=Let's Encrypt,C=US 7 Sept 2026 6 Dec 2026 ECDSA 256 ECDSA-SHA384 5b0592230696a03c49a5c4752173414f010
SANs: *.tascan.io, tascan.io
CN=YE1,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 5ddd70dd31f801c85c186a7a04b80afe
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of app.tascan.io. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
io. present 57355 8 Verified
tascan.io. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On tool calls
HTTP status 200

WWW-Authenticate challenge Bearer resource_metadata="https://app.tascan.io/.well-known/oauth-protected-resource"

Bearer resource_metadata="https://app.tascan.io/.well-known/oauth-protected-resource"
Header Value
strict-transport-security max-age=31536000

Protected resource metadata

Document https://app.tascan.io/.well-known/oauth-protected-resource
Retrieved Yes
Resource https://app.tascan.io/mcp
Authorisation server https://app.tascan.io

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://app.tascan.io/mcp Verified 200
http (plaintext) http://app.tascan.io/mcp HTTPS enforced 301 https://app.tascan.io/mcp
MCP tools · 79 exposed · ~12,174 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
tascan_list_subtasks ~46

List the subtasks of a task, including completion state, stored response values, and completion timestamps (per-set timing).

NameTypeReqDescription
task_idstringyesParent task ID

No output schema declared.

No examples provided.

tascan_list_tags ~28

List all registered NFC tags in the organization with their linked projects/task lists and scan counts

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tascan_list_tasks ~34

List all tasks in an event (task list)

NameTypeReqDescription
list_idstringyesTask list (event) ID

No output schema declared.

No examples provided.

tascan_list_templates ~45

List available task templates (built-in and saved)

NameTypeReqDescription
categorystringFilter by category (e.g. "live-events", "hospitality", "logistics")

No output schema declared.

No examples provided.

tascan_list_workers ~171

List workers (taskees) in the organization. Supports filtering by name/email/phone substring, contact-info presence, and last-activity date. Each row includes completion_count (total task completions).

NameTypeReqDescription
active_sincestringISO date/datetime — only workers with last_active_at on/after this
has_emailbooleantrue/false — same for email
has_phonebooleantrue = only workers with a phone on file; false = only without
include_inactivebooleantrue = also include inactive workers (e.g. tombstones left by a merge or delete) — useful for auditing right after tascan_merge_workers / tascan_delete_worker
querystringSubstring match on name, email, or phone

No output schema declared.

No examples provided.

tascan_list_zones ~47

List geofenced work zones, optionally filtered by project. Shows center, radius, routing target, and zone-lock status.

NameTypeReqDescription
project_idstringFilter by project

No output schema declared.

No examples provided.

tascan_merge_workers ~173

Merge duplicate worker records into one canonical identity (Patent 4 identity consolidation). Reassigns every reference (completions, timer events, points, payments, rosters — 31 columns across 31 tables), backfills missing phone/email on the primary, sums points, and tombstones the duplicates (merged_into + is_active=false — NEVER hard-deletes). ALWAYS run with dry_run=true first and show Mike the counts; pass dry_run=false only after explicit confirmation.

NameTypeReqDescription
dry_runbooleantrue (default) = report reassignment counts only, change nothing. false = execute atomically.
duplicate_worker_idsarrayyesWorker IDs to fold into the primary (max 20)
primary_worker_idstringyesThe canonical worker that survives (usually the one with a phone)

No output schema declared.

No examples provided.

tascan_post_message ~460

Post a message on a task trail (protocol v0.2 trail_messages): kind question, answer, handoff or discussion. A message never completes a task, never satisfies a gate and never pages anyone. The actor is stamped from your credential (key:<id>, actor_type "key" — a credential, never a human), never from the body; the executor and the reviewer consume a key's answers only when the key holds agent:dispatch. On an ordinary task this is write tier. On a CYCLE task (one with coord) it needs agent:dispatch (agent:dispatch:code when the task, or the asker a question task stands for, is CODE:/SHELL:) because the text can become executor prompt or reviewer input. kind=answer on a dispatcher-addressed question task answers it through coord_answer_question and releases the blocked asker; a human-addressed question is answered only on the worker page (403 here). finding (reviewer runner) and decision (human completion) cannot be posted. Body ≤ 8000 chars; idempotency_key makes a replay return the same message.

NameTypeReqDescription
addresseestringOptional, kind=question only: who the question is for (recorded; nobody is paged).
bodystringyesThe message text (1-8000 chars). Treated as DATA by every reader; on a cycle task it may be prepended to the executor prompt as TRAIL INPUT.
build_refstringOptional sha256:<64 hex> the message is about (defaults to the cycle task's bound build).
idempotency_keystringOptional replay key (≤ 200 chars): the same key on the same task returns the same message id.
kindstringyesquestion = a question for the record (does not block anything); answer = answers a dispatcher question task and releases the asker; handoff = hand work or context to the next agent; discussion = a no…
reply_tostringOptional message id this replies to.
task_idstringyesTask ID (UUID). For an answer: the QUESTION task id (tascan_get_task on the asker shows coord.blocked_by).

No output schema declared.

No examples provided.

tascan_project_digest ~111

One call that gives a chat client (ChatGPT, Claude) a whole TaScan project in about 2,000 words: the project, every task list with task counts, open decisions and questions, the last 5 coordination cycles with verdicts and spend, the latest 5 receipts, and total spend — returned as Markdown (capped at 12,000 chars). Read tier. Use it before asking a human to paste anything.

NameTypeReqDescription
project_idstringyesProject ID (UUID).

No output schema declared.

No examples provided.

tascan_query_responses ~151

Query one task's submitted responses across every list in a project — e.g. the same exercise repeated across many workout lists returns one chronological progression series instead of N report lookups. Match by task title pattern or exact task ID. Subtask completions interleave into the same series labeled 'Task › Subtask' (e.g. per-set values Set 1/2/3 with their own timestamps), so set-level progression chains across lists automatically.

NameTypeReqDescription
limitnumberMax responses to return (default 200, max 500)
project_idstringyesProject ID
taskstringyesTask title pattern (case-insensitive substring) or exact task ID

No output schema declared.

No examples provided.

tascan_recommend_fix ~176

Step 2 of the Closed-Loop Autonomous Operations Protocol. Post an AI-generated recommendation to an issue thread. Accepts both a text recommendation and an optional structured_recommendation object with task definitions for auto-dispatch. The recommendation is persisted in the AI audit trail.

NameTypeReqDescription
ai_agentstringName of the AI agent posting (default: TaScan AI)
issue_idstringyesIssue ID to recommend a fix for
recommendationstringyesThe AI-generated recommendation text (clear, actionable instructions)
structured_recommendationobjectOptional structured recommendation with tasks for auto-dispatch. Format: { recommendation_summary, confidence_score, tasks: [{ title, description, response_type, requires_photo, is_safety_checkpoint,…

No output schema declared.

No examples provided.

tascan_register_agent ~234

Register a new AI agent in the agent registry. The agent will appear in tascan_list_agents and can receive dispatched tasks. Self-registration for AI agents joining the TaScan network. REQUIRES the agent:dispatch permission (defining a dispatch target is a dispatch permission); inbox_id must be a task list (event) in your organization.

NameTypeReqDescription
capabilitiesarrayyesTask type prefixes this agent handles (e.g. ["RESEARCH", "WRITE"])
descriptionstringWhat this agent does
idstringyesUnique agent ID (e.g. "my-agent-1")
inbox_idstringyesTask list ID this agent monitors for new tasks
locationstringWhere the agent runs (e.g. "AWS us-east-1")
modelstringModel powering this agent (e.g. "claude-sonnet-4-6")
namestringyesDisplay name (e.g. "Research Bot")
typestringyesAgent type
worker_idstringTaScan worker ID for this agent

No output schema declared.

No examples provided.

tascan_register_asset ~138

Register a physical asset (equipment, structure, vehicle, machine) in the condition ledger so it can be assessed over time. Each asset gets a longitudinal condition history with AI scoring and degradation trajectory.

NameTypeReqDescription
asset_typestringType (e.g. "LED processor", "forklift", "scaffold")
descriptionstringContext the AI assessor should know
location_descriptionstring
namestringyesAsset name (e.g. "LED Wall Processor #3")
project_idstring
serial_numberstringSerial number or asset tag (unique per org)

No output schema declared.

No examples provided.

tascan_register_tag ~185

Register a physical NFC tag to a project, task list, or specific task. When someone taps the tag, TaScan routes them to the linked resource. Tags use NTAG215 chips and are programmed with NFC Tools Pro.

NameTypeReqDescription
location_descriptionstringPhysical location of the tag
project_idstringProject ID
tag_hardware_idstringyesNFC tag hardware serial number (e.g., "04:CB:6C:51:CE:2A:81")
tag_namestringyesFriendly name (e.g., "Ballroom A Door", "Breaker Panel 3")
target_typestringyesWhat this tag points to
task_idstringTask ID (required for task targets)
task_list_idstringTask list ID (required for task_list/task targets)

No output schema declared.

No examples provided.

tascan_reply_with_list ~177

Reply to a task list WITH a task list — the two-way tasking primitive. Creates a new list linked into the parent's thread, aimed back at whoever sent the original (e.g. "Grant access — pick a window" with response_type date, or an info request with response_type text). The org gets pinged; the thread shows in both the worker portal and Simple Mode. Use tascan_get_thread-style follow-up via tascan_list_projects/tascan_get_report to read answers.

NameTypeReqDescription
author_namestringWho is replying (shown in the thread)
parent_list_idstringyesThe list being replied to
tasksarrayyesItems the recipient answers — each becomes a typed task
titlestringyesReply list title (e.g. "Before I can start...")

No output schema declared.

No examples provided.

tascan_request_payment ~178

Pledge a payment on a task list: when the list is verified complete (every task done + photo evidence on photo-required tasks), the payer automatically receives a Stripe pay link that routes the money DIRECTLY to the worker (0% TaScan fee). No money moves and no card is stored at pledge time. The worker must have completed payout onboarding (Get Paid on their profile).

NameTypeReqDescription
amount_centsnumberyesAmount in cents ($1 min, $10,000 max)
memostringWhat the payment is for (shown to the payer)
payer_emailstringyesWho pays — receives the pay link on verification
payer_namestring
task_list_idstringyesTask list the payment is tied to
worker_idstringyesWorker who gets paid

No output schema declared.

No examples provided.

tascan_schedule_sms ~379

Schedule a transactional TaScan SMS for a future time (up to 90 days out): the text is sent by TaScan's own scheduler (every 5 minutes) through the same guarded lane as tascan_send_sms — recipient must be a worker of your org or a phone the org already knows, STOP opt-outs honoured, burst limits and the SMS quota apply, the "TaScan:" prefix is added, and a list_id appends a tap-to-open checklist link. Use this for reminders (e.g. "log your out time" each show night) — nothing outside TaScan needs to stay awake. Returns the scheduled row id; cancel with tascan_cancel_scheduled_sms while it is still pending. The same idempotency_key within an org returns the existing row instead of a duplicate.

NameTypeReqDescription
idempotency_keystringOptional caller key (≤ 200 chars) — replays return the existing scheduled row
include_linkbooleanAppend the list link (default true when list_id is given)
list_idstringOptional task list ID — appends the tap-to-open checklist link
messagestringyesMessage text (1-400 chars, links stripped). Transactional and work-related only.
phonestringRaw phone (E.164) — must already belong to a worker or roster entry of your org
send_atstringyesWhen to send — ISO 8601 with a timezone offset, e.g. "2026-09-25T18:30:00-07:00" (Las Vegas is -07:00 in September). Delivery happens on the next 5-minute tick at or after this time.
worker_idstringWorker ID — texts their phone on file (preferred over raw phone)

No output schema declared.

No examples provided.

tascan_search_marketplace ~207

Search the cross-org Worker Marketplace: workers who opted in (discoverable=true on their passport), ranked by passkey trust tier + verified completion volume. Skills are AI-inferred from REAL completed work, not resumes — each carries a verified_task_count and a civilian_equivalent job title. Returns sanitized public cards only (first name + last initial, skills, stats, passport URL) — never phone, email, or org membership.

NameTypeReqDescription
availablebooleanOnly workers who marked themselves available on their passport
citystringFilter by the worker's opt-in home city, e.g. "Las Vegas"
limitnumberMax cards (default 25, max 50)
min_completionsnumberOnly workers with at least this many verified completions
qstringSkill, category, name, or civilian job title — e.g. "forklift", "LED wall", "AV technician"

No output schema declared.

No examples provided.

tascan_send_sms ~250

Send a transactional TaScan SMS text to a worker (by worker_id, using their phone on file) or to a raw phone number. Optionally attach a task list — the recipient gets a tap-to-open checklist link. Sends from TaScan's carrier-registered A2P number (or the org's own Twilio if BYOK). Counts against the org's monthly SMS quota unless BYOK. Messages are auto-prefixed with "TaScan:" per carrier registration; transactional/work-related content only, no marketing.

NameTypeReqDescription
include_linkbooleanWhen a list_id is given, append the tap-to-open link to the SMS body (default true). Set false to send the message text alone — the link is still returned for you to share another way.
list_idstringOptional task list ID — appends a tap-to-open worker checklist link
messagestringyesMessage text. Transactional and work-related only.
phonestringRaw phone number (e.g. "+17025551234") — used when no worker_id given
worker_idstringWorker ID — sends to their phone on file (preferred over raw phone)

No output schema declared.

No examples provided.

tascan_send_task_email ~154

Send a branded TaScan task notification email via SendGrid. Can notify anyone about a specific task list or task. Includes QR code, task summary, and "Open in TaScan" button.

NameTypeReqDescription
include_qrbooleanInclude QR code for the task list in the email (default: true)
list_idstringyesTask list (event) ID
messagestringOptional custom message to include in the email body
subjectstringCustom email subject (defaults to auto-generated)
task_idstringOptional specific task ID to highlight
to_emailstringyesRecipient email address
to_namestringRecipient display name

No output schema declared.

No examples provided.

tascan_server_info ~58

Identify exactly which TaScan server and schema this MCP session is talking to. Call this FIRST when diagnosing anything — it makes "dev server masquerading as production" and "is my fix deployed yet" one tool call instead of an inference.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tascan_update_event ~167

Update an event / task list (name, description, team_mode, multi_instance, timer_mode). team_mode and multi_instance cannot both be true.

NameTypeReqDescription
assigned_worker_idsarrayWorker UUIDs to assign to this event (additive — workers not named are left alone). Each gets a personal tap-to-open link. Note: a worker holds one event assignment per project — assigning moves them.
descriptionstringNew description
list_idstringyesTask list (event) ID
multi_instancebooleanMulti-instance — each worker gets isolated copy
namestringNew name
team_modebooleanTeam mode — shared completions
timer_modestringTimer mode (auto or manual)

No output schema declared.

No examples provided.

tascan_update_invoice ~108

Update an invoice: mark it paid (records paid_at), overdue, cancelled, or edit client details / notes / due date.

NameTypeReqDescription
client_emailstring
client_namestring
client_phonestring
due_datestring
invoice_idstringyes
notesstring
paid_atstringISO timestamp (default now) when status = paid
statusstring

No output schema declared.

No examples provided.

tascan_update_project ~82

Update a project (name, location, status, dates)

NameTypeReqDescription
end_datestringEnd date (ISO)
locationstringNew location
namestringNew name
project_idstringyesProject ID
start_datestringStart date (ISO)
statusstringStatus

No output schema declared.

No examples provided.

tascan_update_subtask ~90

Update a subtask (title, description, response_type, response_config, requires_photo, sort_order).

NameTypeReqDescription
descriptionstring
requires_photoboolean
response_configobject
response_typestring
sort_ordernumber
subtask_idstringyesSubtask ID
titlestring

No output schema declared.

No examples provided.

tascan_update_task ~272

Update a task (title, description, response_type, flags, sort_order). A task that sits in an AI agent inbox is agent input (the runner executes title + description), so ANY edit to it needs the agent:dispatch permission — agent:dispatch:code when the task is or becomes CODE:/SHELL:.

NameTypeReqDescription
assigned_tostringWorker to assign this task to — pass the worker UUID (validated against your org and stored as the worker's name, which is how the worker portal matches "my tasks"). A plain name string is also accep…
descriptionstringNew description
is_safety_checkpointbooleanSafety-critical flag
required_equipmentstringEquipment this task depends on (free text)
requires_photobooleanRequire photo
response_configobjectResponse configuration. For "choice": {options: [...]}. See tascan_add_tasks.
response_typestringSee tascan_add_tasks for guidance. "text" for info collection, "photo" for visual proof, "checkbox" for yes/no only.
sort_ordernumberSort position
task_idstringyesTask ID
titlestringNew title

No output schema declared.

No examples provided.

tascan_update_worker ~58

Update a worker profile (name, phone, email)

NameTypeReqDescription
emailstringNew email
namestringNew name
phonestringNew phone
worker_idstringyesWorker ID

No output schema declared.

No examples provided.

tascan_update_zone ~255

Update a geofenced zone — move the center, resize the radius, change the routing target, toggle zone-lock, or deactivate it (is_active=false).

NameTypeReqDescription
alert_on_breachboolean
auto_clock_inboolean
auto_clock_outboolean
enforce_on_listboolean
enter_messagestring
is_activeboolean
kindstring
latnumber
lngnumber
namestring
notify_emailstring
notify_on_enterboolean
notify_on_exitboolean
polygonarrayReplace geometry with a polygon ([[lat,lng],...], ≥3 vertices); pass null to revert to a circle
ppe_photo_requiredboolean
radius_mnumber
required_ppearray
sms_worker_on_enterboolean
sms_worker_on_exitboolean
task_list_idstring
task_list_on_enterstring
zone_idstringyesZone ID

No output schema declared.

No examples provided.

tascan_zone_compliance ~129

Hazard-zone compliance audit (OSHA / insurance): every zone crossing, PPE checkpoint verdict (complied / failed with what was missing / skipped), and breach, plus injury reports cross-referenced with the worker's last PPE checkpoint before the injury. Scope by project or zone, optionally by worker and date range. Same rows the printable Evidence Pack shows.

NameTypeReqDescription
project_idstring
sincestringISO date/time lower bound
untilstringISO date/time upper bound
worker_idstring
zone_idstring

No output schema declared.

No examples provided.

Common questions

What is the TaScan MCP server?

TaScan is an MCP server listed in the public MCP registry as io.github.snowbikemike/tascan-mcp. 36 MCP tools for projects, tasks, workers, QR/NFC tags, and AI remediation. Task. Scan. Done. This page covers its hosted endpoint (https://app.tascan.io/mcp).

Is the TaScan MCP server safe to use?

TaScan scores 90 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the TaScan MCP server expose?

TaScan exposes 79 tools: tascan_list_projects, tascan_create_project, tascan_get_project, tascan_update_project, tascan_delete_project, and 74 more. Their descriptions and schemas cost roughly 12,174 tokens of context every time the server is loaded.

Does the TaScan MCP server require authentication?

Yes. TaScan asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the TaScan MCP server still maintained?

TaScan is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.