# Search Articles — HelpDocs

> Search for articles in your HelpDocs knowledge base. See the documentation

- Key: `helpdocs-search-articles`
- Type: Action (Read-only)
- Version: 0.0.2
- App: HelpDocs (`helpdocs`) — https://pipedream.com/apps/helpdocs.md
- This page (HTML): https://pipedream.com/apps/helpdocs/actions/search-articles
- Hints: read-only · open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/helpdocs/actions/search-articles/search-articles.mjs

## Description

Search for articles in your HelpDocs knowledge base. [See the documentation](https://apidocs.helpdocs.io/article/If1U9NNUpT-searching-for-articles)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `query` | `string` | Yes | The search term string you'd like results for |
| `includePrivate` | `boolean` | No | Include articles with a private status in the results |
| `includeDraft` | `boolean` | No | Include articles with a draft status in the results |
| `languageCode` | `string` | No | If you have multilingual enabled, this will be the ISO language code you're trying to search in (e.g. fr, en, etc.). If you don't send this we'll search in your account's default language. |
| `limit` | `integer` | No | How many results you'd like to receive |

## Run it

**MCP**

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "helpdocs",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
  name: "helpdocs-search-articles",
  arguments: {
    query: "Query",
    includePrivate: true,
  },
})
```

**TypeScript**

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "helpdocs-search-articles",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    helpdocs: { authProvisionId: "apn_xxxxxxx" },
    query: "Query",
    includePrivate: true,
  },
})

console.log(result)
```

**cURL**

```bash
curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
  -H "Content-Type: application/json" \
  -H "X-PD-Environment: production" \
  -H "Authorization: Bearer {access_token}" \
  -d '{
    "external_user_id": "{external_user_id}",
    "id": "helpdocs-search-articles",
    "configured_props": {
      "helpdocs": { "authProvisionId": "apn_xxxxxxx" },
      "query": "Query",
      "includePrivate": true
    }
  }'
```

---

- App: https://pipedream.com/apps/helpdocs.md · All apps: https://pipedream.com/apps
