Developers
Threads for Claude is a remote MCP server. Any MCP client that supports streamable HTTP and OAuth can use it to act on a user's Threads account. There is no REST API and no API key: each user connects their own account.
Quickstart
- Point your MCP client at
https://threads-mcp.app/mcp
- Claude Code:
claude mcp add --transport http threads https://threads-mcp.app/mcp
then run/mcpand choose Authenticate. - MCP Inspector:
npx @modelcontextprotocol/inspector
choose Streamable HTTP, paste the URL and click Connect; the OAuth flow opens in the browser. - Call
threads_get_profileto check the connection.
Authentication
OAuth 2.1 authorization code with PKCE (S256) and dynamic client registration, discovered from the 401 WWW-Authenticate header of the MCP endpoint. The user signs in with Threads and approves the client; access tokens are short-lived JWTs with refresh tokens. Step by step: auth.md.
Users can see, switch or disconnect the connected account on their connection page.
Testing
There is no separate sandbox: Threads has no test mode, so posts are real. Connect a spare Threads account while developing, use the read-only tools first, and check threads_get_publishing_limit before bulk tests (250 posts and 1,000 replies per 24 hours).
Tools
threads_list_accounts
Lists the Threads accounts linked to this connector and which one this app currently acts as. Posts, replies and insights always use the account marked acting.threads_use_account— writes
Makes this app act as another linked Threads account from now on (other apps keep theirs). Only switch when the user asks for it, and name the account you switched to.threads_get_profile
Returns the connected Threads account: username, name, bio, profile picture, verification.threads_list_posts
Lists the connected account's own posts, newest first. Use `after` from the previous response to paginate.threads_get_post
Returns one post by its media id.threads_create_post— writes
Publishes a post on the user's Threads account: text (≤ 500 chars, ≤ 5 links), optionally with one image or video, or quoting another post. Publishes publicly and immediately — show the user the final text and get confirmation first. For longer text use threads_create_thread; for several images use threads_create_carousel.threads_create_carousel— writes
Publishes a carousel of 2–20 images and/or videos with optional text. Publishes publicly — confirm with the user first.threads_create_thread— writes
Publishes a chain of 2–10 text posts where each post replies to the previous one (for text longer than 500 chars). Each part must be ≤ 500 chars. Publishes publicly — confirm with the user first.threads_reply— writes
Publishes a reply (text and optional media) to any post or reply by id. Publishes publicly — confirm with the user first.threads_repost— writes
Reposts an existing post to the user's profile.threads_publish_container— writes
Checks a media container returned with status 'processing' and publishes it once ready.threads_delete_post— writes
Permanently deletes one of the user's own posts or replies. Cannot be undone — confirm with the user first.threads_get_replies
Returns replies to a post. mode 'replies' = top-level replies only; 'conversation' = all nested replies flattened.threads_hide_reply— writes
Hides (or unhides) a top-level reply on one of the user's posts. Nested replies under it are hidden too.threads_get_mentions
Lists public posts where the user was @mentioned.threads_get_activity— writes
Replies to the user's posts and @mentions that Threads pushed since the user last checked (last 30 days), newest first. Use it for 'what's new on Threads?'. By default returns only unseen items and marks them as seen. To answer or hide an item, use threads_reply or threads_hide_reply with its media_id after the user confirms.threads_keyword_search
Searches public Threads posts by keyword or topic tag. Returns text, author, date, link and whether a post has replies — Threads does not expose likes/views of other people's posts. Until the app is approved for keyword search, results only include the user's own posts. Limit: 2,200 searches per 24 h (empty results don't count).threads_profile_lookup
Returns a public Threads profile by exact username: name, bio, verification, followers and totals of likes, replies, quotes, reposts and views over the last 7 days. Only public profiles with 100+ followers are returned. Until the app is approved for profile discovery, only official Meta accounts (@meta, @threads, @instagram, @facebook) can be looked up. Limit: 1,000 lookups per 24 h.threads_get_profile_posts
Lists recent public posts of another Threads profile by exact username (text, type, date, link, whether it has replies, quoted/reposted post). Threads does not expose likes or views of other people's posts. Same access limits as threads_profile_lookup.threads_get_post_insights
Returns views, likes, replies, reposts, quotes and shares for one post. For many posts or a period use threads_get_posts_insights.threads_get_posts_insights
Lists the user's own posts published in a date range together with views, likes, replies, reposts, quotes and shares for each, plus totals, average/median views and engagement rate — in one call. Use it for reports and "what performed best" questions instead of calling threads_get_post_insights per post. Dates are YYYY-MM-DD (UTC, inclusive); defaults to the last 30 days. For "all time" pass since=2023-07-05; if the result has a `note` about the limit, call again with `until` set to the oldest date seen to cover older posts.threads_get_account_insights
Returns account metrics (views, likes, replies, reposts, quotes, clicks, followers_count) for a date range. Dates are YYYY-MM-DD; data is available from 2024-04-13. follower_demographics needs ≥ 100 followers and a breakdown.threads_get_publishing_limit
Shows how many posts and replies the account has used in the last 24 hours and the limits (250 posts / 1000 replies).
Tools that write act publicly as the user. Show the exact text and get explicit confirmation before calling them.
MCP Apps
ui://threads/posts-insights.html— Interactive table of per-post Threads metrics for threads_get_posts_insights.
Discovery
- MCP manifest: https://threads-mcp.app/.well-known/mcp.json
- MCP server card: https://threads-mcp.app/.well-known/mcp/server-card.json
- OAuth protected resource metadata: https://threads-mcp.app/.well-known/oauth-protected-resource/mcp
- OAuth authorization server metadata: https://threads-mcp.app/.well-known/oauth-authorization-server
- Agent Skills index: https://threads-mcp.app/.well-known/agent-skills/index.json
- Authentication guide: https://threads-mcp.app/auth.md
- llms.txt: https://threads-mcp.app/llms.txt
- OpenAPI spec: https://threads-mcp.app/openapi.json
- Agentic Resource Discovery catalog: https://threads-mcp.app/.well-known/ard.json
- API catalog (RFC 9727): https://threads-mcp.app/.well-known/api-catalog
- Official MCP Registry: app.threads-mcp/threads