ModelsLab Agent Control Plane
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Account, billing, team, API key and model discovery tools for agents that use ModelsLab.
| Author | io.github.ModelsLab |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 219 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"ModelsLab Agent Control Plane": {
"url": "https://modelslab.com/mcp/agents",
"transport": "streamable-http"
}
}
}
Measured tools (10)
agent-authManage authentication for the ModelsLab agent control plane. Actions: signup, login, logout, logout-all, forgot-password, reset-password, resend-verification, verify. Login returns a bearer token for subsequent authenticated requests. Signup, login, forgot-password, reset-password, resend-verification, and verify do not require authentication.
Parameters:
action(required) — string — The auth action to perform: signup, login, logout, logout-all, forgot-password, reset-password, resend-verification, verifyname— string — User name (optional for signup)email— string — Email address (required for signup, login, forgot-password, reset-password, resend-verification)token— string — Reset token (required for reset-password)password— string — Password (required for signup, login, reset-password)device_name— string — Device name for the token (optional for login, default: "agent-control-plane")token_expiry— string — Token expiry: 1_week, 1_month (default), 3_months, never (optional for login)verification_code— string — Email verification code (required for verify)password_confirmation— string — Password confirmation (required for reset-password)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-tokensManage Sanctum access tokens for the authenticated user. Actions: list (view all tokens), revoke (revoke a specific token by ID), revoke-others (revoke all tokens except current), switch-account (get a token for a team account). All actions require authentication.
Parameters:
action(required) — string — The token action: list, revoke, revoke-others, switch-accounttoken_id— integer — Token ID to revoke (required for revoke action)device_name— string — Device name for new token (optional for switch-account)token_expiry— string — Token expiry: 1_week, 1_month, 3_months, never (optional for switch-account)account_username— string — Username of the team account to switch to (required for switch-account)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-profileManage the authenticated user's profile. Actions: get (view profile), update (update name/username/about), update-password, update-socials, update-preferences. All actions require authentication.
Parameters:
action(required) — string — The profile action: get, update, update-password, update-socials, update-preferencesname— string — Display name (for update)github— string — GitHub URL (for update-socials)discord— string — Discord handle (for update-socials)twitter— string — Twitter/X URL (for update-socials)about_me— string — Bio/about text (for update)facebook— string — Facebook URL (for update-socials)password— string — New password (required for update-password)username— string — Username (for update)instagram— string — Instagram URL (for update-socials)nsfw_content— boolean — Enable NSFW content (for update-preferences)current_password— string — Current password (required for update-password)password_confirmation— string — New password confirmation (required for update-password)wallet_notification_enabled— boolean — Enable wallet notifications (for update-preferences)wallet_notification_threshold— number — Wallet notification threshold amount (for update-preferences)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-api-keysManage API keys for the authenticated user. Actions: list, create, get, update, delete. API keys are used for generation endpoints (/api/v6, /api/v7, /api/v8). All actions require authentication.
Parameters:
action(required) — string — The API key action: list, create, get, update, deletename— string — API key name (required for create, optional for update)notes— string — Notes about the API key (optional for create, update)key_id— integer — API key ID (required for get, update, delete)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-usageread-onlyView API usage analytics for the authenticated user. Actions: summary (usage overview with plan limits), products (per-product usage breakdown), history (recent generation request timeline with optional date filters). All actions require authentication.
Parameters:
action(required) — string — The usage action: summary, products, historyto— string — End date for history filter (YYYY-MM-DD format, optional for history)from— string — Start date for history filter (YYYY-MM-DD format, optional for history)limit— integer — Max number of history items to return (1-200, default 100, optional for history)
Hints: read-only yes · destructive not declared · idempotent not declared · open-world not declared
agent-modelsread-onlySearch and discover AI models available on ModelsLab. Actions: search (browse/filter models), filters (available filter options), tags (model tags), providers (model providers), detail (get model details by ID). The detail action returns endpoint configurations with a `parameters` JSON Schema object describing each endpoint's accepted parameters (types, constraints, defaults) alongside the raw UI `config` array. Requires authentication.
Parameters:
action(required) — string — The models action: search, filters, tags, providers, detailsort— string — Sort order: recommended, newest, popular (for search, default: recommended)tags— string — Comma-separated tags to filter by (for search)search— string — Search query for model name/description (for search)feature— string — Filter by feature: imagen, video_fusion, audio_gen, llmaster, etc. (for search, tags)model_id— string — Model ID (required for detail action)per_page— integer — Results per page (for search, default: 20)provider— string — Filter by provider name (for search)base_model— string — Filter by base model (for search)model_type— string — Filter by model type (for search)model_subcategory— string — Filter by model subcategory (for search)
Hints: read-only yes · destructive not declared · idempotent not declared · open-world not declared
agent-billingManage billing for the authenticated user. Actions: stripe-config (get Stripe publishable key for headless card tokenization), create-setup-intent (create SetupIntent for 3DS-safe card saving), create-payment-link (generate Stripe-hosted payment URL to forward to human — supports card, Google Pay, Amazon Pay, Link, etc.), overview, payment-methods, add-payment-method, set-default-payment-method, remove-payment-method, billing-info, update-billing-info, invoices, invoice-detail, invoice-pdf. Three payment paths: (1) Headless: stripe-config → tokenize → payment_method_id, (2) Human-assisted: create-payment-link → forward URL → poll confirm-checkout, (3) SetupIntent: create-setup-intent → confirm via Stripe → reuse payment method. All actions require authentication.
Parameters:
action(required) — string — The billing action: stripe-config, create-setup-intent, create-payment-link, overview, payment-methods, add-payment-method, set-default-payment-method, remove-payment-method, billing-info, update-billing-info, invoices, invoice-detail, invoice-pdfname— string — Billing name (for update-billing-info)email— string — Billing email (for update-billing-info)amount— number — Amount in USD, minimum $15 (required for create-payment-link with purpose=fund)tax_id— string — Tax ID value (for update-billing-info)plan_id— integer — Plan ID (required for create-payment-link with purpose=subscribe)purpose— string — Payment link purpose: "fund" (wallet) or "subscribe" (subscription). Required for create-payment-link.invoice_id— string — Invoice ID (for invoice-detail, invoice-pdf)tax_id_type— string — Tax ID type e.g. eu_vat, us_ein (required with tax_id)address_city— string — City (for update-billing-info)make_default— boolean — Make the new payment method the default (for add-payment-method, default: true)address_line1— string — Address line 1 (for update-billing-info)address_line2— string — Address line 2 (for update-billing-info)address_state— string — State/province (for update-billing-info)address_country— string — Country code (for update-billing-info)idempotency_key— string — Idempotency key for mutation actions (optional — auto-generated if omitted for add-payment-method, update-billing-info)payment_method_id— string — Stripe payment method ID (for add/set-default/remove-payment-method)address_postal_code— string — Postal/zip code (for update-billing-info)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-walletManage the wallet for the authenticated user. Actions: balance (view wallet balance), fund (add funds via Stripe payment), confirm-checkout (confirm a Stripe checkout session), payment-status (check payment intent status), auto-funding (configure auto-recharge), disable-auto-funding, withdraw (reseller only), validate-coupon, redeem-coupon. Fund with payment_method_id charges immediately; without it creates a Stripe checkout session. All actions require authentication.
Parameters:
action(required) — string — The wallet action: balance, fund, confirm-checkout, payment-status, auto-funding, disable-auto-funding, withdraw, validate-coupon, redeem-couponamount— number — Amount in USD, minimum $15 for fund (required for fund, withdraw)session_id— string — Stripe checkout session ID (required for confirm-checkout)coupon_code— string — Coupon code (required for validate-coupon, redeem-coupon)idempotency_key— string — Idempotency key for mutation actions (optional — auto-generated if omitted for fund, auto-funding, redeem-coupon)purchase_amount— number — Purchase amount for bonus coupons (optional for validate-coupon, required for bonus coupon redeem)charge_threshold— number — Balance threshold to trigger auto charge, min $1 (required for auto-funding)payment_intent_id— string — Stripe payment intent ID (required for payment-status)payment_method_id— string — Stripe payment method ID (optional for fund — charges immediately if provided, otherwise creates checkout session; required for bonus coupon redeem)auto_charge_amount— number — Auto charge amount, min $5 (required for auto-funding)auto_recharge_amount— number — Auto recharge amount (optional for fund)auto_recharge_threshold— number — Auto recharge threshold (optional for fund)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-subscriptionsManage subscriptions for the authenticated user. Actions: list-plans (view available subscription plans + pay-as-you-go options), list, create (headless with payment_method_id, or checkout URL without it), confirm-checkout (confirm Stripe checkout session), status (check subscription status), update (change plan), pause, resume, reset-cycle, charge-amount (set paid model charge amount), fix-payment. Headless flow: get publishable key via agent-billing stripe-config → tokenize card via Stripe API → pass payment_method_id to create. All actions require authentication.
Parameters:
action(required) — string — The subscription action: list-plans, list, create, confirm-checkout, status, update, pause, resume, reset-cycle, charge-amount, fix-paymentamount— number — Charge amount in USD, $5-$10000 (required for charge-amount)plan_id— integer — Plan ID to subscribe to (required for create)session_id— string — Stripe checkout session ID (required for confirm-checkout)new_plan_id— integer — New plan ID to switch to (required for update)plan_category— string — Plan category: "enterprise", or "imagen" for the standard ModelsLab subscription (optional for fix-payment; defaults to the subscription's own category)idempotency_key— string — Idempotency key for mutation actions (optional — auto-generated if omitted for create)subscription_id— integer — Subscription ID (required for update, pause, resume, reset-cycle, fix-payment)payment_method_id— string — Stripe payment method ID for headless subscription (optional for create — if provided, charges immediately without checkout redirect)stripe_subscription_id— string — Stripe subscription ID (optional override for fix-payment)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
agent-teamsManage teams for the authenticated user. Actions: list (view team members and pending invites), create (invite by email), get (view a team member), update (modify member role/permissions), delete (remove member), resend-invite, accept-invite. All actions require authentication.
Parameters:
action(required) — string — The teams action: list, create, get, update, delete, resend-invite, accept-inviterole— string — Member role (for update)email— string — Email address to invite (required for create)invite_id— string — Invite UUID (required for accept-invite)member_id— integer — Team member ID (required for get, update, delete, resend-invite)permissions— array — Permissions array (for update)invite_status— string — Invite status: pending, accepted (for update)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.