workspace-alberta

Canadian procurement intelligence: CanadaBuys and Alberta tenders, ranked for your shop.

使うべきか

品質と安全性

A
説明の品質
89%
スキーマの完全性
77%
命名の品質
95%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(4)

  • LOWTool 'refresh_data' description lacks action verbrefresh_data 内
  • LOWTool 'get_my_profile' description lacks action verbget_my_profile 内
  • LOWTool 'get_alberta_opportunity_details' name length outside 3-30 rangeget_alberta_opportunity_details 内
  • LOWTool 'summarize_alberta_opportunities' name length outside 3-30 rangesummarize_alberta_opportunities 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~4,180トークン数(ツール定義)
~1.4 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 3.27%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "workspace-alberta": {
      "command": "npx",
      "args": [
        "@warreandvavasour/workspace-alberta"
      ]
    }
  }
}

実行可能なパッケージ

npm@warreandvavasour/workspace-alberta0.1.1stdio

リモートエンドポイント

https://elbowsupknivesout.warreandvavasour.com/mcpstreamable-http

できること

ツール一覧

ツール(26)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢get_server_guide

Start here when connecting an agent: explains what WorkspaceAlberta does, the search-to-bid-review workflow, handoff fields, data boundaries and unsupported actions. No model or network call.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢search_contracts(keywords, province, limit)

Search Canadian federal government contracts. Filter by keywords, province, or status.

入力スキーマ

{
  "type": "object",
  "properties": {
    "keywords": {
      "type": "string",
      "description": "Search keywords (e.g., 'steel', 'construction', 'IT services')"
    },
    "province": {
      "type": "string",
      "description": "Filter by province (e.g., 'Alberta', 'Ontario', 'Quebec')"
    },
    "limit": {
      "type": "integer",
      "description": "Maximum results (default 10)",
      "default": 10
    }
  }
}
🟢get_contract_details(reference)

Get full details of a contract by reference or solicitation number.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "Reference or solicitation number"
    }
  },
  "required": [
    "reference"
  ]
}
🟢list_upcoming_deadlines(days, province)

List contracts with upcoming closing deadlines.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Show contracts closing within N days (default 30)",
      "default": 30
    },
    "province": {
      "type": "string",
      "description": "Filter by province"
    }
  }
}
🟢summarize_contracts

Get a summary of available contracts.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
⚪refresh_data

Refresh contract data from CanadaBuys.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🔴set_business_profile(company_name, location, description)

Tell me about your business. I'll save your profile and use it to find matching government contracts.

入力スキーマ

{
  "type": "object",
  "properties": {
    "company_name": {
      "type": "string",
      "description": "Your company name"
    },
    "location": {
      "type": "string",
      "description": "Where you're located (e.g., 'Edmonton, Alberta')"
    },
    "description": {
      "type": "string",
      "description": "What does your business do? Describe your products, services, and capabilities."
    }
  },
  "required": [
    "description"
  ]
}
🟢find_opportunities(days, limit, profile)

Find government contracts that match your business profile. Returns scored and ranked opportunities with explanations of why each one fits your capabilities. Pass an inline `profile` to describe the business per call.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Only show contracts closing within N days (default: 60)",
      "default": 60
    },
    "limit": {
      "type": "integer",
      "description": "Maximum opportunities to return (default: 15)",
      "default": 15
    },
    "profile": {
      "type": "object",
      "description": "Inline business profile used for this call only. Overrides any saved profile. On the shared public endpoint without a subscriber key, this is the way to describe your business.",
      "properties": {
        "company_name": {
          "type": "string",
          "description": "Company name"
        },
        "location": {
          "type": "string",
          "description": "Where the business is located, e.g. 'Edmonton, Alberta'"
        },
        "description": {
          "type": "string",
          "description": "What the business does: products, services, capabilities"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional explicit capability keywords; derived from description when omitted"
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional industries such as steel, lumber, aluminum, construction"
        }
      }
    }
  }
}
🟢get_my_profile

View your current business profile that's being used to match contracts.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🟢search_opportunities(keywords, source, province, category, limit)

Search CanadaBuys and Alberta Purchasing Connection together.

入力スキーマ

{
  "type": "object",
  "properties": {
    "keywords": {
      "type": "string",
      "description": "Search words or phrase"
    },
    "source": {
      "type": "string",
      "description": "all, federal, or alberta",
      "default": "all"
    },
    "province": {
      "type": "string",
      "description": "Optional province or delivery region filter"
    },
    "category": {
      "type": "string",
      "description": "Optional category such as services, goods, construction, steel, lumber"
    },
    "limit": {
      "type": "integer",
      "description": "Maximum combined results (default 20, max 50)",
      "default": 20
    }
  }
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "opportunities": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "reference": {
            "type": "string"
          },
          "buyer": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "closing": {
            "type": "string"
          },
          "region": {
            "type": "string"
          },
          "solicitation": {
            "type": "string"
          }
        }
      }
    }
  }
}
🟢get_opportunity_details(reference)

Get details for a federal CanadaBuys or Alberta APC opportunity by reference number.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "Reference number, such as AB-2026-03908 or a CanadaBuys reference"
    }
  },
  "required": [
    "reference"
  ]
}
🟢list_deadlines(days, source, province, category, limit)

List CanadaBuys and Alberta APC opportunities closing soon.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Show opportunities closing within N days (default 30)",
      "default": 30
    },
    "source": {
      "type": "string",
      "description": "all, federal, or alberta",
      "default": "all"
    },
    "province": {
      "type": "string",
      "description": "Optional province or delivery region filter"
    },
    "category": {
      "type": "string",
      "description": "Optional category filter"
    },
    "limit": {
      "type": "integer",
      "description": "Maximum combined results (default 20, max 50)",
      "default": 20
    }
  }
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "opportunities": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "reference": {
            "type": "string"
          },
          "buyer": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "closing": {
            "type": "string"
          },
          "region": {
            "type": "string"
          },
          "solicitation": {
            "type": "string"
          }
        }
      }
    }
  }
}
🟢find_matching_opportunities(days, limit, profile)

Rank CanadaBuys and Alberta APC opportunities against a business profile. Pass an inline `profile` to describe the business per call.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Only show opportunities closing within N days (default 60)",
      "default": 60
    },
    "limit": {
      "type": "integer",
      "description": "Maximum opportunities to return (default 15, max 30)",
      "default": 15
    },
    "profile": {
      "type": "object",
      "description": "Inline business profile used for this call only. Overrides any saved profile. On the shared public endpoint without a subscriber key, this is the way to describe your business.",
      "properties": {
        "company_name": {
          "type": "string",
          "description": "Company name"
        },
        "location": {
          "type": "string",
          "description": "Where the business is located, e.g. 'Edmonton, Alberta'"
        },
        "description": {
          "type": "string",
          "description": "What the business does: products, services, capabilities"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional explicit capability keywords; derived from description when omitted"
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional industries such as steel, lumber, aluminum, construction"
        }
      }
    }
  }
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "reference": {
            "type": "string"
          },
          "buyer": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "closing": {
            "type": "string"
          },
          "region": {
            "type": "string"
          },
          "solicitation": {
            "type": "string"
          },
          "score": {
            "type": "integer"
          },
          "days_until": {
            "type": [
              "integer",
              "null"
            ]
          },
          "reasons": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      }
    }
  }
}
🟢daily_bid_brief(days, limit, profile)

Generate a free daily bid brief from CanadaBuys and Alberta APC for a business profile. Pass an inline `profile` to describe the business per call.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Look ahead this many days for matches and deadlines (default 14)",
      "default": 14
    },
    "limit": {
      "type": "integer",
      "description": "Maximum items per section (default 5, max 10)",
      "default": 5
    },
    "profile": {
      "type": "object",
      "description": "Inline business profile used for this call only. Overrides any saved profile. On the shared public endpoint without a subscriber key, this is the way to describe your business.",
      "properties": {
        "company_name": {
          "type": "string",
          "description": "Company name"
        },
        "location": {
          "type": "string",
          "description": "Where the business is located, e.g. 'Edmonton, Alberta'"
        },
        "description": {
          "type": "string",
          "description": "What the business does: products, services, capabilities"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional explicit capability keywords; derived from description when omitted"
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional industries such as steel, lumber, aluminum, construction"
        }
      }
    }
  }
}
🟢search_alberta_opportunities(keywords, category, status, limit)

Search Alberta Purchasing Connection opportunities from Alberta public-sector buyers.

入力スキーマ

{
  "type": "object",
  "properties": {
    "keywords": {
      "type": "string",
      "description": "Search words or phrase"
    },
    "category": {
      "type": "string",
      "description": "Optional category: services, goods, or construction"
    },
    "status": {
      "type": "string",
      "description": "APC status code (default OPEN)",
      "default": "OPEN"
    },
    "limit": {
      "type": "integer",
      "description": "Maximum results (default 10, max 50)",
      "default": 10
    }
  }
}
🟢get_alberta_opportunity_details(reference)

Get full Alberta Purchasing Connection details by reference number, such as AB-2026-03908.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "APC reference number"
    }
  },
  "required": [
    "reference"
  ]
}
🟢list_alberta_deadlines(days, category, limit)

List open Alberta Purchasing Connection opportunities closing soon.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Show opportunities closing within N days (default 30)",
      "default": 30
    },
    "category": {
      "type": "string",
      "description": "Optional category: services, goods, or construction"
    },
    "limit": {
      "type": "integer",
      "description": "Maximum results (default 20, max 50)",
      "default": 20
    }
  }
}
🟢summarize_alberta_opportunities

Summarize current open Alberta Purchasing Connection opportunities by category.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🟢find_alberta_opportunities(days, limit, profile)

Find Alberta Purchasing Connection opportunities that match your business profile. Pass an inline `profile` to describe the business per call.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "description": "Only show opportunities closing within N days (default: 60)",
      "default": 60
    },
    "limit": {
      "type": "integer",
      "description": "Maximum opportunities to return (default: 15)",
      "default": 15
    },
    "profile": {
      "type": "object",
      "description": "Inline business profile used for this call only. Overrides any saved profile. On the shared public endpoint without a subscriber key, this is the way to describe your business.",
      "properties": {
        "company_name": {
          "type": "string",
          "description": "Company name"
        },
        "location": {
          "type": "string",
          "description": "Where the business is located, e.g. 'Edmonton, Alberta'"
        },
        "description": {
          "type": "string",
          "description": "What the business does: products, services, capabilities"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional explicit capability keywords; derived from description when omitted"
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional industries such as steel, lumber, aluminum, construction"
        }
      }
    }
  }
}
🟢process_bid_room(reference, business_context, max_attachments, timeout_seconds, command_timeout_seconds, ...)

Use an E2B sandbox to process tender attachments: Cohere Parse turns PDF/image files into markdown, then Command A+ reviews the evidence inside the sandbox.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "CanadaBuys or Alberta APC reference number"
    },
    "business_context": {
      "type": "string",
      "description": "Optional company capabilities or bid context. If omitted, the saved business profile is used."
    },
    "max_attachments": {
      "type": "integer",
      "description": "Maximum direct attachments to process (default 5, max 5)",
      "default": 5
    },
    "timeout_seconds": {
      "type": "integer",
      "description": "E2B sandbox timeout in seconds (default 900)",
      "default": 900
    },
    "command_timeout_seconds": {
      "type": "integer",
      "description": "Sandbox command timeout in seconds (default 420)",
      "default": 420
    },
    "profile": {
      "type": "object",
      "description": "Inline business profile used for this call only. Overrides any saved profile. On the shared public endpoint without a subscriber key, this is the way to describe your business.",
      "properties": {
        "company_name": {
          "type": "string",
          "description": "Company name"
        },
        "location": {
          "type": "string",
          "description": "Where the business is located, e.g. 'Edmonton, Alberta'"
        },
        "description": {
          "type": "string",
          "description": "What the business does: products, services, capabilities"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional explicit capability keywords; derived from description when omitted"
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional industries such as steel, lumber, aluminum, construction"
        }
      }
    }
  },
  "required": [
    "reference"
  ]
}
🟢check_cohere_status

Check whether the optional Cohere Command A+ model integration is configured. Does not call the model.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🟢analyze_contract_with_cohere(reference, business_context, question, max_tokens, profile)

Use Cohere Command A+ to review a CanadaBuys tender and explain fit, risks, and next steps.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "Reference or solicitation number for the tender to analyze"
    },
    "business_context": {
      "type": "string",
      "description": "Optional company capabilities or bid context. If omitted, the saved business profile is used."
    },
    "question": {
      "type": "string",
      "description": "Optional specific question to ask about the tender"
    },
    "max_tokens": {
      "type": "integer",
      "description": "Maximum model response tokens (default 1200, max 2000)",
      "default": 1200
    },
    "profile": {
      "type": "object",
      "description": "Inline business profile used for this call only. Overrides any saved profile. On the shared public endpoint without a subscriber key, this is the way to describe your business.",
      "properties": {
        "company_name": {
          "type": "string",
          "description": "Company name"
        },
        "location": {
          "type": "string",
          "description": "Where the business is located, e.g. 'Edmonton, Alberta'"
        },
        "description": {
          "type": "string",
          "description": "What the business does: products, services, capabilities"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional explicit capability keywords; derived from description when omitted"
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional industries such as steel, lumber, aluminum, construction"
        }
      }
    }
  },
  "required": [
    "reference"
  ]
}
🟡watch_opportunity(reference, note)

Add a CanadaBuys or Alberta APC opportunity to your persistent watchlist, with an optional note.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "Reference number to track"
    },
    "note": {
      "type": "string",
      "description": "Optional note, e.g. 'waiting on bonding quote'"
    }
  },
  "required": [
    "reference"
  ]
}
🟢list_watchlist

List watched opportunities sorted by closing date, with days remaining and notes.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
🔴unwatch_opportunity(reference)

Remove an opportunity from the watchlist by reference number.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "Reference number to stop tracking"
    }
  },
  "required": [
    "reference"
  ]
}
🟢bid_no_bid_scorecard(reference)

Fast deterministic bid/no-bid checklist for one opportunity: profile fit, runway to closing, region match, and a go/caution/no-go verdict with reasons. No model call.

入力スキーマ

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "CanadaBuys or Alberta APC reference number"
    }
  },
  "required": [
    "reference"
  ]
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 26 件
検証済みバージョンは記録されていませんツール 25 件
検証済みバージョンは記録されていませんツール 25 件