openwifi-mcp
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., "@openwifi-mcptriage WIFI-15461"
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.
openwifi-mcp
Three MCP servers that turn Claude Code into an interactive OpenWiFi
triage assistant. When registered in your project's .mcp.json, Claude
gains native tools to search the linux-wireless patch mirror, look up
Jira tickets, run the LLM triage pipeline, dry-run + apply upstream
backports, and drive OpenWiFi builds — all from within the same
conversation you're already having about a bug.
Nothing runs in the cloud. All state lives on your machine or the build host you already control.
What ships
Server | Purpose | Backing service |
| Read-only Jira ticket lookup + similar-ticket search | |
| linux-wireless FTS5 search + LLM triage + backport helpers | |
|
| Your OpenWiFi build project |
All three are stdio-transport MCP servers written in Python with FastMCP.
Related MCP server: codex-mcp-server
Tools exposed
openwifi-jira (read-only):
jira_list_releases— synced Jira fixVersions with ticket countsjira_search_tickets(q, fix_version?, status?, assignee?, limit?)— full-text searchjira_get_ticket(key)— full ticket incl. comments, attachments, changelog, cross-refsjira_get_attachment_text(id)— text content of indexed attachmentsjira_ticket_similar(anchor, limit?)— similar tickets by key or symptom
openwifi-patches:
patches_stats— DB stats + LLM availabilitypatches_search(q, subject_prefix?, author?, since?, until?, limit?)patches_get(message_id)— raw RFC 5322 bodypatches_expand_query(symptom)— LLM-generated FTS5 query previewpatches_triage(symptom | ticket, top_n?)— full pipeline (patches + LLM explanations + similar tickets)patches_dry_run_backport(message_id, tree)— non-mutating apply checkpatches_apply_backport(message_id, tree)— MUTATING — commits to the tree
openwifi-build — wraps your Claude-OpenWiFi make targets:
build_help,build_status,build_tail(tag, lines?),build_fetch(tag)(non-mutating)build_start(branch, target, pr?)— MUTATING — kicks off a long-running buildbuild_deploy(tag, ap, confirm=False)— MUTATING — sysupgrades a real AP
Install
git clone https://github.com/YOU/openwifi-mcp.git
cd openwifi-mcp
./setup.shThe setup creates a venv, installs the package editable, and writes
.mcp.snippet.json you can drop into your project's .mcp.json (or
~/.claude.json for user-scoped access).
Point three env vars at your existing services:
TICKET_INDEX_URL = http://<host>:20504 # openwifi-ticket-index
PATCH_SEARCH_URL = http://<host>:20503 # openwifi-kernel-patches
CLAUDE_OPENWIFI_ROOT = /abs/path/to/Claude-OpenWiFiRestart Claude Code and the tools appear in every session under that project.
Suggested permission allowlist
Add to your project's .claude/settings.json so read-only tools skip
the confirmation prompt but mutating tools still require it:
{
"permissions": {
"allow": [
"mcp__openwifi-jira__*",
"mcp__openwifi-patches__patches_stats",
"mcp__openwifi-patches__patches_search",
"mcp__openwifi-patches__patches_get",
"mcp__openwifi-patches__patches_expand_query",
"mcp__openwifi-patches__patches_triage",
"mcp__openwifi-patches__patches_dry_run_backport",
"mcp__openwifi-build__build_help",
"mcp__openwifi-build__build_status",
"mcp__openwifi-build__build_tail",
"mcp__openwifi-build__build_fetch"
]
}
}patches_apply_backport, build_start, and build_deploy are
deliberately NOT allowlisted — they mutate real state and should always
prompt.
Slash command / skill
Pair with a skill like this in .claude/skills/openwifi-triage/SKILL.md
so the user can just type /openwifi-triage WIFI-15461 (see the
example in Claude-OpenWiFi).
License
MIT. See LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/firasshaari/openwifi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server