{
  "markdown": "# WorkspaceAlberta\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/women-workers-collage.png\" alt=\"Eight photographs of Canadian women building war industries: welding, machining, drafting, and finishing munitions, 1940-1945.\" width=\"100%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>Canadian industrial war production, via Library and Archives Canada.</em></p>\r\n\r\n## AI Ethics\r\n\r\nWarre & Vavasour is a startup AI lab that does not replace human workers. We build a bigger pie.\r\n\r\nEvery capability we ship exists to amplify the people already doing the work, the same promise the photographs above made to the generation that industrialized this country.\r\n\r\nIf your idea starts with headcount cuts, it is not a WorkspaceAlberta plan.\r\n\r\nWarre & Vavasour does not make apps or chatbots. Don't ask. If this is in your business plan, you are thinking about New Business wrong. We build terminals that deliver real work and pay real taxes.\r\n\r\nWarre & Vavasour acknowledges the astonishing resources this technology is consuming. Training and inference carry real energy, water, and mineral costs. Nobody asked for this. No one really asked for GRPO to be released on January 20, 2025. But it was released, and that is how all models got to reasoning; and from reasoning, we have harnesses now.\r\n\r\nSo this is just the way the world is and it is far too cheap not to deploy post-human-scale reasoning tools on a desktop device that genuinely accelerates Canadian manufacturing, development, and industrialization.\r\n\r\nSo yes: we acknowledge the cost. But Canadian infrastructure, right-sized models on hardware you can touch, and Canadian data retention means your enterprise AI stack is entirely Canadian and NATO supplier friendly.\r\n\r\nThere is no longer an American dependency on enterprise, on device, Canadian AI at scale.\r\n\r\nIt is 1834 all over again.\r\n\r\nThe railroad has been built.\r\n\r\nThe steam engine has been designed.\r\n\r\nThe world as we know it has changed.\r\n\r\nWorkspaceAlberta is the way to stay ahead of these changes.\r\n\r\n## Getting Started\r\n\r\nThe hosted MCP server is live and free for browsing — no install, no account, no API key. Point any MCP-capable assistant at it:\r\n\r\n```\r\nhttps://elbowsupknivesout.warreandvavasour.com/mcp\r\n```\r\n\r\n**Cursor, Claude Code, and other HTTP-native clients** — add to your MCP config:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"workspacealberta\": {\r\n      \"url\": \"https://elbowsupknivesout.warreandvavasour.com/mcp\"\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n**Claude Desktop** (no native HTTP transport) — bridge with `mcp-remote`:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"workspacealberta\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"mcp-remote\", \"https://elbowsupknivesout.warreandvavasour.com/mcp\"]\r\n    }\r\n  }\r\n}\r\n```\r\n\r\nThen ask it something a real owner would ask:\r\n\r\n- *\"I run a CWB welding shop in Red Deer — what government work fits my shop right now?\"*\r\n- *\"What closes this week? I don't want to miss anything.\"*\r\n- *\"Give me my morning brief — what fits us, and what's closing soon?\"*\r\n\r\n### Adding your Pro key\r\n\r\nSearch, details, deadlines, and the daily brief are open to everyone. Six tools —\r\nbid rooms, Cohere tender review, the watchlist, and bid/no-bid scorecards — need an\r\nactive subscription. Your key arrives by email after checkout and starts with `wa_live_`.\r\n\r\nSend it as an `Authorization` header. For HTTP-native clients:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"workspacealberta\": {\r\n      \"url\": \"https://elbowsupknivesout.warreandvavasour.com/mcp\",\r\n      \"headers\": {\r\n        \"Authorization\": \"Bearer wa_live_YOUR_KEY\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\nFor Claude Desktop, set it on the bridge instead:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"workspacealberta\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@warreandvavasour/workspace-alberta\"],\r\n      \"env\": { \"WORKSPACEALBERTA_API_KEY\": \"wa_live_YOUR_KEY\" }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\nOn a Linux workstation or a leased terminal, let the installer do it — it verifies the\r\nkey against the server, writes `~/.config/workspacealberta/credentials` at mode 600, and\r\nregisters the authenticated endpoint with whichever CLIs are present:\r\n\r\n```bash\r\n./installer/configure-subscriber-key.sh\r\n```\r\n\r\nCheck a key at any time:\r\n\r\n```bash\r\ncurl -H \"Authorization: Bearer wa_live_YOUR_KEY\" \\\r\n  https://elbowsupknivesout.warreandvavasour.com/me\r\n```\r\n\r\n**Run it locally instead** (the whole server is pure Python):\r\n\r\n```bash\r\npython -m pip install -r requirements.txt\r\npython mcp-servers/canadabuys/server.py\r\n```\r\n\r\nSmoke test: `python -m unittest tests.test_canadabuys_mcp_smoke`. Client config variants live in [`mcp.json.example`](mcp.json.example); full tool and REST reference in [`docs/mcp-tool-reference.md`](docs/mcp-tool-reference.md).\r\n\r\n---\r\n\r\n## Canadian AI Security Is Canadian National Security\r\n\r\nWorkspaceAlberta is a Canadian procurement intelligence workspace. It connects public tender data to the people who can actually do the work: fabricators, mills, contractors, shops, manufacturers, and the small teams that keep the real economy moving.\r\n\r\nThe direction is explicit:\r\n\r\n- **Canadian demand signals:** CanadaBuys and Alberta Purchasing Connection in one search surface.\r\n- **Canadian AI company:** Cohere as the first sovereign-model route.\r\n- **Canadian open source model:** Command A+ `command-a-plus-05-2026`, with the W4A4 Hugging Face route available through `CohereLabs/command-a-plus-05-2026-w4a4`.\r\n- **Canadian tools:** practical MCP wiring for the procurement sources Canadian firms already need to watch.\r\n- **Canadian compute path:** designed so sensitive public-sector and industrial workflows can move toward Canadian infrastructure, including Canadian chips and data-centre capacity where those options are available.\r\n\r\nThe point is not nationalism as decoration. The point is operational independence.\r\n\r\nIf Canadian companies are going to bid Canadian work, understand Canadian supply chains, and protect Canadian industrial capacity, then the AI layer underneath that work matters.\r\n\r\n---\r\n\r\n## The Last Mile of Work\r\n\r\nAI promised 5X productivity. Most small businesses got a chatbot that writes mediocre marketing copy.\r\n\r\nThe model is not the whole bottleneck. The connection is.\r\n\r\nWiring up the places where the work lives usually costs money, time, and technical patience a small business does not have. Government tender databases are a perfect example: the work is public, the demand is real, but the discovery process is still awkward enough that good companies miss good opportunities.\r\n\r\n**WorkspaceAlberta solves the last mile** by giving an AI assistant the wiring it needs to search, compare, summarize, and brief public procurement opportunities from inside the workspace where the owner is already working.\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/helene-lalonde-textile.jpg\" alt=\"Hélène Lalonde drawing in ends at a loom, Montreal Cottons, Valleyfield.\" width=\"100%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>Hélène Lalonde drawing in ends at Montreal Cottons, Valleyfield — Nicholas Morant / National Film Board of Canada. Photothèque / Library and Archives Canada, PA-160566 (copyright expired).</em></p>\r\n\r\n---\r\n\r\n## What This Actually Does\r\n\r\nWorkspaceAlberta is an MCP-first workspace for Canadian procurement.\r\n\r\nIt now brings together:\r\n\r\n- **CanadaBuys** for federal tender notices\r\n- **Alberta Purchasing Connection** for Alberta public-sector opportunities\r\n- **Cohere Command A+** for optional tender analysis and fit review\r\n- **A daily bid brief** that summarizes the market, best-fit matches, and deadlines from both sources\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/welder-robin-nodwell-calgary-1963.jpg\" alt=\"A welder at Robin Nodwell Ltd., Calgary, 1963.\" width=\"55%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>Welder at Robin Nodwell Ltd., Calgary, 1963 — from the Provincial Archives of Alberta series \"What Alberta Makes Makes Alberta\" (PA3324, no known copyright restrictions).</em></p>\r\n\r\nThe assistant can:\r\n\r\n- search national and Alberta opportunities together\r\n- inspect a posting by reference number\r\n- list what is closing soon\r\n- match opportunities against a saved business profile\r\n- generate a free daily brief for the owner or estimator\r\n- use Cohere Command A+ to review tender fit, risks, requirements, and next actions\r\n\r\nThis is meant to answer practical questions:\r\n\r\n- What work is open right now?\r\n- Which opportunities fit what we actually do?\r\n- What closes soon?\r\n- What should we read first?\r\n- What should we ignore?\r\n\r\n---\r\n\r\n## The Custom Procurement MCP Server\r\n\r\nThe custom MCP server is the product.\r\n\r\nIt is a deployed working endpoint that knows the live public procurement pipeline exposed by **CanadaBuys** and **Alberta Purchasing Connection**. It can serve that pipeline back to users through an AI assistant based on what they do, where they work, what they can supply, and what deadlines matter.\r\n\r\nThe core tools are:\r\n\r\n- `search_opportunities` for unified federal and Alberta search\r\n- `get_opportunity_details` for a single posting by reference number\r\n- `list_deadlines` for what is closing soon\r\n- `find_matching_opportunities` for profile-based ranking\r\n- `daily_bid_brief` for the daily owner/operator summary\r\n- `analyze_contract_with_cohere` for optional Cohere Command A+ tender review\r\n- `process_bid_room` for live E2B attachment processing: Cohere Parse turns tender PDFs and images into markdown, then Command A+ reviews the evidence\r\n- `watch_opportunity` / `list_watchlist` for a persistent tracking list with closing-date countdowns\r\n- `bid_no_bid_scorecard` for a fast deterministic go/caution/no-go read on any reference\r\n\r\nThe full tool and REST reference lives in [`docs/mcp-tool-reference.md`](docs/mcp-tool-reference.md); the architecture walkthrough is [`docs/architecture.md`](docs/architecture.md).\r\n\r\nMCP is the first-class interface because this is meant to be used by agents. The same procurement core also exposes REST/OpenAPI so other AI tools can hook into the same contract intelligence without needing native MCP support.\r\n\r\nUnderneath the endpoint is pure Python procurement logic. The data processing, filtering, matching, deadline ranking, and brief generation do not require an LLM. The model layer is added only where judgment helps: risk review, requirements explanation, and bid/no-bid reasoning.\r\n\r\nE2B sandboxes are the isolated compute layer for heavier bid-room work: opening tender packages, turning attachments into evidence, and returning structured bid artifacts without putting unknown user files inside the always-on MCP service. Cohere Parse is the document layer — it converts PDF pages and images into structured markdown (tables, forms, drawings) before review. Command A+ is the review layer: it runs inside the short-lived sandbox with read-only evidence tools over that markdown. If Parse is unset, times out, or rejects a file, the existing pdfminer/python-docx/openpyxl extractors stay as fallback. The build plan lives in [`docs/e2b-bid-room-plan.md`](docs/e2b-bid-room-plan.md), and the business-owner operating diagram lives in [`docs/bid-room-operating-diagram.md`](docs/bid-room-operating-diagram.md).\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/machinist-canada-oil-tool-calgary-1963.jpg\" alt=\"A machinist at Canada Oil Tool Manufacturing, Calgary, 1963.\" width=\"55%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>Machinist at Canada Oil Tool Manufacturing, Calgary, 1963 — precision work for the energy sector. Provincial Archives of Alberta, PA3318/2 (no known copyright restrictions).</em></p>\r\n\r\n---\r\n\r\n## Why This Matters\r\n\r\nGet 50% of the population 10% better. Every year. That is generational growth.\r\n\r\nNot 10 developers 500% better. That is happening. But it does not scale to the economy.\r\n\r\n*\"How do I save 5 hours a week?\" \"How do I save $700 a month?\"*\r\n\r\nThose are the real questions. This is how you answer them.\r\n\r\nAlberta's **steel, lumber, and metals** industries represent over **2,500 companies** with a combined economic impact exceeding **$37 billion annually**.\r\n\r\n| Sector | Companies | Economic Impact | Jobs Supported |\r\n|--------|-----------|-----------------|----------------|\r\n| Forestry & Wood Products | 676+ businesses, 40 major mills | $14 billion | 41,400 |\r\n| Fabricated Metal Products | 1,871 establishments | $23.4B manufacturing sector | 16,600 |\r\n| Primary & Machinery Manufacturing | 200+ facilities | Included above | 12,000+ |\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/collage-what-alberta-makes.jpg\" alt=\"Three photographs of workers pouring steel at the Foothills Steel Foundry, Calgary, 1963.\" width=\"100%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>What Alberta makes makes Alberta — the pour at Foothills Steel Foundry, Calgary, 1963. Provincial Archives of Alberta, PA3315.1–.3 (no known copyright restrictions).</em></p>\r\n\r\nBehind every one of these companies are dozens of systems that need to talk to each other just to get anything done: quoting software, inventory spreadsheets, accounting packages, project trackers, supplier portals, and government tender databases.\r\n\r\nAny tool that helps a fabricator **create demand**, a mill **manufacture more efficiently**, or a contractor **cut costs** has multiplier effects across the entire province:\r\n\r\n- **$4 billion** in forest product exports alone\r\n- **$1.6 billion** in annual wages paid to forestry workers\r\n- **70 communities** across Alberta that depend directly on these industries\r\n- **$988 million** in tax revenue flowing back to the province\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/clothing-salvage-geco.jpg\" alt=\"Clothing salvage centre at the General Engineering Company munitions factory, Scarborough, circa 1943.\" width=\"49%\">\r\n  <img src=\"docs/assets/victory-gardens-toronto-1943.jpg\" alt=\"A.J. Denne tending a V-shaped victory garden at 15 Pine Crescent, Toronto, 5 June 1943.\" width=\"49%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>Home-front salvage and food: a clothing depot at the GECO munitions works, Scarborough, c. 1943 (Archives of Ontario, I0004928, public domain); A.J. Denne's victory garden, Toronto, 5 June 1943 (City of Toronto Archives, fonds 1266, CC BY 2.0).</em></p>\r\n\r\nMore contracts won. More jobs kept. More skill developed. More value staying here at home.\r\n\r\n---\r\n\r\n## Technical Notes\r\n\r\nMCP server:\r\n\r\n- [`mcp-servers/canadabuys/server.py`](mcp-servers/canadabuys/server.py)\r\n- [`mcp-servers/canadabuys/server_http.py`](mcp-servers/canadabuys/server_http.py) for hosted StreamableHTTP MCP plus REST/OpenAPI\r\n- [`procurement_core/service.py`](procurement_core/service.py) for the shared Python procurement core\r\n- [`procurement_core/e2b_bid_room.py`](procurement_core/e2b_bid_room.py) for live E2B bid-room sandbox processing\r\n\r\nSmoke test:\r\n\r\n- [`tests/test_canadabuys_mcp_smoke.py`](tests/test_canadabuys_mcp_smoke.py)\r\n- [`tests/test_procurement_http_app.py`](tests/test_procurement_http_app.py)\r\n- `python scripts/e2b_bid_room_smoke.py` for a live E2B sandbox test\r\n\r\nConfiguration:\r\n\r\n- [`AGENTS.md`](AGENTS.md) for Codex/OpenClaw guidance\r\n- [`mcp-servers/canadabuys/README.md`](mcp-servers/canadabuys/README.md) for server tools and environment variables\r\n- [`docs/setup-productization-track.md`](docs/setup-productization-track.md) for the combined WorkspaceAlberta + private `wvsetup` setup track\r\n- [`docs/codex-setup.md`](docs/codex-setup.md) for local setup notes\r\n- [`docs/workspace-alberta-hermes-install.md`](docs/workspace-alberta-hermes-install.md) for the branded Hermes / Raspberry Pi setup draft\r\n\r\nRaspberry Pi terminal setup:\r\n\r\n- [`docs/deployment-ops/pi-out-of-box-setup.md`](docs/deployment-ops/pi-out-of-box-setup.md) — **start here** for new Pi setups, from sealed box to working CEO stack\r\n- [`docs/deployment-ops/ceo-pi-setup.md`](docs/deployment-ops/ceo-pi-setup.md) — software installer reference (assumes OS already installed)\r\n- [`docs/deployment-ops/tailscale-pi-remote-support.md`](docs/deployment-ops/tailscale-pi-remote-support.md) — remote support via Tailscale\r\n\r\nData and model sources:\r\n\r\n- CanadaBuys open tender notices\r\n- Alberta Purchasing Connection public opportunity API\r\n- Cohere Command A+ via Cohere API\r\n- CohereLabs Command A+ W4A4 on Hugging Face: <https://huggingface.co/CohereLabs/command-a-plus-05-2026-w4a4>\r\n\r\nImage source notes live in [`docs/imagery-sources.md`](docs/imagery-sources.md).\r\n\r\n<p align=\"center\">\r\n  <img src=\"docs/assets/collage-museum-wall.jpg\" alt=\"A museum wall of Canadian industrial and home-front photography: munitions, victory gardens, synthetic rubber, and shops.\" width=\"100%\">\r\n</p>\r\n\r\n<p align=\"center\"><em>The museum wall. Top row: inspecting ammunition at GECO, Scarborough, c. 1943 (Archives of Ontario, I0058215, public domain); the Perry sisters in the plant vegetable garden, Dominion Arsenals, 24 August 1942 (Harry Rowed / NFB Photothèque / LAC, CC BY 2.0); cutting cloth for military uniforms at Tip Top Tailors, Toronto, 1939–45 (Gordon W. Powley / Archives of Ontario, C 109-2-0-18, copyright expired); assembling a coal-pulverizing mill at Polymer Rubber, Sarnia, October 1943 (Harry Rowed / NFB Photothèque / LAC, e000761792, copyright expired). Bottom row: a machinist laughing at Small Arms Limited, 26 May 1942 (Nicholas Morant / LAC, e000760725, CC BY 2.0); welding Bren-gun magazine clips at John Inglis, April 1944 (Ronny Jaques / LAC, e000762114, CC BY 2.0); packing crates at GECO, c. 1943 (Archives of Ontario, I0004900, public domain); assembling a Bren-gun blank at John Inglis, 10 May 1941 (NFB Photothèque / LAC, e000760439, copyright expired).</em></p>\r\n\r\n---\r\n\r\n*Data sources: [Statistics Canada](https://www150.statcan.gc.ca), [Innovation Canada](https://ised-isde.canada.ca), [Alberta Forest Products Association](https://albertaforestproducts.ca), [Job Bank Canada](https://www.jobbank.gc.ca)*\r\n",
  "bytes": 17799,
  "sha": "a51fbb6de0b130d134c1721f95f99eabeb7591f6f20c279e3f53eab8e866c0ce",
  "repo_slug": "harleycoops/workspacealberta",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_harleycoops_workspace_alberta_3419c00b/readme"
}