NetForge-AI Lab · MCP server
Connect your AI assistant to the NetForge-AI network lab
NetForge-AI Lab is a remote MCP server. It lets the AI app you already use — Claude, ChatGPT, Cursor or VS Code — create, configure and test network labs in the NetForge-AI simulator, through the same engine the browser lab runs. When the lab works, the agent hands you a link: you open it, watch it, and type the commands yourself.
https://mcp.netforge-ai.com/mcpWhat it is, and who it is for
An MCP (Model Context Protocol) server gives an AI app a set of tools it can call. NetForge-AI Lab's tools drive the NetForge-AI network simulator: the same CLI, the same forwarding engine and the same grader as the lab in your browser. NetForge-AI runs no AI for this — your own AI app does the thinking.
Learners who already use an AI app
Ask your assistant for a lab — “two VLANs and a router on a stick”, “three routers running OSPF” — and get a working network you can open in your browser. Ask it why each command is there, then rebuild it yourself.
Instructors making practice labs
Describe the exercise and let the agent build it, prove it with a connectivity test, and then break it on purpose for troubleshooting practice. Share the result as a link students copy into their own lab.
How it works
- Step 1
Your agent builds the lab
It creates a lab, adds routers, switches, PCs and cables, and configures each device in the standard network CLI — or applies a design template such as router-on-a-stick or an OSPF triangle. Every command goes through the real simulator: a command the CLI would reject is refused, with the device's own error.
- Step 2
It proves the lab works
A command being accepted is not proof. The agent pings between devices through the real forwarding engine, runs a connectivity matrix with the expected pass or fail for each pair, audits the configuration for faults, and can grade the lab with the same grader NetForge-AI classrooms use.
- Step 3
You open the link and do it yourself
The agent gives you a netforge-ai.com/lab link. It opens the lab read-only and follows the agent's changes live. Copy it into your own lab, then type the commands yourself — that is where the learning happens.
Set it up in your AI app
You need a free NetForge-AI account. Apps that support sign-in open a NetForge-AI page where you approve the app; the rest use a personal access token. Menu names are as each app shows them today and can move between versions.
Claude (claude.ai and Claude Desktop)
- Open Settings → Connectors and choose Add custom connector.
- Name it NetForge-AI Lab and paste the server URL.
- Choose Connect. A NetForge-AI page opens: sign in, check what the app is asking for, and approve it.
- In a chat, turn the connector on and ask for a lab.
https://mcp.netforge-ai.com/mcpClaude Code
- Add the server from your terminal, then run /mcp inside Claude Code and choose the server to sign in and approve it.
- Or, instead of signing in, use a personal access token kept in an environment variable (see below). Set it first in the same terminal — export NF_TOKEN=<your token> on macOS or Linux, $env:NF_TOKEN = "<your token>" in Windows PowerShell — and use the command for your shell: the shell fills the variable in, and each shell spells it differently.
claude mcp add --scope user --transport http netforge-ai-lab https://mcp.netforge-ai.com/mcpclaude mcp add --scope user --transport http netforge-ai-lab https://mcp.netforge-ai.com/mcp \
--header "Authorization: Bearer $NF_TOKEN"claude mcp add --scope user --transport http netforge-ai-lab https://mcp.netforge-ai.com/mcp `
--header "Authorization: Bearer $env:NF_TOKEN"Cursor
- Add the server to ~/.cursor/mcp.json (or .cursor/mcp.json in a project).
- Cursor shows a sign-in prompt for the server; approve it on the NetForge-AI page that opens. To use a token instead, add the headers entry and set NF_TOKEN in your environment.
{
"mcpServers": {
"netforge-ai-lab": {
"url": "https://mcp.netforge-ai.com/mcp"
}
}
}{
"mcpServers": {
"netforge-ai-lab": {
"url": "https://mcp.netforge-ai.com/mcp",
"headers": {
"Authorization": "Bearer ${env:NF_TOKEN}"
}
}
}
}VS Code
- Add a servers entry of type http to .vscode/mcp.json in your workspace (or to your user mcp.json).
- Start the server from the file or the MCP view. If VS Code offers to sign in, approve it on the NetForge-AI page that opens; otherwise use a personal access token with the headers entry — VS Code prompts for it once and stores it securely.
{
"servers": {
"netforge-ai-lab": {
"type": "http",
"url": "https://mcp.netforge-ai.com/mcp"
}
}
}{
"inputs": [
{
"type": "promptString",
"id": "nf-token",
"description": "NetForge-AI personal access token",
"password": true
}
],
"servers": {
"netforge-ai-lab": {
"type": "http",
"url": "https://mcp.netforge-ai.com/mcp",
"headers": {
"Authorization": "Bearer ${input:nf-token}"
}
}
}
}ChatGPT
- Turn on developer mode in ChatGPT's settings (under Apps & Connectors → Advanced), then create a connector.
- Name it NetForge-AI Lab, paste the server URL and choose OAuth as the authentication.
- Sign in and approve it on the NetForge-AI page that opens, then add the connector to a chat.
https://mcp.netforge-ai.com/mcpPersonal access tokens
- Create one in Account → Connected AI apps. It starts with nfp_ and is shown once — copy it then.
- Send it as an Authorization: Bearer header. Keep it in an environment variable (NF_TOKEN above), not in a file you share or commit.
- It expires after 90 days unless you choose otherwise, at most 1 year, and you can revoke it at any time.
- NetForge-AI stores only a hash of it, so a lost token cannot be shown again — revoke it and create a new one.
The 18 tools
Your AI app picks the tools; you never call them by hand. They are listed here so you know exactly what an app you connect can do.
Labs
- netforge_capabilities
- What the simulator supports: device kinds and port names, the CLI commands it parses, what it does not model, the design templates and the sample labs.
- lab_list
- Your working labs, and how many you may keep.
- lab_create
- A new lab: blank, a copy of a sample, one of your saved labs, a share link, or an imported topology JSON.
- lab_get
- Every device with its interfaces, addresses and key state, every cable, and optionally one device's running configuration.
- lab_open_link
- The netforge-ai.com link that opens the lab in your browser.
- lab_delete
- Deletes a working lab. Your saved labs and share links are not affected.
Build
- lab_build
- Adds devices, ports and cables, moves or auto-arranges them.
- lab_remove
- Removes devices or cables, after taking a checkpoint.
- lab_skill
- Applies a design template: router-on-a-stick, ospf-triangle, vrrp-pair, dhcp-lan, campus-3tier, campus-network, nat-edge, subnet-plan, or inject-faults (breaks the lab on purpose for troubleshooting practice).
- lab_rollback
- Restores the most recent checkpoint.
Configure and inspect
- device_cli
- Runs configuration commands on one device in the standard network CLI (or a PC's shell). All or nothing: if any line would be rejected, nothing is applied. Destructive commands such as write erase and reload are refused.
- device_show
- Runs read-only show commands and returns the device's real output.
Test and grade
- lab_ping
- Pings through the real forwarding engine — ARP, switching, routing, ACLs and NAT all apply — and says where a failure happened.
- lab_test
- A connectivity matrix of up to 30 cases, each with an expected pass or fail, so an ACL that must block traffic is tested too.
- lab_diagnose
- Audits the lab for configuration faults — addressing, gateways, VLANs and trunks, routing adjacencies.
- lab_grade
- Grades the lab against a goal with the classroom grader, on a copy, so the lab is not changed.
Publish
- lab_save
- Copies a working lab into My saves on netforge-ai.com, under your account's usual save limits.
- lab_share
- Creates a public, read-only /t/ link to a snapshot of the lab.
An example session
Abridged and illustrative; your AI app words things its own way.
You: Build me a router-on-a-stick lab: one router, one switch, and a PC in VLAN 10 and another in VLAN 20. Check that the two PCs can reach each other, then give me the link so I can try it myself.
lab_create— Creates an empty lab named “Router on a stick”.lab_skill— Applies router-on-a-stick with vlans 10,20: adds the devices and cables, configures the trunk and the router's subinterfaces, and addresses the PCs.lab_test— Runs PC1 → PC2 and PC2 → PC1, both expected to pass. Every case matches.device_show— Runs show ip interface brief on the router to confirm both subinterfaces are up.lab_open_link— Returns the netforge-ai.com/lab link to the lab.
Your AI: Both PCs reach each other through the router's subinterfaces. Open the link, copy the lab into your own, delete the trunk on the switch and configure it again yourself — then ping from PC1 to check your work.
Limits and privacy, in plain words
Limits
- Your plan's lab limits apply. On the Free plan that means up to 5 devices per lab and 3 saved labs, and one working lab at a time.
- On plans without a device or save cap, a working lab holds up to 150 devices and you can keep up to 100 working labs — technical and fair-use ceilings of the hosted service.
- Fair use, the same for every account: 60 tool calls a minute and 5,000 a day.
- Working labs are separate from My saves. One you have not used for 30 days is deleted; saved labs are never deleted this way.
- Everything is simulated. Nothing here connects to or configures real network equipment.
Privacy
- NetForge-AI runs no AI for this. The AI app you connected does the thinking, under its own provider's terms.
- What the app reads — lab contents and device output — is sent to the AI service you chose. NetForge-AI never sees your conversation, only the tool calls the app makes.
- We keep a hash of each token, which apps you approved, when each was last used, your working labs, and a record of each tool call (the tool's name, whether it succeeded, how long it took) — never the conversation.
- Revoke an app or a token at any time in Account → Connected AI apps. Revoked and expired credentials are purged 30 days after they stop working.
The full details are in the privacy policy and the terms of service (“Connected AI apps” in both).
Questions
Does NetForge-AI see my AI conversation?
No. NetForge-AI receives only the tool calls your AI app makes — for example “create a lab” or “run these commands on R1” — and returns their results. The conversation stays between you and your AI provider.
Is it free?
It works on the Free plan, within that plan's limits: up to 5 devices per lab, 3 saved labs and one working lab at a time. NetForge-AI charges nothing extra for connecting an AI app; your AI app's own plan is between you and its provider.
Can it touch real network devices?
No. Every lab runs in the NetForge-AI simulator. The server has no way to reach real routers, switches or anything else on a real network.
Which AI apps can connect?
Any app that supports remote MCP servers over HTTP. Apps that support MCP sign-in — claude.ai and Claude Desktop, ChatGPT, Claude Code and Cursor — open a NetForge-AI approval page. Others can use a personal access token from your account.
Can my AI break or delete my saved labs?
Your AI works in separate working labs. Copying a lab into My saves or creating a public share link is a separate permission the app must ask for, and you see it on the approval page. Device commands that would erase or reload a device are refused.
Will the agent just do my homework?
It can build a lab for you, but the point is what comes next: open the link, read why each command is there, and type it yourself in your own lab. Asking your AI to explain each step works well.
How do I disconnect?
Go to Account → Connected AI apps and revoke the app or the token. It is refused from the app's next call. You can also remove the server from your AI app's settings.
Prefer to build it yourself?
The lab is open in your browser with no install. Every lab an AI app builds for you opens there too.
Open the lab