Labs64/NetLicensing-MCP
The official NetLicensing MCP Server is a natural language interface that enables agentic applications to manage the full software licensing lifecycle in Labs64 NetLicensing 👉🏼 without writing a single API call.
README
NetLicensing MCP Server
<!-- mcp-name: io.github.Labs64/netlicensing-mcp -->
The official Labs64 NetLicensing MCP Server — a natural language interface that lets AI agents manage software licenses, customers, and entitlements through conversational commands.
Works with Claude Desktop, GitHub Copilot (Agent mode), VS Code, JetBrains / IntelliJ IDEA, and any other MCP-compatible client.
Why use this?
- Natural Language Licensing — Ask your AI assistant to create products, issue licenses, validate entitlements, and generate shop URLs without touching the NetLicensing UI or writing API calls.
- Full API coverage — Various tools spanning the entire NetLicensing REST API: products, modules, templates, licensees, licenses, bundles, tokens, transactions, and payment methods.
- Built-in audit prompts — Five ready-to-run prompt templates for account audits, expiry sweeps, anomaly detection, and cleanup workflows.
- Safe by default — All delete operations expose a
force_cascadeoption; nothing is silently cascaded. - Zero-dependency quick start — Run with
uvxor Docker without a local Python install.
What can you ask?
Once connected, you can talk to NetLicensing in plain language:
- "List all products in my NetLicensing account."
- "Create a new licensee for customer@example.com under product PTEST."
- "Validate the license for licensee L001 — does it pass?"
- "Generate a shop URL for licensee L001 so they can self-serve their renewal."
- "Which licenses are expiring in the next 30 days?"
- "Find any licensees with no active licenses — flag them for cleanup."
- "Transfer all licenses from licensee L001 to L002."
- "Create an API key token scoped to read-only access."
- "Show me all transactions from the last month."
Features
| Area | Tools |
|---|---|
| Products | list, get, create, update, delete |
| Product Modules | list, get, create, update, delete |
| License Templates | list, get, create, update, delete |
| Licensees | list, get, create, update, delete, validate, transfer |
| Licenses | list, get, create, update (activate/deactivate), delete |
| Bundles | list, get, create, update, delete, obtain |
| Tokens | list, get, create shop URL, create API token, revoke |
| Transactions | list, get, create, update |
| Payment Methods | list, get, update |
| Utilities | list licensing models, list license types |
| Audit Prompts | full account, single customer, expiry sweep, cleanup, anomaly detection |
| Delete Safety | force_cascade option on all delete tools |
Quick Start
Option A — uvx (no install required)
NETLICENSING_API_KEY=your_key uvx netlicensing-mcp
Option B — pip
pip install netlicensing-mcp
NETLICENSING_API_KEY=your_key netlicensing-mcp
Option C — Docker
stdio (default) — for Claude Desktop / VS Code
docker run -i --rm \
-e NETLICENSING_API_KEY=your_key \
ghcr.io/labs64/netlicensing-mcp:latest
HTTP mode — for remote/shared deployments
docker run -d -p 8000:8000 \
-e NETLICENSING_API_KEY=your_key \
ghcr.io/labs64/netlicensing-mcp:latest http
No API key? Leave
NETLICENSING_API_KEYempty to run against NetLicensing's built-in sandbox with demo credentials — no account required.
Configuration
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
NETLICENSING_API_KEY |
No | (demo mode) | NetLicensing API key. Leave empty to use sandbox demo credentials. |
NETLICENSING_BASE_URL |
No | https://go.netlicensing.io/core/v2/rest |
Override the NetLicensing REST API base URL (e.g. for on-prem deployments). |
MCP_HOST |
No | 127.0.0.1 |
Host address to bind the HTTP server (HTTP mode only). |
MCP_PORT |
No | 8000 |
Port to bind the HTTP server (HTTP mode only). |
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"netlicensing": {
"command": "uvx",
"args": ["netlicensing-mcp"],
"env": {
"NETLICENSING_API_KEY": "your_key_here"
}
}
}
}
Or use the official Docker image:
stdio (default) — for Claude Desktop / VS Code
{
"mcpServers": {
"netlicensing": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "NETLICENSING_API_KEY=your_key_here",
"ghcr.io/labs64/netlicensing-mcp:latest"
]
}
}
}
HTTP mode — for remote/shared deployments
{
"mcpServers": {
"netlicensing": {
"command": "docker",
"args": [
"run", "-d",
"-p", "8000:8000",
"-e", "NETLICENSING_API_KEY=your_key_here",
"ghcr.io/labs64/netlicensing-mcp:latest",
"http"
]
}
}
}
VS Code / GitHub Copilot
The repo ships a .vscode/mcp.json that auto-configures Copilot Agent mode.
Set NETLICENSING_API_KEY in your shell environment or a .env file, then click
Start in the editor banner that appears above mcp.json.
JetBrains / IntelliJ IDEA
In Copilot Chat → Agent mode → Tools icon → Add More Tools… — paste the same JSON block shown in the Claude Desktop section above.
Audit Prompt Templates
Five built-in prompts accessible in Copilot Agent and Claude Desktop:
| Prompt | Purpose |
|---|---|
license_audit_full |
End-to-end account audit for a product |
license_audit_customer |
Deep-dive on a single licensee |
license_audit_expiry |
Find licenses expiring within N days and generate renewal URLs |
license_audit_cleanup |
Identify inactive / orphaned licenses for cleanup |
license_audit_anomaly |
Detect unusual usage patterns across all customers |
Troubleshooting
Check MCP server logs
# macOS / Claude Desktop
tail -f ~/Library/Logs/Claude/mcp-server-netlicensing.log
# Windows
Get-Content "$env:APPDATA\Claude\Logs\mcp-server-netlicensing.log" -Wait
Run the MCP Inspector (browser UI at http://localhost:5173)
mcp dev src/netlicensing_mcp/server.py
Common issues
| Symptom | Likely cause | Fix |
|---|---|---|
401 Unauthorized responses |
Invalid or expired API key | Regenerate your key at ui.netlicensing.io |
| Server not listed in Claude | Config file JSON syntax error | Validate with python -m json.tool claude_desktop_config.json |
uvx: command not found |
uv not installed |
pip install uv or see docs.astral.sh/uv |
| Demo data instead of live data | NETLICENSING_API_KEY not set |
Ensure the env var is exported in the shell that starts the client |
Development
git clone https://github.com/Labs64/NetLicensing-MCP
cd NetLicensing-MCP
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
cp .env.example .env # add your API key
# Run the MCP Inspector
mcp dev src/netlicensing_mcp/server.py
# Run tests
pytest tests/ -v
HTTP mode (for remote / shared deployments)
python -m netlicensing_mcp.server http
# Server listens on MCP_HOST:MCP_PORT (default: 127.0.0.1:8000)
Use ngrok or a reverse proxy to expose the HTTP endpoint to remote MCP clients:
ngrok http 8000
# Then point your client at the generated HTTPS URL
Contributing
Contributions are welcome! Please open an issue or pull request on GitHub.
For significant changes, open an issue first to discuss the approach.
License
Apache 2.0 — see LICENSE
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。