Connect an MCP client
Add the BC Data MCP server with your API key to Claude Code, Cursor, VS Code and Windsurf, and what ChatGPT and claude.ai can do today.
The server address is https://api.bcmcp.ca/mcp. It speaks Streamable HTTP and needs your key in the Authorization: Bearer header. Make a key on your account page first.
An MCP client has to be able to send a fixed header for this to work. Some can and some cannot, so this page is split that way.
Clients that can send the key
Claude Code
claude mcp add --transport http bc-data https://api.bcmcp.ca/mcp \
--header "Authorization: Bearer bcd_your_key_here"Cursor
Add this to ~/.cursor/mcp.json, or to .cursor/mcp.json in a project:
{
"mcpServers": {
"bc-data": {
"url": "https://api.bcmcp.ca/mcp",
"headers": { "Authorization": "Bearer bcd_your_key_here" }
}
}
}VS Code
Add this to .vscode/mcp.json (VS Code MCP configuration reference). VS Code asks for the key the first time and keeps it out of the file:
{
"inputs": [
{ "type": "promptString", "id": "bcdata-key", "description": "BC Data API key", "password": true }
],
"servers": {
"bc-data": {
"type": "http",
"url": "https://api.bcmcp.ca/mcp",
"headers": { "Authorization": "Bearer ${input:bcdata-key}" }
}
}
}Windsurf
Add this to ~/.codeium/windsurf/mcp_config.json, then restart Windsurf:
{
"mcpServers": {
"bc-data": {
"serverUrl": "https://api.bcmcp.ca/mcp",
"headers": { "Authorization": "Bearer bcd_your_key_here" }
}
}
}Client settings change. If one of these does not work, check the client's own MCP documentation for the current header setting. The server only needs the Authorization header (or x-api-key) on every request.
Clients that cannot send a key today
claude.ai
Custom connectors on claude.ai sign in with OAuth or use no sign in. A fixed request header is a beta that Anthropic has opened to a limited set of organizations, and only an organization Owner can enter it. If your organization has it, add https://api.bcmcp.ca/mcp as a custom connector and put Authorization: Bearer <your key> in Request headers. Otherwise you cannot add BC Data to claude.ai yet. Sources: Claude connector authentication types (see static_headers) and adding custom connectors.
ChatGPT
Custom MCP connectors in ChatGPT support OAuth, no authentication, or a mix. There is no setting for a fixed API key header, so you cannot add BC Data to ChatGPT yet. Source: OpenAI, Add custom MCP server.
What this means
BC Data does not offer OAuth sign in yet, so those two cannot connect directly. Until it does you can:
- use the REST API from your own code, with the same data and the same citations;
- use a client from the list above;
- run a small bridge on your own machine that adds the header, such as
mcp-remotewith its--headeroption, for a client that can start a local command but cannot send headers.
OAuth sign in is the way to fix this, and it is not built yet.