Skip to main content
Glama
atmosphere-ai

AdvisorPPC X Organic

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
X_ACCESS_TOKENYesX API access token with user-context OAuth 2.0 PKCE permissions

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
x_organic_get_meA

GET /2/users/me — the user on this OAuth2 token. Call first when you need user id for timeline, likes, bookmarks, or mentions. Never invent a handle.

x_organic_lookup_userA

Look up a user by username (without inventing @handles) or by numeric id. Uses GET /2/users/by/username/:username or GET /2/users/:id.

x_organic_lookup_usersA

Batch lookup. Pass usernames XOR ids (comma-separated v2). Never invent handles.

x_organic_search_usersB

GET /2/users/search. Query must be what the user asked to find — do not invent people to follow.

x_organic_get_postA

GET /2/tweets/:id with public metrics, author, media, and referenced posts.

x_organic_lookup_postsB

GET /2/tweets?ids=… up to 100 ids the user named.

x_organic_user_postsA

GET /2/users/:id/tweets. Pass user_id from lookup/me. exclude=replies,retweets optional.

x_organic_my_timelineA

GET /2/users/:id/timelines/reverse_chronological for the authenticated user (home feed). Billed per read.

x_organic_mentionsB

GET /2/users/:id/mentions for the authenticated user (or a named user_id you manage).

x_organic_search_recentA

GET /2/tweets/search/recent (last 7 days). Query must be the user's. Billed per matching post. Do not run unbounded brand-watch loops.

x_organic_list_repliesA

Recent-search composite: conversation_id:{post_id} is:reply. Use this to triage comments. Billed per matching post. Then reply with x_organic_reply (confirm required; self-serve only if they summoned you).

x_organic_get_quote_tweetsC

GET /2/tweets/:id/quote_tweets. Quote creation on self-serve is Enterprise-only; reading quotes is not.

x_organic_liked_postsB

GET /2/users/:id/liked_tweets. Defaults to the authenticated user.

x_organic_list_bookmarksB

GET /2/users/:id/bookmarks for the authenticated user. Scope bookmark.read.

x_organic_create_postA

POST /2/tweets. Use only the copy/media the user supplied — never invent text or handles. Requires confirm=true after an explicit named ask. X API pay-per-use (as of 2026): ~$0.015 per plain post, ~$0.20 per post that contains a link. Warn the user before posting links. X API has no native schedule. Use AdvisorPPC x_organic_schedule_* tools — never invent a publish time outside the job store. Up to 4 photos, 1 GIF, or 1 video via media_ids from x_organic_upload_media.

x_organic_replyA

POST /2/tweets as a reply (in_reply_to_tweet_id). Requires confirm=true. Do not invent copy. Do not spam-reply. Self-serve / pay-per-use: replies to someone else only succeed if they @mentioned you or quoted you. Enterprise is unrestricted. Self-replies (your own thread) are the intended thread mechanism. X API pay-per-use (2026): ~$0.015/post, ~$0.20 if the text contains a link. Warn before posting links.

x_organic_quoteA

POST /2/tweets with quote_tweet_id. Requires confirm=true. Quote-posting is Enterprise-only on self-serve/pay-per-use as of 2026-09 — expect 403 on those plans. Never invent post text, DM copy, handles, or media. Use only what the user supplied. X API pay-per-use (2026): ~$0.015/post, ~$0.20 if the text contains a link. Warn before posting links.

x_organic_repostA

POST /2/users/:id/retweets. Requires confirm=true after the user named the post to repost.

x_organic_unrepostB

DELETE /2/users/:id/retweets/:tweet_id. Requires confirm=true.

x_organic_delete_postA

DELETE /2/tweets/:id. You can only delete posts you authored. Requires confirm=true after the user named the exact post. Destructive and irreversible.

x_organic_create_threadA

Composite: publish the first post, then chain the rest as replies (in_reply_to of the previous). Use only the array of copy the user supplied — never invent posts. Requires confirm=true once for the whole thread. If a later post fails, STOP and return what already went up. X API pay-per-use (as of 2026): ~$0.015 per plain post, ~$0.20 per post that contains a link. Warn the user before posting links. X API has no native schedule. Use AdvisorPPC x_organic_schedule_* tools — never invent a publish time outside the job store.

x_organic_hide_replyA

PUT /2/tweets/:id/hidden. Only works for replies on a conversation you own. Requires confirm=true. Scope tweet.moderate.write. hidden=true hides, false unhides.

x_organic_likeA

POST /2/users/:id/likes. Reversible. Scope like.write. Do not mass-like.

x_organic_unlikeB

DELETE /2/users/:id/likes/:tweet_id.

x_organic_bookmarkC

POST /2/users/:id/bookmarks. Scope bookmark.write.

x_organic_unbookmarkD

DELETE /2/users/:id/bookmarks/:tweet_id.

x_organic_upload_mediaA

Upload an image or video for an organic post (tweet_image / tweet_gif / tweet_video) or a DM (dm_*). Images use simple upload; video and files >5MB use v2 chunked INIT/APPEND/FINALIZE and poll STATUS. Never amplify_video (ads). Provide exactly one of media_url or media. If the intended media failed to upload or process, STOP. Do not substitute a still, a source image, or a pre-existing library asset.

x_organic_reply_with_mediaA

Composite: upload media (if given) then reply. If upload fails, STOP — do not post a text-only substitute. Requires confirm=true. Self-serve / pay-per-use: replies to someone else only succeed if they @mentioned you or quoted you. Enterprise is unrestricted. Self-replies (your own thread) are the intended thread mechanism. X API pay-per-use (2026): ~$0.015/post, ~$0.20 if the text contains a link. Warn before posting links.

x_organic_list_dm_eventsB

GET /2/dm_events (MessageCreate). One page of inbox events with sender expansion. Scope dm.read. Do not dump DMs into public posts.

x_organic_list_dm_conversationA

GET /2/dm_conversations/:id/dm_events. Pass a conversation id from inbox_summary or list_dm_events. Scope dm.read.

x_organic_send_dmA

Send one DM to a named recipient (participant_id or username) or an existing dm_conversation_id. Requires confirm=true after an explicit named ask. Never invent copy. One recipient — no bulk unsolicited DMs. Optional media_id from x_organic_upload_media with destination=dm. Do not spam-reply and do not send bulk unsolicited DMs. One named conversation at a time.

x_organic_inbox_summaryA

Composite: fetch recent DM events and group by conversation with the last message. Use this to triage inbox, then x_organic_list_dm_conversation + x_organic_send_dm (confirm) to answer. Do not auto-reply.

x_organic_scheduler_statusA

AdvisorPPC's own job queue (X API has no native schedule). Shows worker, agents, upcoming jobs, last runs. HTTP mode starts the worker by itself.

x_organic_scheduler_setupA

Self-configure the AdvisorPPC scheduler for Claude, ChatGPT, Cursor, Grok, raw HTTP, or the AdvisorPPC backend. Starts the in-process worker, writes the job store, returns paste-ready MCP snippets. Does not invent posts.

x_organic_scheduler_settingsB

Get or patch timezone, digest webhook_url (Claude/ChatGPT/AdvisorPPC callback), tick_ms, public_url.

x_organic_schedule_listA

List AdvisorPPC queue jobs (not X native). Filter by status.

x_organic_schedule_createA

Enqueue a future organic action on AdvisorPPC's queue (X cannot natively schedule). tool must be allowlisted. arguments must be the user-supplied copy/ids — never invent text. confirm=true after they named the time and the copy. Enables publish_queue so the worker will fire it. Kinds: once (run_at ISO), every (every_ms), cron (5-field).

x_organic_schedule_cancelA

Cancel (terminal), pause, or resume a named job id. confirm=true after the user named the job.

x_organic_agents_listA

Built-in agents: publish_queue, mention_digest, inbox_digest, health. Digests never auto-reply; they snapshot and optionally POST webhook_url for Claude/ChatGPT/AdvisorPPC.

x_organic_agent_setA

Turn an agent on/off and set every_ms. Live agents (if any) need confirm=true. mention_digest / inbox_digest never send replies or DMs.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
x-organic-dashboardInline table of posts, mentions, or DM conversations from the last tool result.
x-organic-schedulerAdvisorPPC job queue, agents, and vendor setup (Claude / ChatGPT / Grok).

TDQS

B3.1/5.0

Scored across 40 tools

Disambiguation4/5

Most tools map to distinct X API resources and actions (create_post, reply, quote, repost, like, bookmark, etc.). A few overlapping utilities exist — list_dm_events vs inbox_summary both fetch recent DM events, and schedule_list vs scheduler_status both surface queue state — but descriptions clarify their intent.

Naming Consistency4/5

Uniform x_organic_ prefix with mostly verb_noun structure (create_post, send_dm, lookup_user, schedule_cancel). Some deviations exist — user_posts, mentions, my_timeline, liked_posts — but they are readable and don't break the pattern.

Tool Count2/5

40 tools is well beyond the heavy threshold. While the server covers posting, scheduling, DMs, media, and agents, the sheer count makes tool selection cumbersome and suggests scope creep that could have been consolidated (e.g., merging reply variants or DM listing helpers).

Completeness4/5

The toolkit covers the full organic X lifecycle: creation, engagement, reading, media upload, scheduling, agent monitoring, and DMs. Notable gaps are follow/unfollow management and follower/analytics endpoints, but the stated organic-purpose surface is largely complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues