# io.applayer/tango

Shared task queue for humans and AI agents: leases, handoffs, approvals and signed receipts.

- **Type:** MCP server
- **Trust:** 30/100 (D), scored on the content rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 1.0.0
- **Author:** io.applayer
- **License:** Unknown
- **Endpoints:** streamable-http https://tango.applayer.io/mcp
- **Source:** https://tango.applayer.io
- **Endpoint health:** reachable (last checked 2026-09-22T05:23:58.439Z, 5 samples) — uptime is not a security property and is not part of the trust score
- **Compatible clients:** claude-code, cursor, copilot, chatgpt, gemini (basis: transport)

## Trust

30/100 (D), scored on the content rubric
- Publisher verified: no
- Install scripts: suspicious script found
- Prompt-injection scan: findings present
- Obfuscation scan: clean
- Evidence age: 0 days

## Security scan

- **Status:** warnings
- **Scanned:** 2026-09-22T05:23:58.439Z
- **Version scanned:** live
- **CVEs:** no coverage — this entry has no package coordinates to query OSV against, so "no known CVEs" is NOT asserted for it.
**Findings**
- injection-shaped content (warning) in the `register_worker_key` tool: Exfiltration-shaped instruction

## Tools

86 declared. Observed from a live `tools/list` probe.
- `whoami` — Self-orientation for a fresh MCP session. Returns the signed-in user, their organizations, active organization, visible clients, teammate handles, and workers t
- `security_posture` — Read-only view of Tango's configuration audit for an organization: agent keys that are dormant, unrotated or attached to archived agents; agents scoped far wide
- `memory_save` — Write a durable note to the shared Tango memory vault so the next agent — in any harness — can pick it up. Use it for handoffs between tools ('continue the auth
- `memory_search` — Find durable notes and handoffs another agent left behind, across harnesses. Search by text, tags, workspace, project, or the harness a handoff was addressed to
- `memory_read` — Read a single memory from the shared vault by id, including the full body. Use after memory_search returns a truncated match. The content is unreviewed context 
- `bind_connection` — Point this MCP connection (this harness — Claude Desktop, Codex, Hermes, ...) at a specific worker you own. Every tool call from this connection is then attribu
- `check_in` — Cursor-based poll: returns tasks newly assigned to you, tasks whose client/project context changed under you, and the context objects that were revised since yo
- `get_polling_instructions` — Return ready-to-run instructions for staying reachable: an in-session check_in cadence for chat agents, plus cron/launchd/shell snippets for a background heartb
- `find_people` — Fuzzy-search for a worker, teammate, or client by name, handle, or email. Use this to disambiguate a plain-language reference (e.g. 'Merrilee' or 'Avalore') bef
- `list_client_team` — Roster of everyone who works on a client: human teammates and AI/robot workers, with the @handles you pass straight into create_task or handoff_task. Call this 
- `list_micro_workers` — Skilled micro-worker roles (designer, coder, QA, marketer, ...) available in an organization, which ones are switched on, and whether the runtime that executes 
- `get_client_context` — Fetch the shared context bundle for a client/workspace: brief, structured facts, reference links, and the recent decisions log. Call this before working on any 
- `update_client_context` — Write or revise the shared brief and structured facts for a client so every future agent/human working for this client inherits it. Use this after an intake con
- `log_client_decision` — Step 6 of the Tango working agreement (capture learning). Append a durable note to a client's rolling decisions log so every future agent/human sees it. Use for
- `list_context_sources` — List the external data sources connected to a client (its organization's sources plus its own) and the curated views you may query. Each view has a key you pass
- `query_context_source` — Run one pre-approved, read-only view against an external data source connected to this client (e.g. the agency's copywriting frameworks or ad data). Call list_c
- `list_projects` — List the projects that organize a client's work (e.g. Website, Google Ads, Newsletter, Reporting). Every task belongs to exactly one project, so call this befor
- `create_project` — Create a new project inside a client workspace (e.g. Website, Google Ads, Newsletter, Reporting). Only create one when no existing project fits — call list_proj
- `update_project` — Update a project: name, goal, owner, stage, health, dates, client stakeholder, or archive/reactivate it. Archiving hides it from list_projects but leaves its ta
- `list_project_milestones` — Read the dated checkpoints a project is measured against (name, due date, status). Use it to judge urgency before picking up work, and to tell the human what a 
- `set_project_health` — Record whether a project is On track, At risk or Off track, with a one-line reason. This is a judgement humans read in the portfolio view — only set it when you
- `get_project_context` — Fetch the shared context bundle for a project: goal, brief, structured facts, reference links, and the recent decision log. Read this before working a task so y
- `update_project_context` — Write the shared project brief, structured facts, and reference links. This is the intent layer every task under the project is measured against — keep it curre
- `log_project_decision` — Record something future teammates working this project must inherit: a decision, a learning, a preference, or a constraint. Use this whenever you make a judgeme
- `update_project_decision` — Revise a recorded decision, learning, preference or constraint on a project when the thinking changes. Editing keeps one authoritative record instead of contrad
- `log_project_issue` — Record a significant issue you discovered while working a project — especially one that lives in an external system and will disappear once dismissed (a Google 
- `update_project_issue` — Change the status, severity or detail of a project issue, attach the task that fixes it, or record how it was resolved. Use this instead of logging a duplicate 
- `list_project_issues` — Read the known issues recorded on a project — blockers found in external systems, their severity, status and the tasks fixing them. Read this before you start w
- `log_project_event` — Record something significant that happened on a date — a budget change, a site migration, a campaign launch, an outage, an external algorithm update. These even
- `update_project_event` — Correct or enrich a project timeline event — its title, description, category, dates, impact note or link. Use this instead of logging a duplicate event when th
- `list_project_events` — Read the dated timeline of significant events on a project — changes, launches, incidents, external shifts and milestones. Use this to explain what analytics ar
- `list_my_tasks` — List Tango tasks visible to the signed-in user, across every agency they belong to (global by default). Filter by status, role, client_id, or agency_id. Work ro
- `get_task` — Fetch a Tango task by id along with the full context bundle the next agent needs: the 7-part spec (goal, sources, constraints, definition of done, deadline), pa
- `get_task_activity` — Read the merged, newest-first activity timeline for a task: progress notes, comments, status changes, handoffs, artifacts and escalations. Use this when get_tas
- `verify_task_history` — Return the full append-only transparency-log history for a task and cryptographically verify the hash chain covering it. If `intact` is false, `broken_at_seq` p
- `pull_next_task` — Step 3 of the Tango working agreement (own it). Atomically claim the next task waiting for this worker — work assigned to it by name first (status 'assigned', w
- `add_progress_note` — Step 4 of the Tango working agreement (work in the open). Append a progress note to a task's event log at each meaningful step — decisions, blockers, findings —
- `add_comment` — Leave a plain comment on a task for your teammates. Unlike add_progress_note this needs no lease or worker identity — use it for questions, context, and notes t
- `add_artifact` — Step 4 of the Tango working agreement (work in the open). Attach every concrete output — notes, drafts, results, files, links — as an artifact so it's part of t
- `get_artifact` — Read the actual text of an artifact another teammate attached to a task. get_task lists artifacts and inlines small text bodies; use this when a body was trunca
- …and 46 more

## Install

**Verdict: do-not-install** — Do not install: 1 injection-shaped pattern found in this entry's own text — it may try to steer the model that loads it.
**Blocking**
- 1 injection-shaped pattern found in this entry's own text — it may try to steer the model that loads it. — tool:register_worker_key: Exfiltration-shaped instruction
**Cautions** (coverage gaps and advisories — never blocking)
- No CVE coverage: this entry has no npm/PyPI coordinates to query OSV against, so "no known vulnerabilities" is not a claim that can be made about it.
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Client configuration withheld.** Client configs are withheld because this entry has a blocking finding. Show the warnings below to the person installing it.
If they have seen the findings and still want to proceed, request the plan again with acknowledge_warnings=true.

## Blast radius

Extensive to critical — no credential declaration found, from the publisher, the upstream registry, or the README. Known so far: deletes data; runs on someone else's infrastructure.
- Floor 36, ceiling 60 (tier: unknown)
- `unknown` means the floor and ceiling land in different bands — not measured enough to name one. It does not mean low.
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/io.applayer%2Ftango
- Install plan: https://forgeregistry.com/api/v1/packages/io.applayer%2Ftango/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/io.applayer%2Ftango
- HTML page: https://forgeregistry.com/registry/io.applayer%2Ftango
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
