Packet Tracer Visual MCP
This server provides programmatic control over Cisco Packet Tracer, enabling automated topology creation, device configuration, fault injection/repair, and network validation — all via MCP tool calls instead of manual GUI interaction.
Read & Inspect
Check bridge connection status
Read all devices, interfaces, and links on the workspace
View command history for a device or the whole workspace
Probe device APIs and Server-PT services (DNS/HTTP/FTP/DHCP) read-only
Build Topologies
Add individual devices (routers, switches, PCs, servers, printers) at specific coordinates
Add devices or links sequentially with delays — ideal for screen recordings/demos
Create links with automatic or manual port assignment
Configure Devices
Set IPv4 address, subnet mask, gateway, DNS, or DHCP on PCs/Servers
Send arbitrary Cisco IOS CLI commands to routers and switches
Run
showcommands and retrieve outputGenerate reusable IOS templates for static routes, RIP, OSPF, EIGRP, DHCP pools, extended ACLs, and NAT/PAT
Campus Network Automation
Preview the built-in campus topology plan (33 devices, 34 links, VLANs, routing, DHCP, ACL, NAT/PAT) without touching Packet Tracer
Build the full campus topology sequentially with device/link placement, IP config, and optional IOS delivery
Generate or one-click apply the complete campus IOS configuration set
Apply custom batches of IOS commands to multiple devices at once
Validation & Troubleshooting
Fast validation: check topology shape, connectivity, and key devices/links without heavy show-command sweeps
Generate structured validation plans (fast/standard/strict) for VLANs, trunks, routing, DHCP, NAT, and ACLs
Fault Injection & Repair
Browse the built-in fault library (OSPF mismatches, ACL misconfigurations, NAT errors, missing trunk VLANs, etc.)
Inject predefined fault scenarios to simulate real-world issues
Generate or apply repair commands to fix any built-in fault
Integrates with Cisco Packet Tracer to automate network topology creation, device configuration, and fault injection for network simulation and education.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Packet Tracer Visual MCPBuild a campus network with VLANs and OSPF, then run fast validation."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Packet Tracer Visual MCP
这个项目是一个给 Packet Tracer 用的 MCP 工具。
说白了:以前你在 Packet Tracer 里要自己拖设备、连线、配路由、配 VLAN;现在可以让 Codex 通过 MCP 去干这些活。它特别适合计网课设、校园网实验、录屏演示、故障排查演示。
这个项目是独立实现,不是 Cisco 官方项目,也不冒充官方工具。
现在能做什么
读取 Packet Tracer 当前画布。
自动放设备,支持一台一台出现,录屏看起来比较直观。
自动连线,支持一条一条连。
自动分配端口,不用每条线都手写
FastEthernet0/1这种接口。内置一个中小型校园网模板:
33台设备,34条链路。自动生成完整 IOS 配置:
VLAN
Access / Trunk
跨 VLAN 通信
静态路由 / RIP / OSPF / EIGRP
DHCP
ACL
NAT/PAT
可以把 IOS 配置直接下发到 Packet Tracer 设备。
支持故障注入和修复演示,比如 OSPF 区域错误、ACL 误拦截、NAT 配错。
默认有
fast快速验收,不会一上来跑一大堆慢show命令。也能生成标准验收计划,适合最后交课设前慢慢查。
Related MCP server: packet-tracer-mcp
一行安装
目前还没发到 PyPI,所以先用 GitHub 安装最稳:
git clone https://github.com/lyf94697-droid/packet-tracer-visual-mcp.git; cd packet-tracer-visual-mcp; python -m pip install -e .; python scripts\build_script_engine.py然后把 MCP 配到 Codex:
[mcp_servers.packet-tracer-visual-mcp]
command = "pt-visual-mcp"
args = []启动 MCP:
pt-visual-mcpPacket Tracer 里怎么接上
推荐方式是生成并安装 .pts 持久模块,流程见:
docs/create-pts-module.md临时调试时也可以生成单文件 JS:
python scripts\build_script_engine.py然后在 Packet Tracer 里导入并运行:
extension\packet-tracer-visual-mcp-script-engine.js接着打开:
Extensions > PT Visual MCP窗口里显示 connected 就说明接上了。
如果你像旧版 cisco-pt-mcp 一样想走稳定安装,最终应当安装:
E:\mc\packet-tracer-visual-mcp\extension\packet-tracer-visual-mcp.pts这个 .pts 需要用 Packet Tracer 按 docs/create-pts-module.md 导出一次。
默认连接地址是:
ws://127.0.0.1:7541/ws计网课设能覆盖到哪
内置校园网模板就是按常见计网课设来做的:
至少 4 个 VLAN:支持,默认有 VLAN 10/20/30/40/50/99。
Access / Trunk:支持。
跨 VLAN 通信:支持。
静态路由或 OSPF:支持,还额外支持 RIP 和 EIGRP。
DHCP:支持 IOS DHCP 池,也可以做 DHCP relay 方案。
DNS / Web / FTP:服务器位置和地址规划支持,服务开关见下面说明。
NAT/PAT:支持。
ACL:支持,默认有两条允许/拒绝验证案例。
连通性测试、服务测试、NAT 测试、ACL 测试:会自动生成测试清单。
完整调试案例:支持,比如“VLAN30 不能访问 Web,但 DNS 正常”。
Server-PT 图形服务说明
网络侧我已经能自动做:IP、网关、DNS、VLAN、路由、ACL、NAT/PAT 都可以走 MCP。
但 Packet Tracer 的 Server-PT > Services 面板比较特殊。DNS、HTTP、FTP 这些开关和用户添加,取决于 Packet Tracer Script Engine 有没有暴露稳定 API。
所以当前最稳的做法是:
SRV-DNS:Services > DNS > Onwww.campus.local -> 192.168.40.20ftp.campus.local -> 192.168.40.30
SRV-WEB:Services > HTTP > OnSRV-FTP:Services > FTP > On用户:
ftpuser密码:
cisco
后续可以做一个实验功能:
先用
ptv_probeServerServices探测 Server-PT 设备对象到底暴露了哪些服务相关方法。如果有稳定 API,就加
ptv_configureServerServices,自动开 DNS/HTTP/FTP。如果没有稳定 API,就不硬吹自动化;最多提供手动步骤或非默认的 GUI 点击方案。
已经提供的探测工具:
ptv_probeDeviceApi:只读探测任意设备对象暴露了哪些方法。ptv_probeServerServices:只读扫描 Server-PT 上 DNS/HTTP/FTP/DHCP 相关的方法线索。
这两个工具不会改服务配置,只负责判断有没有稳定接口。
常用 MCP 工具
基础操作:
ptv_bridgeStatusptv_getNetworkptv_addDeviceptv_addDevicesTimelineptv_addLinkptv_addLinksTimelineptv_configurePcptv_configureIos
校园网和配置:
ptv_getCampusPlanptv_buildCampusRecordingDemoptv_generateCampusIosConfigptv_applyCampusIosConfigptv_generateIosTemplateptv_applyIosConfigSet
验收和排错:
ptv_validateCampusFastptv_generateCampusValidationPlanptv_getCommandLogptv_runShowCommandsptv_probeDeviceApiptv_probeServerServicesptv_getFaultLibraryptv_injectFaultptv_repairFault
快速录屏推荐参数
想要“看起来很快,但别乱掉”,推荐:
{
"qualityMode": "fast-safe",
"deviceDelayMs": 40,
"linkDelayMs": 20,
"autoAssignPorts": true,
"autoFallback": true,
"validatePlan": true,
"verifyAfterBuild": true,
"configureDevices": false
}如果要顺手下发配置,把 configureDevices 改成 true,但会比单纯摆拓扑慢。
验收模式
fast:默认模式。看拓扑是否建全、构建有没有失败、关键设备和链路是否存在。不跑重型show命令。standard:生成 VLAN、Trunk、路由、DHCP、NAT、ACL 的命令检查计划。strict:更适合最后交付前慢慢验。off:不验收。
录屏和快速生成用 fast,答辩前再用 standard 或 strict。
示例
课程设计示例看这里:
examples/campus-course-design.md常用提示词看这里:
examples/prompts.md本地自检
python -m pip install -e .
python scripts\check_project.py
python -m compileall src scripts
python scripts\build_script_engine.py
node --check extension\source\pt_api.js
node --check extension\source\interface\bridge.js
node --check extension\packet-tracer-visual-mcp-script-engine.js自检通过时会看到类似:
project check passed: 23 tools, 33 devices, 34 links项目结构
packet-tracer-visual-mcp/
src/pt_visual_mcp/ MCP 服务端和 WebSocket 桥接
extension/source/ Packet Tracer 扩展源码
extension/*.js 可导入 Packet Tracer 的脚本
skill/SKILL.md Codex 技能说明
examples/ 示例提示词和课设示例
docs/ 功能说明和开发笔记
scripts/check_project.py 项目自检脚本许可证
MIT License。
如果你基于别人的 MIT 项目继续改,记得保留对方的协议和署名。这个仓库当前定位是一个干净的原创实现,重点是 Packet Tracer 可视化拓扑生成、课程设计预设和 IOS 自动化。
Available Tools
23 toolsptv_addDeviceC
Add one Packet Tracer device at a specific workspace coordinate.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| model | Yes | ||
| x | Yes | ||
| y | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description lacks disclosure of side effects (e.g., overwriting existing device), authentication requirements, or error conditions. Only states what it does, not behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with 10 words, highly concise and front-loaded with key action and object. However, it sacrifices necessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and 4 required parameters, description is grossly incomplete. Does not specify return value, error handling, or constraints like coordinate bounds.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and description adds no meaning beyond parameter names. Does not explain valid model values, coordinate units (pixels? meters?), or naming conventions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Add', resource 'Packet Tracer device', and specificity 'one at specific workspace coordinate'. Distinguishes from sibling tools like ptv_addDevicesTimeline which adds multiple devices over time.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this vs alternatives such as ptv_addDevicesTimeline or ptv_addLink. No exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_addDevicesTimelineB
Add devices one by one inside Packet Tracer with a short delay between real add operations. Use for screen recordings where viewers should see devices appear sequentially.
| Name | Required | Description | Default |
|---|---|---|---|
| devices | Yes | ||
| delayMs | No | ||
| qualityMode | No | fast-safe | |
| maxRetries | No | ||
| retryDelayMs | No | ||
| settleMs | No | ||
| minSpacing | No | ||
| autoAssignPorts | No | ||
| autoFallback | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It mentions sequential addition with delay and that operations are 'real,' but fails to describe key behaviors such as how failures are handled (retries), the effect of parameters like qualityMode, or whether the operation is atomic. This minimal disclosure is insufficient for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and extremely concise, which is good for readability. However, it lacks structure such as a brief list of key parameters or a note about defaults. For a tool with 9 parameters, slightly more structure would help without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters, 0% schema coverage, no output schema, and no annotations, the description is far too brief. It covers the core purpose but omits essential details about parameter effects, error handling, sequencing behavior, and return values. A more complete description is needed for an agent to use this tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% parameter description coverage, and the description adds no explanation for any of the 9 parameters (e.g., delayMs, qualityMode, maxRetries). It only indirectly references a 'short delay,' but does not map to the delayMs parameter or other settings. This leaves the agent without guidance for setting correct values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Add devices') and resource ('Packet Tracer'), with a specific execution mode ('one by one with a short delay'). It distinguishes itself from sibling 'ptv_addDevice' by indicating batch sequential addition, and specifies the use case ('screen recordings').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Use for screen recordings where viewers should see devices appear sequentially.' This clarifies the intended context, but it does not mention when to avoid this tool (e.g., when sequential delay is not desired) or explicitly name alternatives like 'ptv_addDevice'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_addLinkC
Create one link between two existing Packet Tracer interfaces.
| Name | Required | Description | Default |
|---|---|---|---|
| fromDevice | Yes | ||
| fromInterface | No | auto | |
| toDevice | Yes | ||
| toInterface | No | auto | |
| linkType | No | auto | |
| autoAssignPorts | No | ||
| autoFallback | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the operation ('Create one link') without mentioning side effects, error conditions, or behavior of parameters like autoAssignPorts and autoFallback. Minimal disclosure for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence (11 words), which is appropriate in length but lacks substantive information. It is concise but at the expense of clarity on parameters and behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 7 parameters, no output schema, and no annotations, the description is severely inadequate. It does not cover return values, error handling, or parameter dependencies, leaving the agent with insufficient context to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to any of the 7 parameters. It does not explain the roles of fromDevice, toDevice, fromInterface, toInterface, linkType, autoAssignPorts, or autoFallback. The agent must rely solely on parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create one link'), the resource ('link'), and the context ('between two existing Packet Tracer interfaces'). It distinguishes from siblings like ptv_addDevice or ptv_addDevicesTimeline, which involve adding different entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, nor any prerequisites (e.g., devices and interfaces must exist). The description implies usage but does not help the agent decide between this and other link-related tools like ptv_addLinksTimeline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_addLinksTimelineC
Create links one by one with a short delay, optimized for recording a topology being wired.
| Name | Required | Description | Default |
|---|---|---|---|
| links | Yes | ||
| delayMs | No | ||
| qualityMode | No | fast-safe | |
| maxRetries | No | ||
| retryDelayMs | No | ||
| settleMs | No | ||
| minSpacing | No | ||
| autoAssignPorts | No | ||
| autoFallback | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must convey behavioral traits. It only mentions sequential creation with a delay, but does not disclose behavior around retries, quality modes, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded. However, it sacrifices necessary detail, making it under-specified for a tool with many parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 9 parameters, no annotations, and no output schema, the description is far too minimal. It lacks information on return values, error handling, and parameter configurations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to any parameter. It only hints at delay without linking to the delayMs parameter or explaining others.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it creates links sequentially with delay, optimized for recording topology wiring, clearly identifying the verb and resource and distinguishing from a bulk add.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for recording wiring sequences but provides no explicit guidance on when to use this vs. ptv_addLink or other siblings, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_applyCampusIosConfigC
One-click generation and application of the complete campus IOS configuration set. Requires the Packet Tracer bridge to be connected.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | ||
| routingProtocol | No | ospf | |
| dhcpMode | No | ios | |
| includeNatPat | No | ||
| includeAcl | No | ||
| writeMemory | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should carry more behavioral info. It states 'generation and application' implying configuration changes, but does not disclose potential side effects (e.g., overwriting existing configs), safety, reversibility, or that it may be destructive. Lacks detail on what 'apply' entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only one sentence, but it is under-specified. It lacks structured details about parameters and behavior. Conciseness should not sacrifice necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (6 params, no output schema, no annotations), the description is far too minimal. It does not explain what the config set contains, the role of each parameter, the generation vs. application process, or expected outcomes. Incomplete for a production tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description provides zero explanation for the 6 parameters. No hints on what prefix, routingProtocol, dhcpMode, etc., control. The agent must guess from names and enums, which is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it does 'one-click generation and application of the complete campus IOS configuration set', which is a specific verb and resource. It distinguishes itself from sibling tools like ptv_generateCampusIosConfig (generate only) and ptv_applyIosConfigSet (apply only), but does not explicitly mention these alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Only mentions a prerequisite (Packet Tracer bridge connection). No guidance on when to use this tool versus siblings, no context on when not to use it, and no mention of typical use cases or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_applyIosConfigSetC
Apply an arbitrary IOS config set made of deviceName plus commands entries.
| Name | Required | Description | Default |
|---|---|---|---|
| configs | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits such as whether it overwrites existing config, requires specific permissions, or is destructive. The description is minimal and lacks transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence (12 words) that gets straight to the point. It could be slightly more structured, but it is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and the complexity of the tool (applying config to devices), the description is insufficient. It does not explain return values, error handling, immediate effects, or success verification.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description loosely maps to the parameters by mentioning 'deviceName plus commands entries'. However, it does not explain the structure of 'commands' (e.g., valid IOS commands) or that it can be a string or array, missing the opportunity to add value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Apply' and the resource 'IOS config set', and specifies that it is composed of 'deviceName plus commands entries'. This distinguishes it from related sibling tools like 'ptv_applyCampusIosConfig' which likely applies a pre-defined config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., 'ptv_applyCampusIosConfig', 'ptv_configureIos'). No mention of prerequisites, limitations, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_bridgeStatusA
Check whether the Packet Tracer Visual MCP extension is connected.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description correctly implies a read-only check without side effects. However, no further behavioral details (e.g., network call, caching) are disclosed. Sufficient for a simple status check but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no waste. Front-loaded with the action and result. Perfectly sized for the tool's trivial nature.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and no output schema, description is fully complete. The tool's purpose is simple and no additional context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has zero parameters and schema coverage is 100%. Description adds no parameter info, which is acceptable. Baseline 4 for no-param tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool checks connection status of Packet Tracer Visual MCP extension. Verb 'Check' and resource 'connection' are specific. No sibling has similar purpose, so differentiation is not needed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It could be used before other operations, but not stated. No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_buildCampusRecordingDemoC
Build a visually complex campus topology in Packet Tracer: devices appear sequentially, links are drawn sequentially, PC/server IPs are applied, and IOS commands are optionally sent. Designed for course-design demos and screen recordings.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | ||
| originX | No | ||
| originY | No | ||
| scale | No | ||
| deviceDelayMs | No | ||
| linkDelayMs | No | ||
| configureDevices | No | ||
| validatePlan | No | ||
| verifyAfterBuild | No | ||
| qualityMode | No | fast-safe | |
| maxRetries | No | ||
| retryDelayMs | No | ||
| settleMs | No | ||
| minSpacing | No | ||
| autoAssignPorts | No | ||
| autoFallback | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description must disclose all behavioral traits. It mentions sequential appearance of devices and links, IP application, and optional IOS commands, but omits details on error handling, side effects on existing networks, or behavior of parameters like retries and delays.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) with no wasted words. It front-loads the action and ends with the intended use. However, the extreme brevity sacrifices parameter explanation and behavioral detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (16 parameters, no output schema, no annotations), the description is severely incomplete. It lacks prerequisites, return value information, parameter explanations, and details on what constitutes a valid campus plan.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the 16 parameters (e.g., prefix, originX, scale, delays). It only gives a high-level summary of actions, failing to add meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool builds a visually complex campus topology, with specific actions (devices, links, IPs, IOS commands). It distinguishes from sibling tools like ptv_addDevice or ptv_addLink by highlighting it as a composite demo/recording-oriented build.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description says 'Designed for course-design demos and screen recordings,' implying use for bulk/automated campus builds. However, it does not explicitly state when not to use it (e.g., for step-by-step or non-demo tasks) or name alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_configureIosC
Send Cisco IOS commands to one router or switch. Commands may be a string or an array of strings.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceName | Yes | ||
| commands | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits. Only mentions that commands can be a string or array, but does not disclose execution behavior, side effects, or device state requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 14 words, fully front-loaded. No wasted words, efficient for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero schema coverage, no output schema, and no annotations, the description is too sparse. Lacks return value information, error handling, and usage context for a tool with two required parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and description only adds that commands can be a string or array. It does not explain the 'deviceName' parameter or provide additional meaning beyond basic schema information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'send Cisco IOS commands to one router or switch', identifying the verb and resource. It distinguishes from siblings like 'ptv_runShowCommands' but does not explicitly differentiate from similar tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'ptv_applyCampusIosConfig' or 'ptv_runShowCommands'. Missing context about prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_configurePcC
Set a PC or Server IPv4 address, mask, gateway, DNS, or DHCP flag.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceName | Yes | ||
| dhcp | No | ||
| ip | No | ||
| mask | No | ||
| gateway | No | ||
| dns | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It only states 'Set' implying mutation, but does not disclose behavioral traits like idempotency, error states, or consequences of setting DHCP alongside IP fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise with one sentence and no unnecessary words. However, the brevity borders on under-specification, sacrificing some informational value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no output schema, and no annotations, the description is incomplete. It fails to specify required parameters, behavior when DHCP is true, return values, or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description merely lists the parameter names without adding format constraints, relationships (e.g., DHCP vs IP), or default behavior. It does not compensate for the schema's lack of clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Set' and clearly identifies the resource as 'PC or Server IPv4 address, mask, gateway, DNS, or DHCP flag'. It distinguishes from siblings like ptv_configureIos (for IOS devices) and ptv_addDevice (adding devices).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ptv_configureIos. There is no discussion of prerequisites, context, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_generateCampusIosConfigA
Generate a complete IOS configuration set for the built-in campus topology. Supports routingProtocol static/rip/ospf/eigrp, IOS DHCP pools, ACL templates, and NAT/PAT.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | ||
| routingProtocol | No | ospf | |
| dhcpMode | No | ios | |
| includeNatPat | No | ||
| includeAcl | No | ||
| writeMemory | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must convey behaviors. It mentions supported features but lacks details on side effects, output format, or prerequisites. It does not say whether it is a read-only operation or modifies state; generation typically returns config but is not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the purpose and key capabilities. Every phrase adds value, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 6 parameters and no output schema. The description covers main features but does not explain the 'prefix' parameter or the effect of 'writeMemory'. For a generation tool, more detail on the output (e.g., format, how to apply) would be helpful, but sibling tools handle application.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and description does not explain any parameter individually. It mentions routingProtocol, DHCP, ACL, and NAT/PAT, which correspond to parameters, but omits 'prefix' and 'writeMemory'. Parameter names are not explained, and defaults are not mentioned.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a complete IOS configuration set for the built-in campus topology, listing supported routing protocols and features. It distinguishes from sibling tools like ptv_generateIosTemplate or ptv_applyCampusIosConfig by specifying the target topology and completeness.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when generating a full config for the built-in campus topology with specific routing protocols, DHCP mode, etc. It does not explicitly state when not to use or alternatives, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_generateCampusValidationPlanB
Generate a campus validation plan. Default validationMode is fast, which avoids show-command sweeps. Use standard or strict only when slower IOS command checks are acceptable.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | ||
| routingProtocol | No | ospf | |
| dhcpMode | No | ios | |
| includeNatPat | No | ||
| includeAcl | No | ||
| validationMode | No | fast |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only mentions the default mode and behavior difference for validation modes. It does not disclose whether the tool modifies state, requires permissions, or has side effects, leaving significant behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences, front-loading the main action and the most important parameter guidance. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no output schema, no annotations, and many siblings, the description is insufficient. It fails to explain parameter meanings, output format, or how it fits into the workflow of related tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only implicitly explains one parameter (validationMode) by mentioning its default and trade-offs. The other five parameters (prefix, routingProtocol, dhcpMode, includeNatPat, includeAcl) are left completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Generate a campus validation plan' with a specific verb and resource. However, it does not differentiate from sibling tools like ptv_validateCampusFast, which may perform a similar function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives guidance on when to use different validationMode values ('fast' default vs 'standard/strict'), but does not explain when to use this tool compared to other validation or generation tools among the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_generateIosTemplateC
Generate reusable IOS command templates for static routes, RIP, OSPF, EIGRP, DHCP pools, extended ACLs, and NAT/PAT. This does not touch Packet Tracer.
| Name | Required | Description | Default |
|---|---|---|---|
| template | Yes | ||
| params | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. It only states it does not touch Packet Tracer, which is a negative behavioral trait. It does not mention whether the tool is read-only, if it requires authentication, or any side effects. This is insufficient for an agent to assess safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (two sentences) and front-loaded with the purpose. However, it is too terse for the complexity of the tool; it omits critical information about parameters and output. Conciseness should not come at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and the nested 'params' parameter, the description should explain what the tool returns and how templates are structured. It does neither. The tool is moderately complex (multiple template types) but the description fails to provide complete context for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 2 parameters (template, params) with 0% schema description coverage. The description lists the template types but does not explain how to use the 'params' object, which is a non-trivial nested parameter. It provides no semantic meaning beyond the schema, leaving the agent to guess what params should contain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates IOS command templates for specific protocols (static routes, RIP, etc.). It also distinguishes itself from siblings by noting it does not touch Packet Tracer, implying it is a template generation tool rather than a configuration application. However, 'generate' could be more explicit about the output format.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides the exclusion 'does not touch Packet Tracer' which hints at when not to use it, but it does not explicitly state when to use this tool versus alternatives like ptv_configureIos or ptv_applyIosConfigSet. It lacks guidance on prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_getCampusPlanA
Generate the built-in campus-network demo plan without touching Packet Tracer. Use this to preview device names, VLANs, links, service steps, and tests.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | ||
| originX | No | ||
| originY | No | ||
| scale | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It implies a read-only preview operation ('without touching Packet Tracer') but does not disclose side effects, permissions, or whether the plan is cached or regenerated. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose. No wasted words, efficiently communicates the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite a clear purpose, the description lacks explanation of parameters and return values (no output schema). For a tool with 4 undocumented parameters, this is insufficient for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 4 parameters (prefix, originX, originY, scale) with 0% description coverage. The description adds no meaning to these parameters, leaving the agent to guess their purpose. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a built-in campus-network demo plan for previewing device names, VLANs, links, service steps, and tests. It uses a specific verb ('Generate') and resource ('campus-network demo plan'), and distinguishes from sibling tools that add or configure devices.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this to preview...' providing clear context for when to use the tool. However, it does not mention when not to use or alternatives among siblings, which is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_getCommandLogB
Read recent Packet Tracer command history for one device or the whole workspace.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceName | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It states 'read' implying no side effects, but lacks details on what happens with an empty deviceName (returns workspace-wide history?), data freshness, or format. Minimal information beyond the basic read action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence of 14 words efficiently conveys the core purpose. It is front-loaded, but could be slightly expanded without losing conciseness to cover parameters more explicitly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple read operation with no output schema and two optional parameters, the description is minimally adequate. However, it lacks details on output format, pagination, or behavior when limit is reached, leaving gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description should compensate. It partially explains deviceName by mentioning per-device vs workspace, but does not describe the limit parameter's meaning or effect. Adds some meaning but incomplete for a 2-param tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'read' and the resource 'Packet Tracer command history', with explicit scoping to 'one device or the whole workspace'. This distinguishes it from sibling tools like ptv_runShowCommands or ptv_configureIos, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, limitations, or scenarios where other tools (e.g., ptv_probeDeviceApi) might be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_getFaultLibraryA
List built-in fault injection scenarios and their expected symptoms and verification commands.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states the tool returns scenarios with symptoms and commands, but does not disclose potential authentication needs, rate limits, or performance characteristics. The behavior is clear enough for a read-only listing without side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the main action. Every word contributes to understanding, with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description completely covers what the tool does. No additional information is needed for an agent to understand its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is 100% (empty schema). The description adds context about what the tool lists, which is sufficient. Baseline for zero parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists built-in fault injection scenarios with their symptoms and verification commands. It uses a specific verb 'List' and identifies the resource, distinguishing it from sibling tools like ptv_injectFault and ptv_repairFault.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as ptv_injectFault or ptv_repairFault. It does not mention prerequisites, use cases, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_getNetworkA
Read the current Packet Tracer logical workspace: devices, interfaces, and links.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It correctly indicates a read-only behavior but does not disclose any potential constraints, prerequisites, or side effects. Additional context (e.g., whether the state is live or cached) would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the tool's purpose. No extraneous words; every part is informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no parameters, the description sufficiently explains what the tool returns (devices, interfaces, links). It could further clarify that it retrieves the current state and that subsequent calls reflect changes from mutation tools, but it is largely complete for a simple read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema coverage is 100%. The description adds no parameter information because none is needed. The tool's operation is fully defined by its purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads the current Packet Tracer logical workspace and lists the specific elements returned: devices, interfaces, and links. This distinguishes it from sibling tools like ptv_addDevice or ptv_getCampusPlan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a read-only context but does not explicitly specify when to use this tool over alternatives like ptv_getCampusPlan or ptv_getCommandLog. No exclusions or usage scenarios are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_injectFaultC
Generate or apply a built-in fault scenario, such as missing trunk VLAN, OSPF area mismatch, missing static route, overblocking ACL, or broken NAT outside marking.
| Name | Required | Description | Default |
|---|---|---|---|
| faultId | Yes | ||
| prefix | No | ||
| apply | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It lists possible fault scenarios but does not disclose behavioral traits such as whether the tool modifies network state, requires permissions, or is reversible. The term 'inject' implies some system change, but no explicit disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the tool's purpose. It includes examples which aid understanding without being verbose. However, it could be restructured to include parameter details without increasing length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the three parameters, zero schema coverage, no output schema, and no annotations, the description is incomplete. It does not explain how to use the parameters, what the output is, or provide any context about when to inject vs repair faults (sibling tool ptv_repairFault is present).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain any of the three parameters (faultId, prefix, apply). The user has no guidance on what values faultId accepts, what prefix does, or what apply=true means. This is a critical gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the verb 'generate or apply' and the resource 'built-in fault scenario' with concrete examples like missing trunk VLAN, OSPF area mismatch, etc. It clearly differentiates from sibling tool ptv_repairFault, which is for repairing faults.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus alternatives like ptv_repairFault or when not to use it. The statement is purely functional without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_probeDeviceApiA
Read-only probe for Packet Tracer device object APIs. Use it to inspect whether a device exposes service-related methods before implementing Server-PT automation.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceName | Yes | ||
| maxDepth | No | ||
| maxKeys | No | ||
| includeSafeCalls | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description states 'Read-only probe' indicating non-destructive behavior, but does not disclose error handling, rate limits, or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with key information, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no output schema, and no annotations, the description is incomplete; it lacks parameter explanations, return value or error information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage and the description does not explain any of the four parameters (deviceName, maxDepth, maxKeys, includeSafeCalls), failing to add meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it is a read-only probe for device object APIs, distinct from sibling ptv_probeServerServices which probes server services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: to inspect device API methods before Server-PT automation. Implicitly not used for other tasks, but lacks explicit alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_probeServerServicesB
Read-only probe for Server-PT service automation hints. It scans one Server-PT or all Server-PT devices for DNS/HTTP/FTP/DHCP related API names without changing services.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceName | No | ||
| maxDepth | No | ||
| maxKeys | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description discloses key trait (read-only, no service changes). But lacks details on permissions, error handling, or response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence, no redundancy. Could better structure to separate purpose from scope, but efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters, no output schema, and no annotations, description is minimally adequate for a read-only probe but lacks parameter details and usage context among 22 sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and description adds no explanation for deviceName, maxDepth, or maxKeys beyond their names. Meaningful parameter semantics absent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Explicitly states verb (probe/scan) and resource (Server-PT devices for DNS/HTTP/FTP/DHCP related API names). Distinguishes from sibling ptv_probeDeviceApi by specifying focus on service automation hints and read-only nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like ptv_probeDeviceApi. Only implies read-only probing without exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_repairFaultC
Generate or apply the repair commands for a built-in fault scenario.
| Name | Required | Description | Default |
|---|---|---|---|
| faultId | Yes | ||
| prefix | No | ||
| apply | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It mentions 'generate or apply' but does not explain that applying repair commands may modify network state (destructive), nor does it describe the output format or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (one sentence), which is efficient but sacrifices clarity. It uses 'or' to cover two modes, but could be more structured to explain the dual behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters with no schema descriptions, no output schema, and no annotations, the description is severely incomplete. It fails to explain the relationship with fault library, the role of prefix, or the result of apply=true.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description adds no meaning to the parameters: faultId (source of fault IDs?), prefix (purpose?), apply (what does true/false mean?). Schema itself also lacks descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates or applies repair commands for a built-in fault scenario, which distinguishes it from sibling tools like injectFault (injects faults) and getFaultLibrary (lists faults). However, it could be more specific about what 'built-in fault scenario' means.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool vs alternatives such as ptv_injectFault or ptv_getFaultLibrary. The description does not mention prerequisites, when to generate vs apply, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_runShowCommandsA
Issue show commands to one IOS device and return command-log confirmation. Packet Tracer does not guarantee full show-output parsing.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceName | Yes | ||
| commands | Yes | ||
| logLimit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses a limitation ('Packet Tracer does not guarantee full show-output parsing') and mentions returning a confirmation log, but omits side effects, destructive potential, or permissions. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the key action and outcome. No extraneous words, highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists. The description only mentions 'command-log confirmation' without specifics on structure, error handling, or pagination. For a command-issuing tool to a network device, this is insufficient context to understand the full interaction.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description adds context for deviceName and commands ('issue show commands to one IOS device'), but does not explain logLimit (default 120). With 3 parameters, the description only partially compensates for the missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool issues show commands to a single IOS device and returns command-log confirmation. It distinguishes from siblings like ptv_configureIos (config commands) and ptv_getCommandLog (retrieve logs), giving a specific verb and resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for show commands, not configuration, which gives some context. However, it does not explicitly state when not to use it or provide alternatives, missing a clear usage boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ptv_validateCampusFastB
Run a speed-preserving campus validation: plan shape, build/apply results, one optional canvas snapshot, and key-device/link checks. It does not run heavy show commands.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | ||
| originX | No | ||
| originY | No | ||
| scale | No | ||
| checkCanvas | No | ||
| plan | No | ||
| buildResult | No | ||
| applyResult | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral disclosure burden. It mentions the tool does not run heavy show commands, indicating it is lightweight, but does not detail side effects, permissions, or whether operations are read-only or mutating.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core purpose. It efficiently conveys the key components in two sentences, though a bulleted list could improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (8 parameters, nested objects, no output schema), the description is incomplete. It lacks details on return values, parameter effects, and prerequisites, leaving significant gaps for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description provides no parameter explanations. The 8 parameters, including nested objects like plan and buildResult, remain completely opaque, failing to add meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it runs a 'speed-preserving campus validation' and lists specific components (plan shape, build/apply results, canvas snapshot, key-device/link checks), distinguishing it from siblings like ptv_runShowCommands and ptv_generateCampusValidationPlan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fast validation by noting it does not run heavy show commands, providing context for when to choose this tool over heavier alternatives. However, it does not explicitly state when not to use it or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
23 tool updates
v0.1.0- First observed
ptv_addDevice - First observed
ptv_addDevicesTimeline - First observed
ptv_addLink - First observed
ptv_addLinksTimeline - First observed
ptv_applyCampusIosConfig - First observed
ptv_applyIosConfigSet - First observed
ptv_bridgeStatus - First observed
ptv_buildCampusRecordingDemo - First observed
ptv_configureIos - First observed
ptv_configurePc - First observed
ptv_generateCampusIosConfig - First observed
ptv_generateCampusValidationPlan - First observed
ptv_generateIosTemplate - First observed
ptv_getCampusPlan - First observed
ptv_getCommandLog - First observed
ptv_getFaultLibrary - First observed
ptv_getNetwork - First observed
ptv_injectFault - First observed
ptv_probeDeviceApi - First observed
ptv_probeServerServices - First observed
ptv_repairFault - First observed
ptv_runShowCommands - First observed
ptv_validateCampusFast
TDQS
Scored across 23 tools
Most tools have distinct purposes, but there is some potential confusion between generate/apply campus config tools and between buildCampusRecordingDemo vs. step-by-step add tools. Descriptions help, but overlap exists.
All tools use the consistent 'ptv_verb_noun' pattern. Verbs are descriptive and nouns are specific, making the set predictable and easy to navigate.
23 tools is at the upper bound of reasonable for a complex domain like network simulation, but each tool serves a clear purpose for campus topology building, configuration, and validation.
The tool set covers core workflows: device addition, linking, configuration, validation, and fault injection. However, removal or update operations are missing, and the focus is heavily on a specific campus demo, which may leave gaps for general use.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.
MCP server for generating rough-draft project plans from natural-language prompts.
AI workflow/MCP implementation package planner.
Create, deploy, and operate MCP servers directly from your GitHub repositories.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceAn MCP server that allows LLMs to create, configure, validate, and explain Cisco Packet Tracer network topologies. It provides a comprehensive suite of tools for generating deployment scripts, CLI configurations, and automated network troubleshooting.164MIT
- AlicenseNot gradedqualityCmaintenanceEnables control of Cisco Packet Tracer 9.0 via natural language, allowing creation of network topologies, device configuration, and simulation launches through an MCP interface.8710MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to control Cisco Packet Tracer in real time, allowing natural language-driven creation and configuration of network topologies.4MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI models to generate, validate, and deploy network topologies directly into Cisco Packet Tracer from natural-language prompts.-