Canadian procurement intelligence: CanadaBuys and Alberta tenders, ranked for your shop.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use Cohere Command A+ to review a CanadaBuys tender and explain fit, risks, and next steps. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
Reference or solicitation number for the tender to analyze
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.
Optional specific question to ask about the tender
Maximum model response tokens (default 1200, max 2000)
Optional company capabilities or bid context. If omitted, the saved business profile is used.
Use Cohere Command A+ to review a CanadaBuys tender and explain fit, risks, and next steps. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
| Argument | Type | Description |
|---|---|---|
| profile | object | 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. |
| question | string | Optional specific question to ask about the tender |
| reference* | string | Reference or solicitation number for the tender to analyze |
| max_tokens | integer | Maximum model response tokens (default 1200, max 2000) |
| business_context | string | Optional company capabilities or bid context. If omitted, the saved business profile is used. |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"profile": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Where the business is located, e.g. 'Edmonton, Alberta'"
},
"industries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional industries such as steel, lumber, aluminum, construction"
},
"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"
},
"company_name": {
"type": "string",
"description": "Company name"
}
},
"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."
},
"question": {
"type": "string",
"description": "Optional specific question to ask about the tender"
},
"reference": {
"type": "string",
"description": "Reference or solicitation number for the tender to analyze"
},
"max_tokens": {
"type": "integer",
"default": 1200,
"description": "Maximum model response tokens (default 1200, max 2000)"
},
"business_context": {
"type": "string",
"description": "Optional company capabilities or bid context. If omitted, the saved business profile is used."
}
}
}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. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
| Argument | Type | Description |
|---|---|---|
| reference* | string | CanadaBuys or Alberta APC reference number |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"description": "CanadaBuys or Alberta APC reference number"
}
}
}Check whether the optional Cohere Command A+ model integration is configured. Does not call the model.
No arguments.
{
"type": "object",
"properties": {}
}List what a bidder must supply for one tender: splits the tender PDFs into clauses, classifies each clause and page with TypeSafe AI's Jev classifier, and groups the results into one requirement per kind (for example key personnel, mandatory site visit, bid bond), with a mandatory flag, the WorkspaceAlberta connector that would collect it, lead time, page numbers and short evidence quotes. Clause and page text is sent to TypeSafe AI (api.typesafe.ai) for classification; WorkspaceAlberta stores nothing beyond the existing private upload bucket for APC files. PDFs only (PDFs inside ZIPs are read); up to 800 pages and 8,000 clauses per call. CanadaBuys: reads the public tender attachments. Alberta APC: the first call returns a private upload link (the same upload flow as process_bid_room); the user downloads the documents with their own APC supplier account and uploads them, then you call again with upload_token. The link expires as before (2 hours). This tool does not delete the uploads, so process_bid_room can use the same upload_token afterwards. Returns markdown followed by the full result as JSON (schema wa.tender_requirements.v1, with tender closing time and posting link). Returns within 140 seconds; a result cut short by a limit is labelled partial. Results are classifier outputs: verify them against the official posting and amendments. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
| Argument | Type | Description |
|---|---|---|
| reference* | string | CanadaBuys or Alberta APC reference number |
| upload_token | string | For APC only: the upload_token from an earlier classify_tender or process_bid_room result, after the user has uploaded the documents they downloaded from APC. |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"description": "CanadaBuys or Alberta APC reference number"
},
"upload_token": {
"type": "string",
"description": "For APC only: the upload_token from an earlier classify_tender or process_bid_room result, after the user has uploaded the documents they downloaded from APC."
}
},
"additionalProperties": false
}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. When configured, search terms or business capabilities may be sent to Cohere to select commodity filters. See /privacy.
| Argument | Type | Description |
|---|---|---|
| days | integer | Look ahead this many days for matches and deadlines (default 14) |
| limit | integer | Maximum items per section (default 5, max 10) |
| profile | object | 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. |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 14,
"description": "Look ahead this many days for matches and deadlines (default 14)"
},
"limit": {
"type": "integer",
"default": 5,
"description": "Maximum items per section (default 5, max 10)"
},
"profile": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Where the business is located, e.g. 'Edmonton, Alberta'"
},
"industries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional industries such as steel, lumber, aluminum, construction"
},
"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"
},
"company_name": {
"type": "string",
"description": "Company name"
}
},
"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."
}
}
}Find Alberta Purchasing Connection opportunities that match your business profile. Pass an inline `profile` to describe the business per call. When configured, search terms or business capabilities may be sent to Cohere to select commodity filters. See /privacy.
| Argument | Type | Description |
|---|---|---|
| days | integer | Only show opportunities closing within N days (default: 60) |
| limit | integer | Maximum opportunities to return (default: 15) |
| profile | object | 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. |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 60,
"description": "Only show opportunities closing within N days (default: 60)"
},
"limit": {
"type": "integer",
"default": 15,
"description": "Maximum opportunities to return (default: 15)"
},
"profile": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Where the business is located, e.g. 'Edmonton, Alberta'"
},
"industries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional industries such as steel, lumber, aluminum, construction"
},
"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"
},
"company_name": {
"type": "string",
"description": "Company name"
}
},
"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."
}
}
}Rank CanadaBuys and Alberta APC opportunities against a business profile. Pass an inline `profile` to describe the business per call. When configured, search terms or business capabilities may be sent to Cohere to select commodity filters. See /privacy.
| Argument | Type | Description |
|---|---|---|
| days | integer | Only show opportunities closing within N days (default 60) |
| limit | integer | Maximum opportunities to return (default 15, max 30) |
| profile | object | 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. |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 60,
"description": "Only show opportunities closing within N days (default 60)"
},
"limit": {
"type": "integer",
"default": 15,
"description": "Maximum opportunities to return (default 15, max 30)"
},
"profile": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Where the business is located, e.g. 'Edmonton, Alberta'"
},
"industries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional industries such as steel, lumber, aluminum, construction"
},
"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"
},
"company_name": {
"type": "string",
"description": "Company name"
}
},
"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."
}
}
}Legacy: rank federal CanadaBuys contracts only against your business profile. Prefer find_matching_opportunities for combined CanadaBuys and Alberta APC matches. Anonymous hosted callers must pass an inline profile.
| Argument | Type | Description |
|---|---|---|
| days | integer | Only show contracts closing within N days (default: 60) |
| limit | integer | Maximum opportunities to return (default: 15) |
| profile | object | 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. |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 60,
"description": "Only show contracts closing within N days (default: 60)"
},
"limit": {
"type": "integer",
"default": 15,
"description": "Maximum opportunities to return (default: 15)"
},
"profile": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Where the business is located, e.g. 'Edmonton, Alberta'"
},
"industries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional industries such as steel, lumber, aluminum, construction"
},
"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"
},
"company_name": {
"type": "string",
"description": "Company name"
}
},
"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."
}
}
}Get full Alberta Purchasing Connection details by reference number, such as AB-2026-03908.
| Argument | Type | Description |
|---|---|---|
| reference* | string | APC reference number |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"description": "APC reference number"
}
}
}Legacy: federal CanadaBuys details only, by reference or solicitation number. Prefer get_opportunity_details for federal or Alberta APC tenders.
| Argument | Type | Description |
|---|---|---|
| reference* | string | Reference or solicitation number |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"description": "Reference or solicitation number"
}
}
}View your current business profile that's being used to match contracts. Hosted: sign-in required; no paid subscription needed.
No arguments.
{
"type": "object",
"properties": {}
}Get details for a federal CanadaBuys or Alberta APC opportunity by reference number.
| Argument | Type | Description |
|---|---|---|
| reference* | string | Reference number, such as AB-2026-03908 or a CanadaBuys reference |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"description": "Reference number, such as AB-2026-03908 or a CanadaBuys reference"
}
}
}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.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}List open Alberta Purchasing Connection opportunities closing soon.
| Argument | Type | Description |
|---|---|---|
| days | integer | Show opportunities closing within N days (default 30) |
| limit | integer | Maximum results (default 20, max 50) |
| category | string | Optional category: services, goods, or construction |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 30,
"description": "Show opportunities closing within N days (default 30)"
},
"limit": {
"type": "integer",
"default": 20,
"description": "Maximum results (default 20, max 50)"
},
"category": {
"type": "string",
"description": "Optional category: services, goods, or construction"
}
}
}List CanadaBuys and Alberta APC opportunities closing soon.
| Argument | Type | Description |
|---|---|---|
| days | integer | Show opportunities closing within N days (default 30) |
| limit | integer | Maximum combined results (default 20, max 50) |
| source | string | all, federal, or alberta |
| category | string | Optional category filter |
| province | string | Optional province or delivery region filter |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 30,
"description": "Show opportunities closing within N days (default 30)"
},
"limit": {
"type": "integer",
"default": 20,
"description": "Maximum combined results (default 20, max 50)"
},
"source": {
"type": "string",
"default": "all",
"description": "all, federal, or alberta"
},
"category": {
"type": "string",
"description": "Optional category filter"
},
"province": {
"type": "string",
"description": "Optional province or delivery region filter"
}
}
}Legacy: federal CanadaBuys closing deadlines only. Prefer list_deadlines for combined CanadaBuys and Alberta APC results.
| Argument | Type | Description |
|---|---|---|
| days | integer | Show contracts closing within N days (default 30) |
| province | string | Filter by province |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 30,
"description": "Show contracts closing within N days (default 30)"
},
"province": {
"type": "string",
"description": "Filter by province"
}
}
}List watched opportunities sorted by closing date, with days remaining and notes. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
No arguments.
{
"type": "object",
"properties": {}
}Process tender attachments in E2B: sends documents and business context to E2B, PDF page images/images and extracted evidence to Cohere Parse and Command A+. See /privacy for processing locations. For Alberta APC postings, the first call returns a private upload link: the user downloads the documents with their own APC supplier account and uploads them, then you call again with upload_token. Returns within 145 seconds including setup; large packages may time out. Retry with fewer attachments; a timeout is not a completed analysis. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
| Argument | Type | Description |
|---|---|---|
| profile | object | 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. |
| reference* | string | CanadaBuys or Alberta APC reference number |
| upload_token | string | For APC only: the upload_token from an earlier process_bid_room result. APC releases documents only to the user's own signed-in supplier account, so the first call returns a private upload link; after the user uploads the files they downloaded from APC, call again with this token to process them. |
| max_attachments | integer | Maximum procurement files to process (default 5, max 5). Use 0 explicitly for a notice-only review; missing/gated documents do not count as complete coverage. |
| business_context | string | Optional company capabilities or bid context. If omitted, the saved business profile is used. |
Refresh contract data from CanadaBuys.
No arguments.
{
"type": "object",
"properties": {}
}Search Alberta Purchasing Connection opportunities from Alberta public-sector buyers. When configured, search terms or business capabilities may be sent to Cohere to select commodity filters. See /privacy.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum results (default 10, max 50) |
| status | string | APC status code (default OPEN) |
| category | string | Optional category: services, goods, or construction |
| keywords | string | Search words or phrase |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"description": "Maximum results (default 10, max 50)"
},
"status": {
"type": "string",
"default": "OPEN",
"description": "APC status code (default OPEN)"
},
"category": {
"type": "string",
"description": "Optional category: services, goods, or construction"
},
"keywords": {
"type": "string",
"description": "Search words or phrase"
}
}
}Legacy: federal CanadaBuys only. Filter by keywords or province. Prefer search_opportunities for combined CanadaBuys and Alberta APC results.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum results (default 10) |
| keywords | string | Search keywords (e.g., 'steel', 'construction', 'IT services') |
| province | string | Filter by province (e.g., 'Alberta', 'Ontario', 'Quebec') |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"description": "Maximum results (default 10)"
},
"keywords": {
"type": "string",
"description": "Search keywords (e.g., 'steel', 'construction', 'IT services')"
},
"province": {
"type": "string",
"description": "Filter by province (e.g., 'Alberta', 'Ontario', 'Quebec')"
}
}
}Search CanadaBuys and Alberta Purchasing Connection together. When configured, search terms or business capabilities may be sent to Cohere to select commodity filters. See /privacy.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum combined results (default 20, max 50) |
| source | string | all, federal, or alberta |
| category | string | Optional category such as services, goods, construction, steel, lumber |
| keywords | string | Search words or phrase |
| province | string | Optional province or delivery region filter |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 20,
"description": "Maximum combined results (default 20, max 50)"
},
"source": {
"type": "string",
"default": "all",
"description": "all, federal, or alberta"
},
"category": {
"type": "string",
"description": "Optional category such as services, goods, construction, steel, lumber"
},
"keywords": {
"type": "string",
"description": "Search words or phrase"
},
"province": {
"type": "string",
"description": "Optional province or delivery region filter"
}
}
}Tell me about your business. I'll save your profile and use it to find matching government contracts. Hosted: sign-in required; no paid subscription needed.
| Argument | Type | Description |
|---|---|---|
| location | string | Where you're located (e.g., 'Edmonton, Alberta') |
| description* | string | What does your business do? Describe your products, services, and capabilities. |
| company_name | string | Your company name |
{
"type": "object",
"required": [
"description"
],
"properties": {
"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."
},
"company_name": {
"type": "string",
"description": "Your company name"
}
}
}Summarize current open Alberta Purchasing Connection opportunities by category.
No arguments.
{
"type": "object",
"properties": {}
}Legacy: summarize federal CanadaBuys contracts only. For combined discovery use search_opportunities or daily_bid_brief; this summary excludes Alberta APC.
No arguments.
{
"type": "object",
"properties": {}
}Remove an opportunity from the watchlist by reference number. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
| Argument | Type | Description |
|---|---|---|
| reference* | string | Reference number to stop tracking |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"reference": {
"type": "string",
"description": "Reference number to stop tracking"
}
}
}Add a CanadaBuys or Alberta APC opportunity to your persistent watchlist, with an optional note. Hosted: sign-in and an active workspaceAlberta Pro subscription required.
| Argument | Type | Description |
|---|---|---|
| note | string | Optional note, e.g. 'waiting on bonding quote' |
| reference* | string | Reference number to track |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"note": {
"type": "string",
"description": "Optional note, e.g. 'waiting on bonding quote'"
},
"reference": {
"type": "string",
"description": "Reference number to track"
}
}
}| apc_document_urls | object | For APC only: map document IDs from get_opportunity_details to already authorized, publicly accessible HTTPS copies. This tool never signs in to APC, registers supplier interest, subscribes notifications, or accepts authenticated download URLs. Copies are sent to E2B and their contents to Cohere. |
{
"type": "object",
"required": [
"reference"
],
"properties": {
"profile": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Where the business is located, e.g. 'Edmonton, Alberta'"
},
"industries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional industries such as steel, lumber, aluminum, construction"
},
"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"
},
"company_name": {
"type": "string",
"description": "Company name"
}
},
"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."
},
"reference": {
"type": "string",
"description": "CanadaBuys or Alberta APC reference number"
},
"upload_token": {
"type": "string",
"description": "For APC only: the upload_token from an earlier process_bid_room result. APC releases documents only to the user's own signed-in supplier account, so the first call returns a private upload link; after the user uploads the files they downloaded from APC, call again with this token to process them."
},
"max_attachments": {
"type": "integer",
"default": 5,
"maximum": 5,
"minimum": 0,
"description": "Maximum procurement files to process (default 5, max 5). Use 0 explicitly for a notice-only review; missing/gated documents do not count as complete coverage."
},
"business_context": {
"type": "string",
"description": "Optional company capabilities or bid context. If omitted, the saved business profile is used."
},
"apc_document_urls": {
"type": "object",
"description": "For APC only: map document IDs from get_opportunity_details to already authorized, publicly accessible HTTPS copies. This tool never signs in to APC, registers supplier interest, subscribes notifications, or accepts authenticated download URLs. Copies are sent to E2B and their contents to Cohere.",
"maxProperties": 5,
"additionalProperties": {
"type": "string",
"format": "uri"
}
}
},
"additionalProperties": false
}