# Search Posts — Super Carl

> Search Super Carl post and activity signals, including authored posts, comments, likes, reactions, company mentions, and engagement. Use this before Search People when the workflow is anchored on someone posting or engaging with content…

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

## Description

Search Super Carl post and activity signals, including authored posts, comments, likes, reactions, company mentions, and engagement. Use this before **Search People** when the workflow is anchored on someone posting or engaging with content; enable With People to return deduped actors from matching activity. Post rows can be large — pass Fields (flat field names only, e.g. `author_name`, `text`, `url`; there is no nested `author.name` path) to keep the result small; With People's deduped rows are already trimmed and don't need Fields. [See the documentation](https://supercarl.ai/docs#endpoints-posts)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `query` | `string` | No | Natural-language search query, for example Head of Growth candidates in NYC warm through my network. |
| `filters` | `object` | No | Optional Super Carl AdvancedFilters JSON object for structured constraints. Example: { "job_titles": { "include": ["Head of Growth"], "current_only": true }, "locations": { "include": ["New York"] }, "connection_degrees": ["1st"] }. |
| `withPeople` | `boolean` | No | Include a deduped people set derived from matching post actors and authors. |
| `previewLimit` | `integer` | No | Maximum number of post or activity rows to return. |
| `offset` | `integer` | No | Number of results to skip. |
| `peopleLimit` | `integer` | No | Maximum deduped people to include when With People is enabled. |
| `sortBy` | `string` | No | Sort post rows by relevance, recency, or engagement. |
| `sortOrder` | `string` | No | Sort direction for engagement, reactions, or comments ordering. |
| `delegateUserId` | `string` | No | Optional Super Carl team-seat user ID to search as. This is the UUID of a teammate's user record that the API key owner can delegate to, for example 550e8400-e29b-41d4-a716-446655440000. |
| `fields` | `string[]` | No | Optional list of fields to return per row instead of the full record — keeps large result sets well under the context limit. Supports dot-paths for nested values, for example name, linkedin_profile_url, resolved_target.id. Omit this prop to return the API default field set (every field). |

## 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": "super_carl",
      },
    },
  },
)

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: "super_carl-search-posts",
  arguments: {
    query: "Query",
    filters: "Filters",
  },
})
```

**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: "super_carl-search-posts",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    super_carl: { authProvisionId: "apn_xxxxxxx" },
    query: "Query",
    filters: "Filters",
  },
})

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": "super_carl-search-posts",
    "configured_props": {
      "super_carl": { "authProvisionId": "apn_xxxxxxx" },
      "query": "Query",
      "filters": "Filters"
    }
  }'
```

---

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