NetGrant — Canadian Grants
https://mcp.netgrant.ca/mcpskills: {'id': 'search_opportunities', 'name': 'search_opportunities', 'description': 'Search Canadian funding opportunities (grants, competitions, accelerators, tax credits, wage subsidies, loans, events). Returns JSON.\n\nWHEN TO CALL:\n- The user asks about Canadian funding, grants, competitions, accelerators, or pitch programs\n- The user mentions their startup/business and wants opportunities relevant to it\n- The user wants to see what\'s available in a specific province or category\n\nWHEN NOT TO CALL:\n- General questions about how grants work (answer from your own knowledge)\n- Non-Canadian opportunities (this database is Canada-only)\n- Specific opportunity by ID (use get_opportunity_details instead)\n\nHOW TO PRESENT RESULTS:\n- Render as a markdown table with columns: Title, Funder, Deadline, Funding, Region, Link\n- Sort by deadline ascending unless the user asked otherwise\n- For each opportunity, infer fit using what you know about the user\'s startup from the conversation. Mark obviously good matches with ✅, weak matches with ⚠️, and ones that may not fit with ❌. Be honest — do not mark everything ✅.\n- If a deadline is within 14 days, prefix the row with 🚨.\n- Always include the URL as a clickable markdown link.\n- After the table, give a 1-2 sentence summary of which 2-3 the user should look at first and why (based on their context, not just the data).\n- End with a follow-up suggestion: "Want me to pull more from [related category]?" or "Want me to draft an outline for [top match]?"\n\nDATA NOTES:\n- "Rolling" deadline means no fixed close date.\n- Funding amount may be a range or "varies".\n- Eligibility is in the body — fetch get_opportunity_details for the full text before claiming a match is strong.', 'tags': [], 'examples': None, 'input_modes': None, 'output_modes': None}, {'id': 'get_opportunity_details', 'name': 'get_opportunity_details', 'description': 'Fetch full details for a single opportunity by ID. Use this after search_opportunities when:\n- The user wants to know more about a specific match\n- You need the full eligibility text to confirm a strong-match claim\n- The user wants to draft an application — you need the requirements\n\nThe response includes all fields including the full body text and eligibility criteria. Present the eligibility as a checklist when relevant.', 'tags': [], 'examples': None, 'input_modes': None, 'output_modes': None}; uptime_30d 1.0%; p95 809.4ms; conformance: pass
How to connect
https://mcp.netgrant.ca/mcp
curl -X POST https://mcp.netgrant.ca/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}'