yard-desk
Click on "Deploy 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., "@yard-deskWhat jobs are on today and what's overdue?"
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.
Yard Desk
Simulated Alexa+ trade desk for a small CCTV / field business (Sky Guard–style ops).
Not a shell — a practice desk with session memory, editable drafts, and an activity audit. An agent lists today’s jobs, triages inbox items, drafts client chases, and proposes invoices — always through real MCP tools. A human must Approve / Leave it / Later. Yard Desk never auto-sends money or legal commitments.
Built for the Amazon Developer Hackathon — track: Alexa+.
This is a new project created during the submission window (not a pre-existing product wrap).
No payment cards. No Nebius.
Eligibility map
Requirement | How Yard Desk meets it |
Real MCP server (official Python SDK) |
|
Streamable HTTP | Mounted at |
Tools actually called in code | Sim agent uses |
Simulated Alexa+ experience | Cream/navy Sky Guard desk phone UI; MCP tool names on chip tooltips |
Works without paid APIs | Rule-based dry-run agent when no LLM key |
Human gate | Yes, go ahead / No, leave it / Later → |
Related MCP server: tessera-mcp
Product depth
Feature | What you get |
Session memory | Remembers last item/job; “chase them” / “invoice it” work |
Editable drafts | Full draft in the decision bar — edit before Yes/No/Later |
Activity audit | Sidebar Activity + |
Chat yes/no | Typing “yes” / “leave it” / “later” maps to |
Richer tools |
|
MCP tools
Tool | Purpose |
| Sample field schedule |
| Single job detail (address, tech, £ totals) |
| Single inbox item |
| Overdue / chase items with amounts |
| Recent drafts + gate decisions |
| Classify a message |
| Draft chase text for overdue bill |
| Draft invoice send proposal after job complete |
|
|
How MCP Streamable HTTP is exposed
URL path:
http://127.0.0.1:43150/mcpTransport: Streamable HTTP (
json_response=True,stateless_http=True)SDK: official
mcpPython package v2 (MCPServer)FastAPI lifespan enters
mcp.session_manager.run()so the mounted ASGI app can serve sessions.
Verify the MCP endpoint
With the server running:
# Health (REST) confirms tools + path
curl -s http://127.0.0.1:43150/api/health | python3 -m json.tool
# MCP initialize (Streamable HTTP / JSON)
curl -s -X POST http://127.0.0.1:43150/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{
"jsonrpc":"2.0",
"id":1,
"method":"initialize",
"params":{
"protocolVersion":"2025-11-25",
"capabilities":{},
"clientInfo":{"name":"yard-desk-verify","version":"0.2.0"}
}
}'You should get a JSON-RPC result with serverInfo.name ≈ yard-desk (not HTTP 404/421).
MCP Inspector
If you have the MCP Inspector:
npx @modelcontextprotocol/inspectorConnect with transport Streamable HTTP to:
http://127.0.0.1:43150/mcpList tools — you should see the Yard Desk tools above. Call list_todays_jobs from the Inspector to prove the server.
In-process (no HTTP), tests also call tools via Client(mcp).
Product UI
Cream / navy phone desk for Sky Guard ops — Instrument Sans / DM Sans, expandable job cards (address, tech, £), inbox badges after decisions (chased / left / later), editable draft textarea in the Decision Gate, and an Activity feed in the sidebar. Main chrome stays trade-desk language; MCP / Streamable HTTP details sit in a subtle footer and settings chip. Tool chips show human labels with the technical MCP · tool_name(...) name in the tooltip for judges.
Desk walkthrough (demo video)
Start the app (
./scripts/start.sh).Open http://127.0.0.1:43150/.
Use chips or type:
What's on today? →
list_todays_jobs(at-risk called out + next action)What's overdue? →
list_overduewith £ + offer to chase top oneChase Ridgeway → triage + draft + editable pending decision
Invoice Oak Street →
get_jobtotals + invoice draftFollow-ups: chase them / invoice it / chat yes
Edit the draft textarea, then Yes, go ahead / No, leave it / Later →
record_decision(edited text on Activity).Watch the Activity panel and inbox badges update.
Stack
Python 3 + FastAPI + official MCP SDK (
MCPServer, Streamable HTTP)Package
yard_desk/Product cream/navy Sky Guard desk UI (
web/static/)uvicornon port 43150
Quick start
cd yard-desk
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
cp .env.example .env # optional — leave LLM keys blank for dry-run
.venv/bin/pytest -q
./scripts/start.shThen open http://127.0.0.1:43150/
curl -s http://127.0.0.1:43150/api/health | python3 -m json.tool
curl -s http://127.0.0.1:43150/api/jobs | python3 -m json.tool
curl -s http://127.0.0.1:43150/api/activity | python3 -m json.tool
curl -s -X POST http://127.0.0.1:43150/api/chat \
-H 'Content-Type: application/json' \
-d '{"message":"What'\''s on today?"}' | python3 -m json.toolOptional later — AWS Builder mini
Not required for this MVP. A future iteration can add an AWS Builder ID–oriented mini (e.g. deploy notes / Cognito-less static hosting) without changing the MCP tool contract.
Seed desk items
Overdue invoice chase (Ridgeway / INV-2841)
Quote request (cameras + NVR)
Supplier delay (Ash Grove parts)
Spammy vendor blast
Family / household bill reminder
Job complete — Oak Street ready to invoice
License
MIT © MN Labs
This server cannot be deployed
Maintenance
Related MCP Connectors
- OctopadOAuthapp.octopad
The back-office workspace for your team's AIs: tasks, knowledge and context shared over MCP.
Agent-first task marketplace MCP — discover, claim, and deliver paid workspace tasks.
184 MCP tools for field-service CRM, scheduling and double-entry accounting. Hosted; BYO agent.
Build and run grounded business agents over MCP: agents, knowledge bases, skills, Storylines.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenance556-tool MCP server giving AI agents full access to the FutureSense business platform. Covers 10 app domains: invoicing, payroll, accounting, CRM, booking, content creation, website builder, quotations, email, and more. Works with Claude, ChatGPT, Gemini, Cursor, and any MCP-compatible client.MIT
- AlicenseAqualityBmaintenanceEnables AI agents to manage a fictional B2B workspace SaaS (Tessera) with tools for ticketing, invoicing, customer management, and trial extensions, featuring a human-in-the-loop confirm pattern for safety.713 npmMIT
- AlicenseNot gradedqualityBmaintenanceProvides MCP tools for operations desk tasks including calendar availability, customer lookup, quote calculation, and notification sending. Includes an internal agentic orchestrator that consumes the same MCP tools via protocol.MIT
- FlicenseAqualityBmaintenanceA local-first MCP server that handles daily work tasks through your AI assistant: converts meeting notes into todos, manages todo lifecycle, tracks work hours, generates daily/weekly reports, organizes files via move-only operations, and diagnoses dev environments, all guarded by a human-maintained preview/apply safety model.25-