Developers

Connect Hashike to Claude over MCP

Add Hashike's US federal contract opportunities performed in Japan and Japanese central-government award results as an MCP connector in Claude.ai, Claude Desktop, Cowork or Claude Code, authenticated with an API key or OAuth.

Hashike's MCP server exposes nine tools spanning US federal contract opportunities performed in Japan and Japanese central-government award results: search_opportunities, get_opportunity, supplier_profile, buyer_profile, find_comparable_awards, explain_market, location_profile, research_brief and us_buyer_profile. They call the exact same service layer as the public REST API, so limits, metering and response shape are shared. Every answer carries its population, source, filters and limitations.

Amounts from the Japanese dataset are in JPY and are never comparable with US federal dollar figures. Hashike reports evidence; it does not advise whether to bid.

Before you connect

  • A Hashike account is required. Every plan, Free included, can create an API key and connect over MCP. Each plan's monthly allowance and rate limit are listed on the developers page (/developers); how much of it a given call actually used comes back in that tool's own allowance field.
  • There are two ways to authenticate. (a) OAuth — the typical route for a Claude custom connector: you sign in through a browser tab and there is no key to manage. "Advanced settings" accepts an OAuth Client ID and Client Secret (Hashike supports dynamic client registration, so they can normally stay blank). (b) An API key — created in account settings. To connect with an API key, use Claude Code and add the server with --header "Authorization: Bearer ..." (below).

Claude custom connector (remote MCP)

Custom connectors using remote MCP are available on Claude, Cowork, and Claude Desktop for users on Free, Pro, Max, Team, and Enterprise plans. Free users are limited to one custom connector. Claude connects to the MCP server from Anthropic's cloud, not from your own device (Help Center articles below).

text
Official: Get started with custom connectors using remote MCP (Claude Help Center)
https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp
Official: Use connectors to extend Claude's capabilities (Claude Help Center)
https://support.claude.com/en/articles/11176164-use-connectors-to-extend-claude-s-capabilities

For Cowork and Claude Desktop, the Help Center states only the availability above. This guide does not add menu steps specific to them.

Free, Pro and Max: add the connector yourself

  1. Open Customize > Connectors.
  2. Click "+", then select "Add custom connector".
  3. Enter a name (for example, Hashike) and the server URL.
  4. Optionally open "Advanced settings" to enter an OAuth Client ID and Client Secret. Hashike's authorization server supports dynamic client registration, so they can stay blank.
  5. Click "Add", then follow the same connection process as directory connectors (follow the authentication prompts).
  6. To use it in a conversation, click the "+" button in the lower left of the chat, choose "Connectors", and toggle Hashike on for that conversation.

Team and Enterprise: an Owner adds it, members connect

Only Owners can add custom connectors to Team and Enterprise plans. Once a connector has been added to the organization, users individually connect to and enable it.

  1. Owner: open Organization settings > Connectors.
  2. Owner: click "Add", hover over "Custom", then select "Web".
  3. Owner: enter the server URL. Optionally use "Advanced settings" to specify an OAuth Client ID and Client Secret (blank is fine for Hashike).
  4. Owner: click "Add" to finish.
  5. Members: open Customize > Connectors and find the custom connector the Owner added (it usually has a "Custom" label).
  6. Members: click "Connect" to authenticate and start using the connector with Claude.
  7. To use it in a conversation, click the "+" button in the lower left of the chat, choose "Connectors", and toggle Hashike on for that conversation.
text
Server URL   : https://hashike.io/api/mcp
Name         : Hashike
Advanced     : Client ID / Client Secret may stay blank (dynamic registration)

Claude Code (CLI)

Official docs: Connect Claude Code to tools via MCP — https://code.claude.com/docs/en/mcp (Claude Code docs). HTTP servers are the recommended option for connecting to a remote MCP server.

To connect with an API key, first create a Hashike API key in account settings (shown once, at creation).

bash
claude mcp add --transport http hashike https://hashike.io/api/mcp \
  --header "Authorization: Bearer hsk_live_..."

To avoid managing a key, add the server without a header and connect over OAuth instead.

bash
claude mcp add --transport http hashike https://hashike.io/api/mcp
claude mcp login hashike
  • claude mcp login hashike opens a browser tab for Hashike's own sign-in and consent screen; approve it, and Claude Code stores the resulting access token.
  • To authenticate from inside a session instead, run /mcp and select hashike to start the same flow.
  • To share the connector with a team, add --scope project; to make it available in every project, add --scope user — placed after the name and before the URL (for example: claude mcp add --transport http hashike --scope project https://hashike.io/api/mcp).

A successful add prints an "Added ..." line. To confirm the connection actually works, run claude mcp get hashike — or open /mcp inside a session, which shows one of Connected, Needs authentication, or Failed to connect.

Verify it worked

Once connected, try this prompt as-is.

Search Hashike for open US federal contract opportunities performed in Okinawa, and tell me the source for each one you list.

A correct response calls search_opportunities and comes back with a page of matching notices — each with its agency, category, response deadline, status (open, closed or notice) and a source link back to SAM.gov — plus the total number matching. A status of "notice" marks award notices and other records that invite no response. This result's population is: US federal contract opportunity notices with place of performance in Japan, from the SAM.gov daily extract, after removing notices whose response date has long passed.

json
{
  "matches": [
    {
      "title": "...",
      "agency": "...",
      "prefecture": "Okinawa",
      "status": "open | closed | notice",
      "responseDeadline": "...",
      "sourceUrl": "... (SAM.gov)",
      "hashikeUrl": "... (Hashike)"
    }
  ],
  "totalMatching": "...",
  "allowance": { "message": "...", "resetsAt": "..." }
}

The allowance field rides on every tool call and carries the organization's remaining records and analyses after that call, plus a one-sentence message. Whether to mention it is left to the assistant; Hashike does not instruct it to relay the message.

Troubleshooting

  • Tools don't appear (Claude custom connector): adding the connector alone does not enable it in a conversation. Toggle Hashike on for that conversation from the "+" button → Connectors. On Team or Enterprise, an Owner has to add the connector to the organization before members can connect individually. With many connectors active, the Help Center suggests switching "+" > Connectors > Tool access to On demand (source: Use connectors to extend Claude's capabilities).
  • Tools don't appear (Claude Code): open /mcp and check hashike's status. Needs authentication means the OAuth sign-in has not been completed; Failed to connect means the URL or header value is wrong, and its detail names the HTTP status Hashike actually returned.
  • 401: no valid credential was sent. On an OAuth connection, sign in again from the connector's menu or from /mcp. On an API-key connection, check that the key has not been revoked in account settings, and that the header reads exactly Authorization: Bearer hsk_live_....
  • 429 — two different meanings share this one status. One is a per-minute rate limit; the message names your plan's exact limit, and the call can be retried after a short wait. The other is that the month's record or analysis allowance is used up; the message states the exact usage against the limit and the reset date (UTC), plus one line naming a cheaper-than-current plan when one would raise the ceiling.
  • unavailable is not a failure. The tool answered, and the answer is that this scope has not been computed or is outside coverage. Read the reason field rather than treating it as an empty result.

Where to go next