The You.com MCP connector routes your AI agent's tool calls to You.com's own MCP server through Scalekit. Each user connects their own You.com access token once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 4 tools.
- Tools
- 4
- What they doRead · write · destructive
- 2 · 2 · 02 read2 write0 destructive
- Users sign in with
- Access token
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the You.com MCP connection
In AgentKit > Connections, create a You.com MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Console steps with screenshots
Register your You.com API key with Scalekit so it can authenticate and proxy search requests on behalf of your users. You.com MCP uses API key authentication.
-
Get a You.com API key
- Go to you.platform and sign in or create an account.
- In the left sidebar, under API Management, click API Keys.
- Enter a name for your key (e.g.
Agent Auth) and click Create.

- Copy the generated key — it starts with
ydc-sk-.
-
Create a connection in Scalekit
- In the Scalekit dashboard, go to AgentKit → Connections → Create Connection.
- Search for You.com MCP and click Create.
- Note the Connection name — use this as
connection_namein your code (e.g.,youmcp).
-
Add a connected account
Connected accounts link a specific user identifier in your system to a You.com API key. Add one in the dashboard to test. In production, each user adds their own through the authorization link: they enter their credentials on the page it opens.
In the dashboard, to test
- Open the connection and click the Connected Accounts tab → Add account.
- Fill in Your User’s ID and API Key, then click Save.
From your backend, if your app already has the credentials
For example, when users enter them on a settings page in your app:
import { ConnectorStatus } from '@scalekit-sdk/node'const authorizationDetails = {details: {case: 'staticAuth',value: { details: { token: 'ydc-sk-...' } },},}let { connectedAccount } = await scalekit.actions.upsertConnectedAccount({connectionName: 'youmcp',identifier: 'user_123',authorizationDetails,})// Make sure the account is ACTIVE before the first tool call.if (connectedAccount?.status !== ConnectorStatus.ACTIVE) {;({ connectedAccount } = await scalekit.actions.upsertConnectedAccount({connectionName: 'youmcp',identifier: 'user_123',authorizationDetails,}))}authorization_details = {"static_auth": {"token": "ydc-sk-..."}}response = scalekit_client.actions.upsert_connected_account(connection_name="youmcp",identifier="user_123",authorization_details=authorization_details,)# Make sure the account is ACTIVE before the first tool call.if response.connected_account.status != "ACTIVE":response = scalekit_client.actions.upsert_connected_account(connection_name="youmcp",identifier="user_123",authorization_details=authorization_details,)
-
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'youmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize You.com MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'youmcp_you-balance',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "youmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize You.com MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="youmcp_you-balance",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user opens the link once and enters their You.com MCP server credentials there. If your app already has a user's credentials, add the account from your backend instead, as the console steps above show. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolyoumcp_you-balanceGet the remaining credit balance for the billing entity associated with your You.com API key.Read-onlyYou Account Balance
Get the remaining credit balance for the billing entity associated with your You.com API key. Balance is in cents (divide by 100 for USD).
Inputs
This tool takes no inputs.
youmcp_you-discoverDiscover AI agents, MCP servers, A2A agents, and skills via ARD Agent Finder services.Read-onlyYou Agent Discovery
Discover AI agents, MCP servers, A2A agents, and skills via ARD Agent Finder services. Search-only — never installs or connects. Returns ranked results with relevance scores.
Inputs
querystringrequired- Natural-language task to find agents/tools for.
finderstring- Which external Agent Finder service(s) to query: github (GitHub Agent Finder), huggingface (Hugging Face finder), or all. The You.com catalog is always included.one of
githubhuggingfacealldefaultall limitinteger- Max consolidated results (1â25).default
10
youmcp_you-contentsExtract content from one or more web pages in markdown, HTML, or structured metadata format.WriteYou Contents
Extract content from one or more web pages in markdown, HTML, or structured metadata format. Supports up to 100 URLs per call.
Inputs
urlsarrayrequired- Array of webpage URLs to extract content from (e.g., ["https://example.com"])
crawl_timeoutnumber- Optional timeout in seconds (1-60) for page crawling
formatsarray- Output formats: array of "markdown" (text), "html" (layout), or "metadata" (structured data)
max_agestring- Maximum allowed age of cached content in seconds. When set, cached content older than this threshold is ignored and the page is re-fetched. Must be 0 or greater. Default: null (no age limit).
youmcp_you-searchSearch the web and news using You.com.WriteYou Search
Search the web and news using You.com. Supports domain filtering, language and country targeting, freshness filters, and live-crawl for full page content.
Inputs
querystringrequired- Short natural-language phrase describing one thing to find, e.g. "tariff exemptions for semiconductor imports 2026". Inline `site:`, `lang:`, `loc:` filters are mapped automatically. Max 50 words / 400 characters after operator mapping.
countinteger- Max results per sectiondefault
30 crawl_timeoutinteger- Max seconds to wait for page content when extraction is full_page (1â60). Omit for the default 10.
exclude_domainsarray- Domains to exclude from search results (up to 500). Cannot be combined with inline `site:` filters, which map to include_domains.
extractionstring- Extraction mode. "highlights" (default) returns query-relevant passages; "none" returns plain snippets; "full_page" crawls each result and returns full page content.one of
nonehighlightsfull_pagedefaulthighlights extraction_sourcestring- Where full-page content comes from when extraction is 'full_page'. 'cache' is included in base cost, 'fetch' bills at livecrawl rates, 'blend' bills only for pages not in cache.one of
cachefetchblend freshnessstring- Limit results to a recent window. Use it when recency matters â news, prices, releases, "this year" â and omit it for evergreen facts. Pass a named bucket (`day`, `week`, `month`, `year`) or a date range `YYYY-MM-DDtoYYYY-MM-DD`. If the query already names a timeframe, the broader of the two wins, so this can only widen, never narrow, the query phrase.
knowledgestring- Include licensed knowledge results relevant to the query. core requests factual answers alongside web and news results; matching results appear in results.knowledge.one of
core offsetinteger- Pagination offset, in multiples of count. count=5 and offset=1 returns results 5â10. Range 0â9. Omit on the first page.
safesearchstring- Content-moderation filter. Omit to let the API default (moderate) apply.one of
offmoderatestrict
No tools match.