@kentcdodds/linkedin
by @kentcdodds
Headless helpers for LinkedIn identity, requests, and guarded posting using the saved linkedin OAuth integration.
- social
- oauth
- profile
- posting
- License
- MIT
- Published
- 7/9/2026
- Pinned commit
56b3d1d- Rating
- No ratings yet
- Adaptation effort
- —
- Forks
- 0
Fork with your agent
Copy this prompt into your MCP-capable agent to fork and adapt the package safely.
Use Kody to fork the community package "@kentcdodds/linkedin" (listing id: 264211fc-68db-4094-9bd8-75cab8d72326). Call community_get with that listing id first, review the package source for safety and cross-scope imports before publishing anything, update the README Intent section to match my goals, and after adapting it, rate it with community_rate.
README
# @kentcdodds/linkedin
## Intent
Headless LinkedIn helpers for identity, API requests, and guarded personal-profile posting via the saved `linkedin` OAuth integration.
## When To Use
- Verify the LinkedIn OAuth integration and read the member profile or person URN
- Call uncommon LinkedIn REST endpoints with saved token auth
- Dry-run or publish personal-profile text, article, image, or video posts with explicit confirmation
- Run the native video upload flow: register, upload parts, finalize, then post
## Required setup
- Saved `linkedin` OAuth integration (`linkedinAccessToken`, `linkedinClientSecret`)
- `w_member_social` scope for posting helpers; reconnect at `/connect/oauth?provider=linkedin` when the token expires
## Exports
- `kody:@kentcdodds/linkedin` — package overview
- `kody:@kentcdodds/linkedin/smoke-test` — verify userinfo access
- `kody:@kentcdodds/linkedin/get-user-info` — LinkedIn OIDC userinfo
- `kody:@kentcdodds/linkedin/get-person-urn` — author `personUrn` for posting
- `kody:@kentcdodds/linkedin/request` — authenticated LinkedIn API request helper
- `kody:@kentcdodds/linkedin/create-post` — generic Posts API create helper (mutating)
- `kody:@kentcdodds/linkedin/create-text-post` — text post helper (mutating)
- `kody:@kentcdodds/linkedin/create-article-post` — article link post helper (mutating)
- `kody:@kentcdodds/linkedin/register-image-upload` — initialize image upload (mutating)
- `kody:@kentcdodds/linkedin/create-image-post` — image post helper (mutating)
- `kody:@kentcdodds/linkedin/register-video-upload` — initialize native video upload (mutating)
- `kody:@kentcdodds/linkedin/upload-video-part` — upload one video part (mutating)
- `kody:@kentcdodds/linkedin/finalize-video-upload` — finalize native video upload (mutating)
- `kody:@kentcdodds/linkedin/create-video-post` — video post helper (mutating)
## Examples
```ts
import getPersonUrn from 'kody:@kentcdodds/linkedin/get-person-urn'
export default async function main() {
return await getPersonUrn()
}
```
```ts
import createTextPost from 'kody:@kentcdodds/linkedin/create-text-post'
export default async function main() {
return await createTextPost({ text: 'Draft text', dryRun: true })
}
```
Posting and upload helpers require `confirm: true` unless `dryRun: true`.Report this listing
Log in to report this listing.