Solwyn

ai.solwynPublished by solwyn.aiv0.5.1Updated Nov 6, 2026

Check budgets before AI spend, record what your code spends and read Solwyn costs.

VerifiedSTDIODesktop onlyFinanceSecurity & MonitoringAI & ML

Overview

AI-generated overview

Solwyn lets an assistant check AI budgets before spend, record calls, and read project costs, forecasts, alerts and plan data.

What you can do
  • Check and reserve budget before a spend, then confirm or record the completed call
  • Read budget status, budget rules, project status and month-to-date forecasts
  • Read costs, cost totals, baselines, drift, unit economics, cost events and simulate repricing
  • Inspect agent runs, provider failovers, untracked surfaces and priced models
  • Read alerts, delivery receipts, audit events, plan limits and plan-change previews
  • Read account identity, phone consent state, team members and open invitations
When to use it
Useful when an assistant or agent makes paid model or media calls and you want spend gated by budget rules and attributed to a project. Also fits teams that need to review AI costs, forecasts, alerts and plan limits from the assistant.
Requirements
Runs locally over stdio via uvx from the solwyn-cli PyPI package, on desktop only. Needs a Solwyn account; authenticate with a Solwyn login or set the SOLWYN_API_KEY project API key, which can be omitted to use the existing keychain credential. Some tools, such as project listing, account overview, audit events and team data, require a login rather than a project key.
Before you install
The SOLWYN_API_KEY secret grants access to the selected project's budget and cost data. Budget check creates reservations and budget confirm settles them, so repeated or replayed checks can hold budget; the server warns not to replay ambiguous checks. Recording and confirmation write attribution data to Solwyn, and cost, usage and identity data is sent to the Solwyn service. Plan previews and simulations are read-only and do not bill.

Installation

In SourceWeft

  1. Open Solwyn in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Tools

37

budget_status

Read budget status

Use `solwyn --json budget status` for polling. It is a pure read and does not hold budget. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersproject

budget_check

Check and reserve budget

Reserve budget only immediately before the caller-made spend. Denial is a successful decision with allowed=false, not an execution error. Denials record attribution by default; no_record skips ingest. Never automatically replay an ambiguous check: each invocation can create a new reservation. Use `solwyn budget check` followed by `solwyn budget confirm` only around a specific un-instrumented provider spend that you make yourself. Never wrap SDK-instrumented code with `budget check` or `budget confirm`; the Solwyn SDK already reserves and confirms that spend. Fail-open is explicit: when a check returns `allowed=true` and `reservation_id=null`, skip confirm. Do not create repeated unconfirmed checks. They temporarily hold budget and can cause self-denial. Requires a write-scoped project API key; writes use its project, not the selected read project.

Parameterstagsmodelrequiredqualityproviderrequiredno_recordresolutionimage_countagent_run_idis_estimatedaudio_secondsvideo_secondsfallback_models+5 more

budget_confirm

Confirm usage and record attribution

Settle a non-null reservation after caller-made spend using observed token/media usage and actual served provider/model. Records attribution with the same call_id and attempt_index; no_record skips ingest. Recording failure does not undo settlement. Save the FIRST recording_retry event. After known settlement success, use only record_only=FIRST event to retry ingest; this reports settlement=not_submitted. After a lost 204, within Core's project-bound 3600-second receipt window replay identical settlement inputs with no_record=true. After a known 204, submit only record_only=FIRST event; never replace it with the replay's unused new event. Ordinary fresh-confirm replay regenerates timestamp/SDK identity and rereads ambient tags. An event never returned cannot be reconstructed. The receipt cannot correct successful settlement. Missing-media 422 permits corrected quantities under the retained funding ID; never reserve again for completed provider work. Use `solwyn budget check` followed by `solwyn budget confirm` only around a specific un-instrumented provider spend that you make yourself. Never wrap SDK-instrumented code with `budget check` or `budget confirm`; the Solwyn SDK already reserves and confirms that spend. Fail-open is explicit: when a check returns `allowed=true` and `reservation_id=null`, skip confirm. Do not create repeated unconfirmed checks. They temporarily hold budget and can cause self-denial. Requires a write-scoped project API key; writes use its project, not the selected read project.

Parameterstagsmodelstatuscall_idmodalityproviderrun_nameno_recordlatency_msmedia_usagerecord_onlyagent_run_id+20 more

get_project_status

Read project health

Read the configured project's budget and provider health without authorizing spend. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersproject

get_forecast

Read spend forecast

Read the configured project's month-to-date spend forecast without authorizing spend. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersproject

get_costs

Read grouped costs

Read project costs grouped by a Core dimension or tag:<key>, or account costs grouped by project by default. Shared filters/custom windows apply; account mode permits only model/provider/modality and window filters. Project mode accepts a project key or a Solwyn login; account=true requires a Solwyn login and is mutually exclusive with an explicit project. Account filters are restricted by Core.

Parameterstotagfrom_modelstatusaccountprojectgroup_bymodalityprovideragent_runtime_range+5 more

list_projects

List account projects

List projects visible to the logged-in user. Requires a Solwyn login. Requires a Solwyn login.

Takes no parameters.

get_cost_total

Read cost total

Read uncapped project cost totals with the same cost filters and custom windows as get_costs. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterstotagfrom_modelstatusprojectmodalityprovideragent_runtime_rangeservice_tiermodel_fallback+3 more

list_budget_rules

List budget rules

Read budget rule conditions, routing, and separate paused/snoozed states. A snoozed hard_deny still denies; pausing releases enforcement. Rule keys change when keyed fields are edited. Project keys or a Solwyn login can list rules; with_last_fired=true requires a Solwyn login for the account latest-events read.

Parametersprojectwith_last_fired

record_call

Record completed call attribution

Record one caller-owned completed call without reserving or settling budget, including a record-only retry after known settlement success. Do not duplicate SDK events. Persist call_id before sending and reuse it with unchanged payload and attempt_index=0 on retries; omission generates a new ID per call. Core deduplicates the project/call_id/attempt_index identity while retained; this is not an update mechanism. Costs are server-priced. Inspect status, rejected and duplicates even when transport succeeds. Requires a write-scoped project API key; writes use its project, not the selected read project.

Parameterstagsmodelrequiredstatuscall_idmodalityproviderrequiredlatency_msmedia_usageagent_run_idinput_tokensservice_tieroutput_tokens+4 more

list_tags

List attribution tag keys

List account-scoped tag discovery through a project. Team required; keys preserve whitespace and case. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersproject

list_tag_values

List attribution tag values

Read one page of account-scoped values for a verbatim tag key. Team required; prefix is case-sensitive. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterskeyrequiredlimitcursorprefixproject

list_agent_runs

List agent runs

List project agent runs. Costs are lifetime totals; the window only selects which runs qualify. Accepts a project key or login. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterssortlimitquerycursorparentprojectto_timefrom_timetime_range

get_agent_run

Read agent run

Read one agent run by storage ID or exact raw run name. Accepts a project key or login. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersrunrequiredproject

list_alert_events

Read alert history

Read cursor-paginated alert history and per-channel delivery receipts. Project keys work for project history; account history requires a Solwyn login. failed_only filters partial/failed rollups locally; scope is the rule scope. No mutation tools are exposed. Project history accepts a project key or a Solwyn login; account=true reads account-scope history, requires a Solwyn login and ignores project. Use list_alert_activity for all projects plus account scope.

Parameterstofrom_scopecursoraccountprojectall_pagesrule_typetime_rangefailed_only

budget_check_batch

Check or recover a bounded batch

Submit 1–32 checks once to Core's durable batch journal. Retain a caller-prepared UUIDv7 operation_id before calling so an entirely lost MCP reply is recoverable. Omission generates an ID returned when a reply can be delivered. recover_only with that ID performs GET only: no admission, recording, resumption or renewed reservation authority. Indexed completed, failed, unknown and unattempted outcomes remain distinct; reservations expire at their original checked_at + 300 seconds and journal IDs expire after 24 hours. Never replay an unknown outcome or unattempted suffix automatically, or replace an ID to evade conflicts/expiry. Denials are successful decisions and record attribution unless no_record; retain each recording_retry payload for explicit record_only retry, which only ingests that identical event. Settlement remains separate. All calls share a fixed 30-second work deadline, 1 MiB HTTP response budget and 2 MiB result limit. An admitted request may remain effective after cancellation. Requires a project API key. Submission and record_only require write scope; recover_only GET accepts read-only scope. Uses the key's project, not the selected read project.

Parameterschecksno_recordrecord_onlyoperation_idrecover_onlyestimated_output_tokens

get_overview

Read account overview

Read calendar-month account spend, requests, trend, savings, and free-tier quota metadata. Requires a Solwyn login. Requires a Solwyn login.

Takes no parameters.

list_cost_events

List cost events

Read cursor-paginated cost events with shared filters and bounded all_pages. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterstotagfrom_limitmodelcursorstatusprojectmodalityprovideragent_runall_pages+6 more

get_cost_baseline

Get cost baseline

Read committed daily spend baseline excluding today. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersdaysproject

get_unit_economics

Get unit economics

Read unit-cost metrics and optional server-inferred causes. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterscauseprojectvs_prevtime_range

get_cost_drift

Get cost drift

Compare historical stored spend and estimates with coverage and caveats. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterstofrom_projecttime_range

list_priced_models

List priced models

List exact available priced targets and current pricing version. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersproject

simulate_costs

Simulate costs

Read-only historical repricing; never reserves or bills. 429: one bounded retry. No 503/transport replay. Accepts a Solwyn login or a project API key with access to the selected project.

Parameterstofrom_modelrequiredregionprojectproviderrequiredtime_rangeservice_tier

list_provider_failovers

List provider failovers

Read recent provider/model failover groups, capped by Core at 50 groups. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersprojecttime_range

list_untracked_surfaces

List untracked surfaces

Read untracked surfaces with effective retention window, capped by Core at 25 observations. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersprojecttime_range

list_audit_events

List audit events

Read account audit events newest first with exact action filters and bounded pagination. Requires a Solwyn login.

Parametersactioncursorall_pagestime_range

plan_status

Plan status

Read current plan limits, capabilities and subscription lifecycle state. Accepts a Solwyn login or a project key with account context; no project selection is required.

Takes no parameters.

plan_catalog

Plan catalog

Read plan catalog: prices in cents, currency, included requests, decimal cent overage, limits and capabilities. Accepts a Solwyn login or project keys with authenticated user context; no project selection is required.

Takes no parameters.

get_whoami

Get whoami

Read account identity and email verification; project keys return local key context without a user identity. A Solwyn login reads user/account/project identity; project keys return only local auth and selected-project context without revealing the key.

Takes no parameters.

get_account_phone

Get account phone

Read user phone verification and SMS consent state. Verification and consent writes stay in the dashboard. Requires a Solwyn login.

Takes no parameters.

list_alert_activity

List alert activity

Read account-wide activity across all projects plus account scope with delivery receipts. Requires a Solwyn login.

Parameterscursorall_pagesevent_typetime_range

list_open_alert_deliveries

List open alert deliveries

Read pending/retrying deliveries and attempts regardless of event retention. Requires a Solwyn login.

Parameterscursorall_pages

budget_uncounted

Budget uncounted

Read advisory unpriced upper-bound offline traffic, possibly overcounted. A 503 means unknown; retry the read, never assume zero or no past traffic. Accepts a Solwyn login or a project API key with access to the selected project.

Parametersproject

get_account_alert

Get account alert

Read account spend alert configuration, optionally latest firing and lifecycle history within Core’s 30d retention window. Requires a Solwyn login.

Parameterswith_last_fired

plan_preview

Plan preview

Read a plan-change estimate: immediate proration or scheduling at term end, integer cents, currency and line periods. Never changes a subscription or bills; not a price lock. No 503/transport replay. Requires a Solwyn login at any account role; no selected project required.

Parameterstierrequiredintervalrequired

list_team_members

List team members

Read the complete active account roster in join order. Any account member may read it; no project selection is required. Requires a Solwyn login.

Takes no parameters.

list_team_invites

List team invites

Read all open account invitations and their delivery status, including expired invitations. Core requires owner/admin role; no project selection is required. Requires a Solwyn login.

Takes no parameters.

Version history

4
  1. v0.5.1LatestNov 6, 2026
  2. v0.5.0Nov 5, 2026
  3. v0.4.3Nov 3, 2026
  4. v0.4.0Nov 1, 2026

Score

55% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts

    Publish an icon in the registry entry.

  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • License10 pts

    Declare a license in the repository or the registry entry.