Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
OMISS MCP server. Net schedule, nets on the air, members, check-in history, awards.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"omiss": {
"command": "uvx",
"args": [
"omiss-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add omiss -- uvx omiss-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"omiss": {
"command": "uvx",
"args": [
"omiss-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"omiss": {
"type": "stdio",
"command": "uvx",
"args": [
"omiss-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub qso-graph ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.4.1) เข้า registry 9 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, MCP Server Autocad Lisp Helper
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
High-precision static analysis and debug server for AutoCAD AutoLISP (.lsp) files.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
MCP server for OMISS, the Old Man International Sideband Society: the net schedule, OMISS nets on the air now, member lookup, past nets and who checked in, the Statehood schedule, officers, awards and net statistics, through any MCP-compatible AI assistant.
Data from omiss.net's public pages; nets on the air from NetLogger. Part of the qso-graph project. No login or API key needed.
uvx omiss-mcp # run it; nothing to install
| Tool | Description | Key Parameters |
|---|---|---|
omiss_net_schedule | Every net's band, UTC time, frequency, days, band coordinator and next run; holiday dates | — |
omiss_nets_on_air | OMISS nets on the air now, from NetLogger, each matched to the net schedule | — |
omiss_member_lookup | One member: OM number, call, name, status, grid, state, county, last check-in | callsign or om_number |
omiss_checkin_history | Past nets, newest first, optionally only a member's, a band's or a date's | callsign, om_number, band, date, net_control |
omiss_net_checkins | One past net: net control, relays, notes, and the check-in list | net_id |
omiss_statehood_schedule | 40m net dates and their free-call states, and the next one | — |
omiss_officers | Officers, band coordinators, committees, appointees, past presidents | — |
omiss_awards | The awards, with the IDs the other award tools take | — |
omiss_award_rules | An award's rules, or every award's summary | award_id |
omiss_award_recipients | Who holds an award, newest first, or check one member | award_id, callsign, om_number |
omiss_net_statistics | Nets per band, last net per band, top check-ins and net controls, last check-in by state | state, top |
omiss_eligibility | For a list of callsigns (a net's check-ins): member or not, OM number, silent key, and the military, first responder and state capital rosters | callsigns |
omiss_set_callsign | Save your callsign, for omiss_nets_on_air (asked once) | callsign |
get_version_info | Service version + upstream spec version (fleet identity attestation) | — |
OMISS is an amateur-radio society that runs SSB nets on HF, from 10 to 160 meters, every day of the week. Members exchange OM numbers on the nets and work toward the society's awards. Its website publishes the net schedule, the member roster, check-in history for every net, and the award rules and recipients.
Net control often opens a net in NetLogger for check-ins well before its listed time (the 40m net has opened 35 minutes early). omiss_net_schedule gives the listed times; omiss_nets_on_air shows whether a net is open now.
Only omiss_nets_on_air needs it: it asks NetLogger, which is told which station is asking. On first use the assistant asks for your callsign and saves it. You're asked once. The other tools don't need it.
omiss.net is a volunteer-run club website, not an API. We read it gently:
| Measure | Detail |
|---|---|
| One request at a time | At most one request every 2 seconds, shared by every copy you run (Claude Desktop, Claude Code, a script) through a locked file in your settings folder. |
| Response caching | Schedule, officers, Statehood, members and award recipients 24 hours; awards and rules 7 days; history and statistics 1 hour. |
| Stale answers over errors | When the site is down or busy, the last answer comes back with its age rather than an error. |
| Back-off | A "too many requests" or "unavailable" answer stops all requests for at least a minute, longer if the site asks. |
| Request timeout | 20-second timeout. |
| User-Agent header | Every request names this project, so the site's operators can see who is asking. |
| NetLogger | omiss_nets_on_air keeps to NetLogger's call limits, shared with netlogger-mcp if you run it too. |
YYYY, YYYY-MM or YYYY-MM-DD dates, numeric net IDs, and award IDs from the site's own list. Free text is never sent to omiss.net.omiss-mcp works with any MCP-compatible client. Add the server config and restart. The tools appear automatically.
Add to claude_desktop_config.json (~/Library/Application Support/Claude/ on macOS, %APPDATA%\Claude\ on Windows):
{
"mcpServers": { "omiss": { "command": "uvx", "args": ["omiss-mcp"] } } }
Add to .claude/settings.json:
{
"mcpServers": { "omiss": { "command": "uvx", "args": ["omiss-mcp"] } } }
{
"mcpServers": { "omiss": { "command": "uvx", "args": ["omiss-mcp"] } } }
Add to .cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):
{
"mcpServers": { "omiss": { "command": "uvx", "args": ["omiss-mcp"] } } }
Add to .vscode/mcp.json in your workspace:
{
"servers": { "omiss": { "command": "uvx", "args": ["omiss-mcp"] } } }
Add to ~/.gemini/settings.json (global) or .gemini/settings.json (project):
{
"mcpServers": { "omiss": { "command": "uvx", "args": ["omiss-mcp"] } } }
"When is the OMISS 40m net, and on what frequency?"
"Is KI7MT an OMISS member? What's their OM number?"
"Which OMISS nets are on the air right now?"
"Which nets did OM 7212 check in to this year?"
"Who checked in to last night's 80m net?"
"What are the free-call states on the next 40m Statehood net?"
"What does the Alphabet Soup award require, and have I earned it?"
"Who ran the most OMISS nets as net control in the last 90 days?"
The same code works without an AI, with the same spacing and cache:
from omiss_mcp.omiss import OmissSource
om = OmissSource() me = om.member_lookup(callsign="KI7MT")"members" for net in om.checkin_history(om_number_=me["om_number"], date_="2026")["nets"]: print(net["time"], net["name"], net["checkin_count"])
Apps can name themselves, using ADIF's PROGRAMID and PROGRAMVERSION: OmissSource(program_id="MyLogger", program_version="1.0").
OMISS_MCP_MOCK=1 omiss-mcp
omiss-mcp --transport streamable-http --port 8015
git clone https://github.com/qso-graph/omiss-mcp.git
cd omiss-mcp uv sync --group dev uv run pytest
GPL-3.0-or-later