1. Conduid
  2. Developer Tools
  3. Nika
MCP server · Developer Tools

Nika

A Network Arena for Benchmarking AI Agents on Network Troubleshooting

50Fair

Scored 6 days ago · breakdown

About Nika

Nika is an MCP server published by sands-lab in the Developer Tools category: a Network Arena for Benchmarking AI Agents on Network Troubleshooting.

The repository has 68 stars and 18 forks, with the last commit 6 hours ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/sands-lab/nika

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Nika

Powered by Claude · Grounded in docs

I know everything about Nika. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 3 hours ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • !License declaredNo license file. Legally you have no right to use it in a product.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • !No dynamic code executionSource scan found eval or shell execution. Review how tool inputs reach it before granting credentials.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

✨ Features · 🤖 Overview · 📦 Installation · 🚀 Quick start · 📖 Learn more · 📄 Docs · 🌐 Website · 📚 Cite

ArXiv Link Project Page Slack Open Telco AI

❓ What is NIKA?

Think about SWE-Bench, but for network troubleshooting. NIKA, Network Incident Benchmark for AI Agents, is an open benchmark for agentic evals on network troubleshooting tasks. NIKA reproduces network incidents across data center and campus networks, enterprise WAN overlays, ISP backbones, SDN and P4 fabrics, Kubernetes clusters, and vendor routing environments. It connects any agent directly to a live network stack while the incident is ongoing, evaluating the ability of the AI agent to troubleshoot the network using network diagnostic tools, switch CLIs, and network telemetry data. You don't need physical hardware to run the benchmark, NIKA is powered by state-of-the-art network emulation backends like Kathará and Containerlab, so you can run it on your laptop or in the cloud.

✨ Features

  • Network emulators: Use NIKA with Kathará or Containerlab to run live networks without physical hardware.
  • Pre-built tasks: Troubleshoot network incidents without building the setup yourself. NIKA deploys the network and injects the faults.
  • Bring your AI agent: Use the included Claude Code, Codex, or LangGraph agents, or connect your own harness.
  • Agent sandboxing: Run supported agents in isolated sandboxes, with controlled access to the network, filesystem, and tools.
  • Fair evaluation: Evaluate incident detection, localization, and diagnosis under reproducible conditions, and submit your results to the leaderboard.
  • MCP network telemetry: Give agents access to network diagnostic tools, telemetry, and router and switch CLIs.
  • Parallel and remote execution: Run isolated sessions in parallel to speed up evaluations, or deploy the network on a remote server.
  • Session inspection: Review agent actions, logs, and scores in the browser with nika inspect.
  • NIKA SDK: Create benchmark tasks with new network environments, traffic patterns, and faults.

🙋 Why NIKA?

NIKA lets you plug in any LLM or agent framework and measure its operational capability under identical, reproducible conditions.

It helps different users answer questions like:

  • 💬 Network Manager "A vendor is pitching me an AI solution for network operations. It passes all the standard telecom benchmarks (TeleQnA, TeleLogs, TeleMath, 3GPP-TSG), but I need objective evidence it can handle real incidents before I sign off."
  • 💬 Network SRE "I respond to network incidents every day. I want an AI agent to help, but I'm not sure it will understand my topology or make things worse."
  • 💬 AI Researcher "I'm designing a new harness for long-horizon network tasks. I need a benchmark to ablate components, measure reproducibly, and compare against published baselines."
  • 💬 Applied ML Engineer "I want to fine-tune an open-source model on network troubleshooting and need a structured dataset paired with a rigorous evaluation framework."
  • 💬 Contributor "I want to contribute a new network environment or fault type to the community and have it evaluated systematically."

🤖 Overview

NIKA Architecture

NIKA combines two components:

  1. NIKA Benchmark — a set of tasks, each combining a network environment, a network incident, and a network traffic pattern.
  2. NIKA Orchestrator — a modular platform that deploys network environments, injects faults, connects agents to MCP tools, and evaluates their submissions.

Network types

Choose the network environment you want to troubleshoot. See the environment reference for deployment details.

Network type Environments Emulator What they run
Data center Clos dc_clos, min3clos Kathará (dc_clos), Containerlab (min3clos) FRR or Nokia SR Linux routed fabrics
Campus LAN campus_lan Kathará OSPF, DHCP, DNS, and web services
Enterprise WAN enterprise_branch Kathará Provider underlay and WireGuard/eBGP overlay
ISP backbone isp_abilene, isp_france, and other SNDlib topologies Kathará or Containerlab SNDlib backbone graphs with configurable routing
SDN fabric sdn_l3_clos Kathará ONOS and OVS Clos fabric
P4 fabric p4_dc_fabric, p4_dc_gateway Kathará BMv2 switches and P4Runtime
Kubernetes networking k8s_lab, llmd_lab Kathará k3s clusters in emulated networks
Vendor routing iosxr_simple_bgp, routeros_simple_bgp Kathará Cisco XRd or MikroTik RouterOS eBGP router pair

Network incidents

Explore the network incidents included in the working benchmark:

Failure domain Failure types Tasks
Link & Interface 6 267
Routing & Control Plane 8 196
Forwarding, Encapsulation & Policy 26 324
Service Networking 6 17
Management & Orchestration Plane 4 11
Addressing, Neighbor & Naming 13 132
Endpoint & Application 2 38
Traffic, Queueing & Resource 3 25
Security 7 88
Total 75 1,098

See the failure reference for individual faults and injection options.

Pluggable agents

NIKA includes agents built with LangGraph, mcp-agent, and AutoGen; sandboxed Codex and Claude Code agents; and community integrations such as SADE. Choose an agent or integrate your own.

Network inspection via MCP

Depending on the network environment, agents can use MCP tools to inspect hosts, routers, switches, and Kubernetes clusters, capture packets, and query Pingmesh and INT telemetry. See MCP servers for available tools.

📦 Installation

Prerequisites

  • Linux with Python 3.12+, curl, git, and sudo.
  • Docker Engine.
  • The host vrf kernel module. On Ubuntu, install it with sudo apt-get install linux-modules-extra-$(uname -r).

Install NIKA

git clone https://github.com/sands-lab/nika.git
cd nika
./scripts/install.sh

The installer keeps NIKA's tools in .venv/ and .nika_cache/ and does not install system packages.

More install options: Installation. If containers lose network access or environments fail to start, see Troubleshooting. To run networks on another server, see remote execution.

Agent sandboxing

Host agents such as LangGraph need no sandbox. For sandboxed agents (cli.*, sdk.*, community.sade), install sbx with KVM access and sign in:

./scripts/install.sh --with-sbx
sbx login

If the installer adds you to the kvm group, open a new login shell and run sbx daemon stop before the first sandboxed run. More detail: agent sandboxing.

🚀 Quick start

Choose and configure an agent

NIKA ships preconfigured agents with templates in config/. The example below sets up the LangGraph agent with an OpenAI model.

Step 1. Pick an agent. List the available agents:

uv run nika agent list

Step 2. Start from its template. The installer creates config/nika.yaml for settings. Replace it with the LangGraph template:

cp config/byo.langgraph.example.yaml config/nika.yaml

Step 3. Select the provider and model:

uv run nika config set agent.provider=openai agent.model=gpt-5-mini

Step 4. Add your API key. The installer also creates .env for credentials. Add your key to it:

OPENAI_API_KEY=<your key>

Step 5. Check the active configuration:

uv run nika config show

For other agents or a custom model endpoint, see choose and run an agent. For configuration options, see the configuration reference.

Run a task

Browse the available tasks (Ctrl+C to leave the browser), then try one with the agent you configured:

uv run nika case browse
uv run nika agent run --problem dc_clos_s_link_down

NIKA deploys the environment, injects the fault, runs the agent, closes the session, and saves the results.

Review the run in the NIKA Inspect dashboard:

uv run nika inspect

To evaluate the same agent on a benchmark release:

uv run nika benchmark run --release 0.2.0 --split test --result_dir results/my-run
uv run nika eval summary --result_dir results/my-run

Interactive shell

NIKA also provides a terminal UI for browsing tasks and running agents:

uv run nika

  • /tasks — browse and search benchmark tasks.
  • /run — choose a task and an agent, then start a run.

Type / to see all commands. See the interactive shell guide for more.

For environment and session management, see the CLI reference.

📖 Learn more

Pick the path that matches what you're trying to do:

🏁 I want to run the benchmark, any agent

  1. Quick start — run a task or a benchmark release.
  2. Run configuration: YAML settings, credentials, defaults, and migration.
  3. CLI reference: nika commands, sessions, and result paths.
  4. Browse sessions with nika inspect: local UI over result directories for agent timelines and scores.
  5. Leaderboard submission (GitHub scores + Hugging Face trajectories)

🔌 I want to connect my own agent

  1. Choose and run an agent: agent choices and hosted/self-hosted walkthroughs; agent reference for configuration and limits.
  2. Agent integration workflow: agent contract and integration workflow.
  3. Agent skills: reusable troubleshooting knowledge you can attach to an agent.
  4. Agent sandboxing: isolated microVM execution.

🌐 I want to create a new network environment

  1. Creating benchmark tasks
  2. Network environment reference
  3. Failure reference
  4. Testing guide

💬 I want to ask a question or contribute

  1. NIKA Slack community
  2. GitHub issues

Network management benchmarks

NIKA is part of a growing ecosystem. The table below compares NIKA with other benchmarks in terms of their focus, agent interactivity, variety, scale, and realism. While the best benchmark depends on your use case, NIKA currently outstands for realistic agentic evaluations in online environments**.

Benchmark Description Variety Scale Environment Realism Type Best for
NIKA Live network troubleshooting ⭐️⭐️⭐️ 75 registered fault types 40 network environments ⭐️⭐️ 1,098 tasks ⭐️⭐️⭐️ ✔ Kathará/Containerlab emulation ✔ Vendor CLIs & telemetry tools 🟢 Online Agentic evals
NetOpsBench Live network troubleshooting ⭐️ 13 fault types 1 network type ⭐️⭐️ ~600 incident variants ⭐️⭐️⭐️ ✔ Containerlab emulation ✔ Vendor CLIs & telemetry tools 🟢 Online Agentic evals
NetArena Network operations ⭐️ 3 setups, 5 fault types ⭐️⭐️⭐️ ~9,000 variants ⭐️⭐️ Mininet Basic netutils (e.g., ping) 🟢 Online Large-scale synthetic variants for ML
NetConfEval Basic network configuration ⭐️ Reachability, waypoint, load balancing on 8x topologies ⭐️⭐️⭐️ ~3,000 variants ⭐️ Simple offline validator 🔴 Offline / Static Basic LLM config-generation capability
Cornetto Config-repair with formal verification ⭐️⭐️ 50 fault types, misconfigurations only ⭐️⭐️ 231 scenarios, 20-754x topology size ⭐️⭐️ Batfish 🔴 Offline / Static Basic LLM config-fix capability
GSMA Open Telco Q&A telecom knowledge ⭐️⭐️ Multiple telecom datasets ⭐️⭐️⭐️ 20,588 samples ⭐️ Simple offline validator 🔴 Offline / Static Basic LLM telecom knowledge

Notes: Type=Online indicates that agents can observe, modify and interact with a live network environment while running. Offline benchmarks evaluate pre-collected (or generated) samples.

📚 Citation

If you use NIKA in your research, please cite:

@misc{nika25long,
  title          = {A Network Arena for Benchmarking AI Agents on Network Troubleshooting},
  author         = {Zhihao Wang and Alessandro Cornacchia and Alessio Sacco and Franco Galante and Marco Canini and Dingde Jiang},
  year           = {2025},
  eprint         = {2512.16381},
  archivePrefix  = {arXiv},
  primaryClass   = {cs.NI},
  url            = {https://arxiv.org/abs/2512.16381}
}

Please also cite our NGNO '25 paper:

@inproceedings{nika25ngno,
  title        = {Towards a Playground to Democratize Experimentation and Benchmarking of AI Agents for Network Troubleshooting},
  author       = {Wang, Zhihao and Cornacchia, Alessandro and Galante, Franco and Centofanti, Carlo and Sacco, Alessio and Jiang, Dingde},
  year         = {2025},
  publisher    = {Association for Computing Machinery},
  url          = {https://doi.org/10.1145/3748496.3748990},
  booktitle    = {Proceedings of the 1st Workshop on Next-Generation Network Observability},
  location     = {Coimbra, Portugal},
  series       = {NGNO '25}
}

🙏 Acknowledgement

We thank the authors of AIOpsLab for their useful feedbacks.

📄 License

NIKA is released under the MIT License.

README fetched from the repository 3 hours ago. The original is authoritative.

Questions

About Nika

How do I install Nika?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Nika safe to use with an AI agent?

Its trust score is 50 out of 100 (fair). It passes 3 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Nika still maintained?

Yes — the last commit was 6 hours ago. The repository has 68 stars and 18 forks and 14 open issues.