Integrations · MCP
Connect FindDoc via MCP
Wire FindDoc into your agent as a Model Context Protocol server, so it can call FindDoc tools — clinic search, doctor lookup, review signals — directly inside a session. Claude.ai and other web hosts connect to the hosted Streamable HTTP endpoint; local clients run the same tool surface from the @find-doc/finddoc-mcp package over stdio.
Use cases for your agent
FindDoc gives your agent structured, freshness-stamped access to Ontario health-navigation data. A few things that get unlocked — or get strictly better — once the MCP is connected:
Summarize doctor or clinic reviews by the criteria you care about
get_clinic_reviews,get_clinic_signals, andget_doctor_signalsreturn per-dimension review signals — a strength score and a strong/moderate/mixed/weak band for things like wait times, communication, and staff — alongside the raw reviews. Your agent reasons over structured signal, not just a star average.Plan a visit to a family doctor, end to end
search_doctorsfinds family doctors taking patients near you;get_doctorreturns the clinic's address, phone, and accepting status — so your agent can tell you exactly who to call and where to go. (FindDoc surfaces how to reach the clinic; it doesn't book the appointment for you.)Find a clinic near you that's accepting new patients
search_clinicsreturns nearby clinics taking patients, each with the languages its doctors speak — so your agent can narrow to, say, a French-speaking clinic in Scarborough.Check every week for clinics that have started accepting patients
Point a scheduled agent at
search_clinicsand have it remember last week's list — it can tell you which clinics are newly accepting since the last run. FindDoc provides the live, freshness-stamped data; your agent owns the schedule and the diff.
Every availability answer carries a freshness timestamp, and each tool reminds the agent to surface how current the data is — so it can always tell you to confirm with a phone call before relying on it.
Connect from Claude.ai or another web host
Add a custom MCP connector and use this Streamable HTTP URL. No package install or desktop process is required. OAuth-capable hosts will discover the FindDoc login flow automatically when your account is eligible for hosted OAuth.
https://www.finddoc.ca/mcpHosted OAuth eligibility
Google sign-in is only the first step. To receive a hosted MCP OAuth token, sign in with Google, and let FindDoc determine your access level. OAuth grants bounded Sandbox access. Paid users should configure their paid API key directly when their host supports custom headers.
The MCP client receives only a short-lived OAuth bearer token. FindDoc rechecks the token and its effective access on every MCP request. Paid API keys remain on the direct bearer path and are never exposed by the OAuth handshake.
Add the shared secret header
Configure one secret request header named Authorization. Its value must start with Bearer. The published Sandbox key below works immediately with capped results and a shared rate limit.
Authorization: Bearer fd_sandbox_public_key_2026If your host supports OAuth, you can leave the header unset and complete the browser login flow it presents. For hosts that support custom headers but not OAuth, use the Sandbox value above or a paid key from your account.
For full access, replace the Sandbox value with a key from API keys. The same URL is published in FindDoc's MCP Registry connector metadata.
Start using it
Save the connector, enable it for the conversation, and ask something like "find a family doctor in Scarborough accepting patients." Claude can call the ten FindDoc tools directly.
1. Install the CLI
The config blocks below run the server with npx, so a global install is optional.
npm install -g @find-doc/finddoc-mcp
# or run it on demand, no global install:
npx @find-doc/finddoc-mcp2. Add FindDoc to your client
Each snippet registers the same finddoc stdio server and works immediately with the free Sandbox key. Set FINDDOC_API_KEY to a live key when you need full access.
Claude Code (CLI)
claude mcp add --transport stdio finddoc \
-- npx @find-doc/finddoc-mcpTo share the server with a team, add this project-scoped .mcp.json:
{
"mcpServers": {
"finddoc": {
"command": "npx",
"args": ["@find-doc/finddoc-mcp"]
}
}
}Codex CLI
[mcp_servers.finddoc]
command = "npx"
args = ["@find-doc/finddoc-mcp"]Claude Desktop
Merge this into claude_desktop_config.json:
{
"mcpServers": {
"finddoc": {
"command": "npx",
"args": ["@find-doc/finddoc-mcp"]
}
}
}3. Start using it
Restart the client. The finddoc server should appear in its MCP list.
Tool reference
The server registers 10 tools. Your agent picks the right one on its own, but the required arguments are worth knowing — search_doctors requires a specialty, so call list_specialties if you are not sure a name is accepted.
| Tool | Required | Returns |
|---|---|---|
| search_doctors | specialty | Search doctors by specialty, with optional language, gender, location, and radius filters. |
| get_doctor | cpso_number | Full profile for one doctor — specialties, languages, and their clinic's address, phone, and accepting status. |
| search_clinics | — | Search clinics by location and acceptance status; each result lists the languages its doctors speak. |
| get_clinic | clinic_id | Full record for one clinic — doctor count, languages, hours, accessibility, and availability freshness. |
| get_clinic_reviews | clinic_id | Individual reviews for a clinic plus the aggregate rating and per-dimension breakdown. |
| get_doctor_signals | cpso_number | Per-dimension care signals for a doctor. Dimensions with fewer than 3 reviews are omitted. |
| get_clinic_signals | clinic_id | Per-dimension care signals for a clinic. Dimensions with fewer than 3 reviews are omitted. |
| list_specialties | — | Every specialty name search_doctors accepts, with doctor counts. Call this first if a specialty is rejected. |
| list_languages | — | Every supported language name, with doctor counts. |
| get_availability_freshness | — | Coverage and last-refresh reporting for availability data across the corpus. |
Looking for a different LLM?
Any OpenAI-compatible client can hit /api/v1 directly — see the Bring your own LLM guide.