NetLicensing for AI agents

NetLicensing is a license management platform for administering products, license models, and licensees for software vendors selling desktop or SaaS products. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

Developer toolsAPI keyMCP + RESTnetlicensing.io
AUDIT LOG · NETLICENSINGPOLICY: acme-support
09:41:07 · claude · u_8f2read
netlicensing.list_resources
List Resources✓ allowed · 212ms
09:41:08 · claude · u_8f2read
netlicensing.get_resource
Get Resource✓ allowed · 164ms
09:41:09 · claude · u_8f2write
netlicensing.create_bundle
Create Bundle✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
netlicensing.delete_resource
Delete Resource✕ blocked · policy: deny
EVERY NETLICENSING CALL, ON THE RECORD
01 · USE CASES

What agents do in NetLicensing.

01

Validate a licensee's access

Validate a licensee's license to confirm active access before granting them a paid feature.

02

List licenses for a product

List the resources under a product to check current license issuance, read-only.

03

Approve before transferring licenses

Require approval before transferring licenses between licensees, since it changes who holds access.

02 · ACTIONS

21 NetLicensing actions, graded by risk.

Every NetLicensing action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

6

Look things up. Allowed by default.

  • netlicensing.get_resource
    Get Resource
  • netlicensing.list_resources
    List Resources
  • netlicensing.list_licensing_options
    List Licensing Options
  • netlicensing.validate_licensee
    Validate Licensee
  • netlicensing.check_in_licensee_session
    Check In Licensee Session
  • netlicensing.check_out_licensee_session
    Check Out Licensee Session

write

14

Create and change things. Allow, or ask the user first.

  • netlicensing.create_bundle
    Create Bundle
  • netlicensing.update_bundle
    Update Bundle
  • netlicensing.create_license
    Create License
  • netlicensing.create_product
    Create Product
  • netlicensing.update_license
    Update License
  • netlicensing.update_product
    Update Product
  • netlicensing.create_licensee
    Create Licensee
  • netlicensing.update_licensee
    Update Licensee
  • netlicensing.create_product_module
    Create Product Module
  • netlicensing.update_product_module
    Update Product Module
  • netlicensing.create_license_template
    Create License Template
  • netlicensing.update_license_template
    Update License Template
  • netlicensing.create_licenses_from_bundle
    Create Licenses From Bundle
  • netlicensing.transfer_licenses
    Transfer Licenses

destructive

1

Delete, cancel or archive. Ask first, or deny outright.

  • netlicensing.delete_resource
    Delete Resource
03 · HOW IT WORKS

NetLicensing in three steps.

  1. 01Your users connect NetLicensingThey add their NetLicensing api key on Arc0 Connect, under your brand. It goes straight into the vault.
  2. 02You set the rulesReads run, writes like “create Bundle” can wait for the user, and “delete Resource” can be denied outright.
  3. 03Any agent can actYour agent calls NetLicensing through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('netlicensing', {
  read: 'allow',
  write: 'ask',        // create_bundle
  destructive: 'deny',  // delete_resource
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How NetLicensing connects.

Users add their NetLicensing api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.

The same NetLicensing connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
API key
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use NetLicensing from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

NetLicensing and Arc0, answered.

Q01

Can I use NetLicensing with Claude, ChatGPT or Cursor?

Yes. Connect NetLicensing to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the NetLicensing actions you allow.

Q02

How do users connect NetLicensing?

Users add their NetLicensing api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.

Q03

Which NetLicensing actions can my agent take?

21 in total: 6 read, 14 write and 1 destructive, such as “create Bundle”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in NetLicensing?

Yes. Actions like “delete Resource” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call NetLicensing too?

Yes. The same NetLicensing connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug NetLicensing into your agent.

Your users connect NetLicensing once, under your brand. Your agent gets 21 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan