Arte SheetsLearn. Try. Understand.

Spreadsheet Governance & Connected Workflows

Audit In-App AI Credits vs MCP Connector Rate Limits

Separate metered monthly in-app Pro Assistant Arte AI credits from 0-credit external OAuth MCP tool calls, shared 120-call/min account burst limits, and Pro write gates.

Never mix metered in-app Arte AI credits with external OAuth MCP connector calls!

Teams auditing collaborative cloud workbooks in Arte Sheets must keep two distinct metering and entitlement boundaries crystal-clear. First, the in-app Pro Assistant (text prompts, bounded WebRTC voice sessions up to 3 minutes, and safe non-executing .xlsx/.csv/.tsv/.txt excerpts up to 2 MB) runs Arte-hosted model inference and deducts metered monthly Arte AI credits (such as a 2,000-credit monthly Pro grant) when requests are sent. Second, scoped external OAuth MCP connectors managed in Profile -> Connected apps (note: the Arte Sheets ChatGPT plugin 0.1.0 is currently In review / Not published, and ChatGPT plan credits never transfer into Arte Sheets) deduct 0 Arte AI credits on ordinary MCP tool calls so users are never double-charged for host inference — while still requiring an active Pro entitlement (or canceled-but-paid active billing period) plus workbook role permissions for mutations (apply_changes, execute_steps, add_comment, resolve_comment, share_workbook, manage_public_link) and enforcing one shared 120-calls/minute burst limiter (429 Retry-After: 60) across ALL connected OAuth clients on the same account!

Build a 5-channel usage audit table FIRST: InApp_Formula_Hint (B2 = "InApp_Assistant", C2 = 30 monthly requests, D2 = 2 peak calls/min, E2 = 1 credit/req), InApp_Voice_Brief (B3 = "InApp_Assistant", C3 = 5 sessions, D3 = 1 call/min, E3 = 3 credits/session), ClientA_ReadRange (B4 = "MCP_Read", C4 = 400 calls, D4 = 50 calls/min, E4 = 0), ClientA_ApplyChanges (B5 = "MCP_Write", C5 = 120 calls, D5 = 20 calls/min, E5 = 0), and ClientB_ExecuteSteps (B6 = "MCP_Write", C6 = 80 calls, D6 = 15 calls/min, E6 = 0). With Monthly_Pro_Grant = 2,000 (H2), Account_MCP_Limit = 120/min (H3), and Active_Pro_Or_Paid_Period = 1 (H4): monthly Arte AI credits consumed equal 30 + 15 = 45 (leaving 1,955 credits; 600 MCP calls consume 0!), and combined MCP burst across Client A + Client B equals 50 + 20 + 15 = 85 calls/min (within 120/min!).

Audit BoundaryArte AI Credit ImpactEntitlement & Rate-Limit Rule
In-App Pro Assistant (Text / <=3m Voice / <=2MB File)Consumes metered monthly Arte AI credits (45 used -> 1,955 left)Requires active Pro; preview/Undo/suggest-mode supported
External OAuth MCP Read (list_workbooks, read_range, list_lessons)0 Arte AI credits (discovery metadata uncharged)Scoped OAuth (Connected apps); shares 120 calls/min account cap
External OAuth MCP Write (apply_changes, execute_steps, comments, share)0 Arte AI credits (no double-charge; ChatGPT credits do not transfer)Requires active Pro/paid period + role + base revision + operation_id

Row-Safe Monthly Arte AI Credit Consumption & Remaining Balance Formula

Gate row credit math explicitly on B2 = "InApp_Assistant" so even if a teammate mistakenly types a positive weight next to an MCP connector row, external OAuth tool calls never falsify your monthly Arte AI credit burn!

=IF(H2 < 0, "Invalid Audit Config", MAX(0, H2 - SUM(F2:F6)))

Shared Per-Account 120/min MCP Burst & Pro Write-Entitlement Gate Formula

Rotating OAuth tokens or splitting traffic across two connected apps does NOT reset the per-account 120/min limiter! Test D4 = 90 (burst = 125 > 120 -> "429 Retry-After: 60") and H4 = 0 ("Write Blocked: Active Pro Required") before accepting a team ops template.

=IF(OR(H3 <= 0, AND(H4 <> 0, H4 <> 1)), "Invalid Audit Config", IF(H8 > H3, "429 Retry-After: 60", IF(AND(H4 = 0, SUMIFS(D2:D6, B2:B6, "MCP_Write") > 0), "Write Blocked: Active Pro Required", "Within 120/min & Entitled")))

Try the example

Use the original values or change them to test your understanding.

Further reading