ta-studio-mcp 1.2.2 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +23 -65
  2. package/dist/index.js +1 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -1,80 +1,38 @@
1
- # ta-studio-mcp 🚀
1
+ # ta-studio-mcp
2
2
 
3
- **The definitive domain knowledge layer for AI agents building mobile test automation at TA Studio.**
3
+ The definitive domain knowledge layer for AI agents building mobile test automation at TA Studio.
4
4
 
5
- AI agents often struggle with project-specific context, unique navigation patterns, and "tribal knowledge" about past bugs. `ta-studio-mcp` solves this by giving your agent (Claude, Cursor, Windsurf) structured, programmatic access to the team's methodologies, codebase maps, and verified bug fixes.
5
+ ta-studio-mcp provides structured access to methodologies, codebase maps, and verified bug fixes.
6
6
 
7
- ---
7
+ ## Quick Start
8
8
 
9
- ## ⚡ Quick Start
10
-
11
- ```bash
12
9
  npx ta-studio-mcp
13
- ```
14
-
15
- ---
16
-
17
- ## 🧠 Expert Knowledge & Deep Technical Lore
18
-
19
- This section documents the state-of-the-art implementations used by the TA Studio team.
20
-
21
- ### 1. Set-of-Mark (SoM) Screenshot Annotation
22
- Based on OmniParser's SoM approach, we use color-coded, type-aware bounding boxes to provide visual anchors.
23
- - **Type-Aware Palette**: 9 distinct colors (e.g., **Dodger Blue** for buttons, **Orange** for inputs).
24
- - **PIL Threading**: `asyncio.to_thread(_draw_bounding_boxes_threaded)` for non-blocking UI drawing.
25
- - **TOON Optimization**: **Token Optimized Object Notation** reduces prompt tokens by 40% by stripping redundant XML.
26
-
27
- ### 2. Deep Subagent Handoff Protocol
28
- Our "Deep Agent Pattern" orchestrates specialized specialists via a strict chain of custody:
29
- 1. **Perceptor** (`Screen Classifier`): Returns structured state and **TOON** elements.
30
- 2. **Planner** (`Device Agent`): Proposes action.
31
- 3. **Guardrail** (`Action Verifier`): Applies **Boolean Verification** (Safe/Relevant/Executable).
32
- 4. **Doctor** (`Failure Diagnosis`): Categorizes failures and suggests recovery (Jitter/Wait/Backtrack).
33
10
 
34
- ### 3. Boolean Verification vs. Numerical Scoring
35
- We reject "confidence scores" (e.g. 0.85). Every action must pass three binary checks:
36
- - **is_safe**: No data loss or unauthorized access?
37
- - **is_relevant**: Moves toward task goal?
38
- - **is_executable**: Target is reachable?
39
- **Logic**: Action executes ONLY if ALL checks are YES.
11
+ ## Expert Knowledge
40
12
 
41
- ### 4. Real-Time HUD & Parallel Execution
42
- - **Observation**: `<200ms` lag via `on_step` async callbacks that emit SSE events.
43
- - **Concurrency**: `asyncio.Semaphore` and per-simulation `asyncio.Lock` manage multiple parallel device streams without resource collision.
13
+ ### 1. Set-of-Mark (SoM) Annotation
14
+ Using color-coded bounding boxes for visual anchors.
15
+ - PIL Threading for non-blocking UI drawing.
16
+ - TOON Optimization for 40% token reduction.
44
17
 
45
- ### 5. Model Tiering (2026 Standard)
46
- - **Thinking Tier (GPT-5.2)**: Orchestration & complex visual reasoning. reasoning effort: `high`.
47
- - **Core Tier (GPT-5-mini)**: Specialist subagents. *Never use nano for classification.*
48
- - **Utility Tier (GPT-5-nano)**: MCP formatting and distillation.
18
+ ### 2. Deep Subagent Handoff
19
+ Orchestrating specialists: Screen Classifier -> Device Agent -> Action Verifier -> Failure Diagnosis.
49
20
 
50
- ---
21
+ ### 3. Boolean Verification
22
+ Every action must pass three binary checks: is_safe, is_relevant, and is_executable.
51
23
 
52
- ## 🐞 Critical Bug Fixes (The "Expert" List)
24
+ ### 4. Real-Time HUD
25
+ - <200ms lag via async callbacks.
26
+ - Parallel execution using asyncio.Semaphore.
53
27
 
54
- | Severity | Issue | Root Cause & Expert Fix |
55
- |----------|-------|-------------------------|
56
- | **CRITICAL** | Bbox Misalignment | **RC**: 45% Scaling Delta. **Fix**: Apply `img_width / native_width`. |
57
- | **CRITICAL** | Async to_thread | **RC**: Core async vs Coroutine. **Fix**: Remove `async` from `to_thread` targets. |
58
- | **CRITICAL** | Race Condition | **RC**: Parallel sessions. **Fix**: `parallel_tool_calls=False`. |
59
- | **HIGH** | Simulation Leak | **RC**: Memory persistence. **Fix**: 24h/100-run auto-purge + `asyncio.Lock`. |
60
- | **HIGH** | Mobile MCP Bug | **RC**: Offline device fail. **Fix**: Full ADB bridge fallback (screencap/uiautomator). |
28
+ ### 5. Model Tiering
29
+ - GPT-5.2: Orchestration.
30
+ - GPT-5-mini: Specialists.
31
+ - GPT-5-nano: Formatting.
61
32
 
62
- ---
33
+ ## Installation
63
34
 
64
- ## 🔄 Core Workflows
65
-
66
- ### The Ralph Loop (Closed-Loop Verification)
67
- 1. **CODE** → **LINT** → **UNIT TEST** → **CHECK ASYNC** → **VERIFY HUD**.
68
-
69
- ---
70
-
71
- ## 📦 Installation & Setup
72
-
73
- ```bash
74
35
  claude mcp add ta-studio -- npx -y ta-studio-mcp@latest
75
- ```
76
-
77
- ---
78
36
 
79
- ## 📜 License
80
- MIT © 2026 TA Studios.
37
+ ## License
38
+ MIT (c) 2026 TA Studios.
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
14
14
  import { registerAllTools } from './tools/register-all.js';
15
15
  const server = new McpServer({
16
16
  name: 'ta-studio-mcp',
17
- version: '1.2.2',
17
+ version: '1.2.3',
18
18
  }, {
19
19
  capabilities: {
20
20
  logging: {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ta-studio-mcp",
3
- "version": "1.2.2",
3
+ "version": "1.2.3",
4
4
  "description": "TA Studio MCP — Domain knowledge, patterns, bug fixes, and workflows for AI agents working on the TA Studio mobile test automation platform.",
5
5
  "type": "module",
6
6
  "bin": {