---
bezeichner: "io.github.Role1776/mcp-x"
art: "mcp_server"
slug: "io-github-role1776-mcp-x"
paketkoordinate: "oci:ghcr.io/role1776/mcp-x:0.1.1"
status: "aktiv"
homepage: "https://github.com/Role1776/mcp-x#readme"
erhebungsstand: "2026-10-10T01:17:01.464Z"
namensraum: "io.github.Role1776"
registerseite: "https://tracevero.de/mcp/io-github-role1776-mcp-x"
abgerufen_am: "2026-10-10"
zugangsdaten_erforderlich: true
ausfuehrungsort: "lokal"
dateisystem_pfadargument: true
quelloffen_einsehbar: true
roh_beschreibung: "Search, read and publish X posts and manage users, lists and media via the X API v2."
version: "0.1.1"
roh_umgebungsvariablen: "X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS"
roh_geheime_pflichtvariablen: "X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET"
roh_transportarten: "stdio, stdio, stdio, stdio, stdio, stdio, stdio"
roh_pfadargumente: ""
roh_repository_url: "https://github.com/Role1776/mcp-x"
roh_paketquellen: "mcpb, mcpb, mcpb, mcpb, mcpb, mcpb, oci"
roh_geheime_pflichtkopfzeilen: ""
roh_pfad_umgebungsvariablen: "MEDIA_ROOT"
roh_remote_adressen: ""
roh_remote_hosts: ""
roh_statusmeldung: ""
roh_veroeffentlicht_am: "2026-09-09"
roh_aktualisiert_am: "2026-09-09"
roh_schemafassung: "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json"
roh_bereitstellungsform: "paket"
roh_repository_quelle: "github"
roh_repository_unterordner: ""
roh_paketbezeichner: "ghcr.io/role1776/mcp-x:0.1.1, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_amd64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_arm64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_amd64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_arm64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_amd64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_arm64.mcpb"
roh_paketversionen: "0.1.1"
roh_laufzeithinweise: ""
roh_umgebungsformate: "boolean, filepath, number"
roh_umgebungsbeschreibungen: "LISTS_DEFAULT_RESULTS=Items returned per list page when the call does not ask for a count. · LISTS_DEFAULT_TIMEOUT_MS=Timeout for a lists call in milliseconds when the call does not request one. · LISTS_MAX_RESULTS=Upper bound for items per list page. The X API caps this at 100. · LISTS_MAX_TIMEOUT_MS=Highest timeout a lists call may request, in milliseconds. · LISTS_MIN_TIMEOUT_MS=Lowest timeout a lists call may request, in milliseconds. · LOG_MODE=local (text, debug) or prod (JSON, info). Logs go to stderr. · MAX_IDLE_CONNS_PER_HOST=Idle connections the outbound HTTP client keeps per host. · MCP_NAME=Server name reported in the MCP initialize handshake. · MCP_PATH=HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http. · MCP_TRANSPORT=stdio (client spawns the process) or http (streamable HTTP listener). · MEDIA_CHUNK_BYTES=Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB. · MEDIA_DEFAULT_TIMEOUT_MS=Timeout for a whole upload in milliseconds when the call does not request one. · MEDIA_MAX_TIMEOUT_MS=Highest timeout an upload may request, in milliseconds. · MEDIA_MIN_TIMEOUT_MS=Lowest timeout an upload may request, in milliseconds. · MEDIA_POLL_INTERVAL_MS=How often the upload status is polled while X transcodes a video, in milliseconds. · MEDIA_ROOT=Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup. · POSTS_DEFAULT_DAYS=How far back post searches look when the call does not say, in days. · POSTS_DEFAULT_RESULTS=Posts returned per query when the call does not ask for a count. Every post returned is billed. · POSTS_DEFAULT_TIMEOUT_MS=Timeout for a posts call in milliseconds when the call does not request one. · POSTS_MAX_DAYS=Furthest back a post search may look, in days. Recent search cannot exceed 7. · POSTS_MAX_IDS=Post ids accepted in one x_posts_lookup call. The X API caps this at 100. · POSTS_MAX_QUERIES=Queries accepted in one x_posts_search or x_posts_count call. · POSTS_MAX_RESULTS=Upper bound for posts per query. The X API caps this at 100. · POSTS_MAX_TIMEOUT_MS=Highest timeout a posts call may request, in milliseconds. · POSTS_MAX_USERNAMES=Usernames accepted in one x_posts_by_user call. · POSTS_MIN_TIMEOUT_MS=Lowest timeout a posts call may request, in milliseconds. · SERVER_PORT=TCP port to listen on. Used only when MCP_TRANSPORT=http. · SERVER_READ_TIMEOUT=HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http. · SERVER_WRITE_TIMEOUT=HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http. · USERS_DEFAULT_RESULTS=Users returned per page when the call does not ask for a count. · USERS_DEFAULT_TIMEOUT_MS=Timeout for a users call in milliseconds when the call does not request one. · USERS_MAX_IDS=User ids accepted in one x_users_lookup call. The X API caps this at 100. · USERS_MAX_RESULTS=Upper bound for users per page. · USERS_MAX_TIMEOUT_MS=Highest timeout a users call may request, in milliseconds. · USERS_MAX_USERNAMES=Usernames accepted in one x_users_lookup call. The X API caps this at 100. · USERS_MIN_TIMEOUT_MS=Lowest timeout a users call may request, in milliseconds. · X_ACCESS_TOKEN=User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated. · X_ACCESS_TOKEN_SECRET=User access token secret, issued together with X_ACCESS_TOKEN. · X_API_KEY=OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens. · X_API_KEY_SECRET=OAuth 1.0a consumer secret, issued together with X_API_KEY. · X_DEBUG=Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging."
roh_symbolformate: ""
roh_verbindungswege: "{\"packages\":[{\"registryType\":\"oci\",\"identifier\":\"ghcr.io/role1776/mcp-x:0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"mcpb\",\"identifier\":\"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_amd64.mcpb\",\"version\":\"0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"mcpb\",\"identifier\":\"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_arm64.mcpb\",\"version\":\"0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"mcpb\",\"identifier\":\"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_amd64.mcpb\",\"version\":\"0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"mcpb\",\"identifier\":\"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_arm64.mcpb\",\"version\":\"0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"mcpb\",\"identifier\":\"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_amd64.mcpb\",\"version\":\"0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"mcpb\",\"identifier\":\"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_arm64.mcpb\",\"version\":\"0.1.1\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"X_API_KEY\",\"description\":\"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.\",\"required\":true,\"secret\":true},{\"name\":\"X_API_KEY_SECRET\",\"description\":\"OAuth 1.0a consumer secret, issued together with X_API_KEY.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN\",\"description\":\"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.\",\"required\":true,\"secret\":true},{\"name\":\"X_ACCESS_TOKEN_SECRET\",\"description\":\"User access token secret, issued together with X_ACCESS_TOKEN.\",\"required\":true,\"secret\":true},{\"name\":\"MEDIA_ROOT\",\"description\":\"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.\",\"format\":\"filepath\",\"required\":true,\"secret\":false},{\"name\":\"MCP_TRANSPORT\",\"description\":\"stdio (client spawns the process) or http (streamable HTTP listener).\",\"required\":false,\"secret\":false},{\"name\":\"MCP_NAME\",\"description\":\"Server name reported in the MCP initialize handshake.\",\"required\":false,\"secret\":false},{\"name\":\"MCP_PATH\",\"description\":\"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_PORT\",\"description\":\"TCP port to listen on. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_READ_TIMEOUT\",\"description\":\"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"SERVER_WRITE_TIMEOUT\",\"description\":\"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.\",\"required\":false,\"secret\":false},{\"name\":\"LOG_MODE\",\"description\":\"local (text, debug) or prod (JSON, info). Logs go to stderr.\",\"required\":false,\"secret\":false},{\"name\":\"MAX_IDLE_CONNS_PER_HOST\",\"description\":\"Idle connections the outbound HTTP client keeps per host.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"X_DEBUG\",\"description\":\"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_QUERIES\",\"description\":\"Queries accepted in one x_posts_search or x_posts_count call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_posts_by_user call.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_IDS\",\"description\":\"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_RESULTS\",\"description\":\"Posts returned per query when the call does not ask for a count. Every post returned is billed.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_RESULTS\",\"description\":\"Upper bound for posts per query. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_DAYS\",\"description\":\"How far back post searches look when the call does not say, in days.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_DAYS\",\"description\":\"Furthest back a post search may look, in days. Recent search cannot exceed 7.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a posts call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"POSTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a posts call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_USERNAMES\",\"description\":\"Usernames accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_IDS\",\"description\":\"User ids accepted in one x_users_lookup call. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_RESULTS\",\"description\":\"Users returned per page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_RESULTS\",\"description\":\"Upper bound for users per page.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a users call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"USERS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a users call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_RESULTS\",\"description\":\"Items returned per list page when the call does not ask for a count.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_RESULTS\",\"description\":\"Upper bound for items per list page. The X API caps this at 100.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a lists call in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"LISTS_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout a lists call may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_CHUNK_BYTES\",\"description\":\"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_POLL_INTERVAL_MS\",\"description\":\"How often the upload status is polled while X transcodes a video, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_DEFAULT_TIMEOUT_MS\",\"description\":\"Timeout for a whole upload in milliseconds when the call does not request one.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MIN_TIMEOUT_MS\",\"description\":\"Lowest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"MEDIA_MAX_TIMEOUT_MS\",\"description\":\"Highest timeout an upload may request, in milliseconds.\",\"format\":\"number\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false}],\"remotes\":[]}"
---

# X (Twitter)

## Gemessene Werte

| Merkmal | Wert | Quelle | Erhoben am | Vertrauensgrad | Rohangabe |
| --- | --- | --- | --- | --- | --- |
| Pflicht-Geheimnisse deklariert | true | MCP-Register | 2026-09-10T01:17:02.024Z | abgeleitet | roh_geheime_pflichtvariablen: X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET; roh_geheime_pflichtkopfzeilen: |
| Ausführungsort | lokal | MCP-Register | 2026-09-10T01:17:02.024Z | abgeleitet | roh_transportarten: stdio, stdio, stdio, stdio, stdio, stdio, stdio |
| Pfadargument vorhanden | true | MCP-Register | 2026-09-10T01:17:02.024Z | abgeleitet | roh_pfadargumente: ; roh_pfad_umgebungsvariablen: MEDIA_ROOT |
| Repository-Adresse geführt | true | MCP-Register | 2026-09-10T01:17:02.024Z | abgeleitet | roh_repository_url: https://github.com/Role1776/mcp-x |
| Beschreibung (Rohangabe) | Search, read and publish X posts and manage users, lists and media via the X API v2. | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Deklarierte Version | 0.1.1 | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Umgebungsvariablen (Rohangabe) | X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS, X_API_KEY, X_API_KEY_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, MEDIA_ROOT, MCP_TRANSPORT, MCP_NAME, MCP_PATH, SERVER_PORT, SERVER_READ_TIMEOUT, SERVER_WRITE_TIMEOUT, LOG_MODE, MAX_IDLE_CONNS_PER_HOST, X_DEBUG, POSTS_MAX_QUERIES, POSTS_MAX_USERNAMES, POSTS_MAX_IDS, POSTS_DEFAULT_RESULTS, POSTS_MAX_RESULTS, POSTS_DEFAULT_DAYS, POSTS_MAX_DAYS, POSTS_DEFAULT_TIMEOUT_MS, POSTS_MIN_TIMEOUT_MS, POSTS_MAX_TIMEOUT_MS, USERS_MAX_USERNAMES, USERS_MAX_IDS, USERS_DEFAULT_RESULTS, USERS_MAX_RESULTS, USERS_DEFAULT_TIMEOUT_MS, USERS_MIN_TIMEOUT_MS, USERS_MAX_TIMEOUT_MS, LISTS_DEFAULT_RESULTS, LISTS_MAX_RESULTS, LISTS_DEFAULT_TIMEOUT_MS, LISTS_MIN_TIMEOUT_MS, LISTS_MAX_TIMEOUT_MS, MEDIA_CHUNK_BYTES, MEDIA_POLL_INTERVAL_MS, MEDIA_DEFAULT_TIMEOUT_MS, MEDIA_MIN_TIMEOUT_MS, MEDIA_MAX_TIMEOUT_MS | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Geheime Pflichtvariablen (Rohangabe) | X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_ACCESS_TOKEN_SECRET, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET, X_API_KEY_SECRET | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Transportarten (Rohangabe) | stdio, stdio, stdio, stdio, stdio, stdio, stdio | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Pfadargumente (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Repository (Rohangabe) | https://github.com/Role1776/mcp-x | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Paketquellen (Rohangabe) | mcpb, mcpb, mcpb, mcpb, mcpb, mcpb, oci | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Geheime Pflichtkopfzeilen (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Pfad-Umgebungsvariablen (Rohangabe) | MEDIA_ROOT | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Remote-Adressen (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Remote-Hosts (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Statusmeldung des Registers (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Im Register eingetragen am (Rohangabe) | 2026-09-09 | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Im Register geändert am (Rohangabe) | 2026-09-09 | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Schemafassung des Rohsatzes (Rohangabe) | https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Bereitstellungsform (Rohangabe) | paket | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Repository-Plattform (Rohangabe) | github | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Repository-Unterordner (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Paketbezeichner (Rohangabe) | ghcr.io/role1776/mcp-x:0.1.1, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_amd64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_arm64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_amd64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_arm64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_amd64.mcpb, https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_arm64.mcpb | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Paketversionen (Rohangabe) | 0.1.1 | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Laufzeithinweise (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Formate der Umgebungsvariablen (Rohangabe) | boolean, filepath, number | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Beschreibungen der Umgebungsvariablen (Rohangabe) | LISTS_DEFAULT_RESULTS=Items returned per list page when the call does not ask for a count. · LISTS_DEFAULT_TIMEOUT_MS=Timeout for a lists call in milliseconds when the call does not request one. · LISTS_MAX_RESULTS=Upper bound for items per list page. The X API caps this at 100. · LISTS_MAX_TIMEOUT_MS=Highest timeout a lists call may request, in milliseconds. · LISTS_MIN_TIMEOUT_MS=Lowest timeout a lists call may request, in milliseconds. · LOG_MODE=local (text, debug) or prod (JSON, info). Logs go to stderr. · MAX_IDLE_CONNS_PER_HOST=Idle connections the outbound HTTP client keeps per host. · MCP_NAME=Server name reported in the MCP initialize handshake. · MCP_PATH=HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http. · MCP_TRANSPORT=stdio (client spawns the process) or http (streamable HTTP listener). · MEDIA_CHUNK_BYTES=Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB. · MEDIA_DEFAULT_TIMEOUT_MS=Timeout for a whole upload in milliseconds when the call does not request one. · MEDIA_MAX_TIMEOUT_MS=Highest timeout an upload may request, in milliseconds. · MEDIA_MIN_TIMEOUT_MS=Lowest timeout an upload may request, in milliseconds. · MEDIA_POLL_INTERVAL_MS=How often the upload status is polled while X transcodes a video, in milliseconds. · MEDIA_ROOT=Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup. · POSTS_DEFAULT_DAYS=How far back post searches look when the call does not say, in days. · POSTS_DEFAULT_RESULTS=Posts returned per query when the call does not ask for a count. Every post returned is billed. · POSTS_DEFAULT_TIMEOUT_MS=Timeout for a posts call in milliseconds when the call does not request one. · POSTS_MAX_DAYS=Furthest back a post search may look, in days. Recent search cannot exceed 7. · POSTS_MAX_IDS=Post ids accepted in one x_posts_lookup call. The X API caps this at 100. · POSTS_MAX_QUERIES=Queries accepted in one x_posts_search or x_posts_count call. · POSTS_MAX_RESULTS=Upper bound for posts per query. The X API caps this at 100. · POSTS_MAX_TIMEOUT_MS=Highest timeout a posts call may request, in milliseconds. · POSTS_MAX_USERNAMES=Usernames accepted in one x_posts_by_user call. · POSTS_MIN_TIMEOUT_MS=Lowest timeout a posts call may request, in milliseconds. · SERVER_PORT=TCP port to listen on. Used only when MCP_TRANSPORT=http. · SERVER_READ_TIMEOUT=HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http. · SERVER_WRITE_TIMEOUT=HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http. · USERS_DEFAULT_RESULTS=Users returned per page when the call does not ask for a count. · USERS_DEFAULT_TIMEOUT_MS=Timeout for a users call in milliseconds when the call does not request one. · USERS_MAX_IDS=User ids accepted in one x_users_lookup call. The X API caps this at 100. · USERS_MAX_RESULTS=Upper bound for users per page. · USERS_MAX_TIMEOUT_MS=Highest timeout a users call may request, in milliseconds. · USERS_MAX_USERNAMES=Usernames accepted in one x_users_lookup call. The X API caps this at 100. · USERS_MIN_TIMEOUT_MS=Lowest timeout a users call may request, in milliseconds. · X_ACCESS_TOKEN=User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated. · X_ACCESS_TOKEN_SECRET=User access token secret, issued together with X_ACCESS_TOKEN. · X_API_KEY=OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens. · X_API_KEY_SECRET=OAuth 1.0a consumer secret, issued together with X_API_KEY. · X_DEBUG=Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging. | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Symbolformate (Rohangabe) |  | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |
| Verbindungswege (Quellstruktur) | {"packages":[{"registryType":"oci","identifier":"ghcr.io/role1776/mcp-x:0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_amd64.mcpb","version":"0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_darwin_arm64.mcpb","version":"0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_amd64.mcpb","version":"0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_linux_arm64.mcpb","version":"0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_amd64.mcpb","version":"0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"mcpb","identifier":"https://github.com/Role1776/mcp-x/releases/download/v0.1.1/mcp-x_0.1.1_windows_arm64.mcpb","version":"0.1.1","transport":"stdio","environment":[{"name":"X_API_KEY","description":"OAuth 1.0a consumer key. developer.x.com -> your project -> your app -> Keys and tokens.","required":true,"secret":true},{"name":"X_API_KEY_SECRET","description":"OAuth 1.0a consumer secret, issued together with X_API_KEY.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN","description":"User access token. Set the app permissions to Read and Write BEFORE generating it: a token keeps the permissions it was created with, and a read-only one fails every write until it is regenerated.","required":true,"secret":true},{"name":"X_ACCESS_TOKEN_SECRET","description":"User access token secret, issued together with X_ACCESS_TOKEN.","required":true,"secret":true},{"name":"MEDIA_ROOT","description":"Absolute path to an existing directory - the only one x_media_upload may read files from. Anything outside it is refused, symlinks included. Checked at startup.","format":"filepath","required":true,"secret":false},{"name":"MCP_TRANSPORT","description":"stdio (client spawns the process) or http (streamable HTTP listener).","required":false,"secret":false},{"name":"MCP_NAME","description":"Server name reported in the MCP initialize handshake.","required":false,"secret":false},{"name":"MCP_PATH","description":"HTTP path the MCP endpoint is served on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_PORT","description":"TCP port to listen on. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_READ_TIMEOUT","description":"HTTP read timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"SERVER_WRITE_TIMEOUT","description":"HTTP write timeout as a Go duration. Used only when MCP_TRANSPORT=http.","required":false,"secret":false},{"name":"LOG_MODE","description":"local (text, debug) or prod (JSON, info). Logs go to stderr.","required":false,"secret":false},{"name":"MAX_IDLE_CONNS_PER_HOST","description":"Idle connections the outbound HTTP client keeps per host.","format":"number","required":false,"secret":false},{"name":"X_DEBUG","description":"Log the raw requests sent to the X API. Verbose; the output can contain request details, so keep it off outside debugging.","format":"boolean","required":false,"secret":false},{"name":"POSTS_MAX_QUERIES","description":"Queries accepted in one x_posts_search or x_posts_count call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_USERNAMES","description":"Usernames accepted in one x_posts_by_user call.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_IDS","description":"Post ids accepted in one x_posts_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_RESULTS","description":"Posts returned per query when the call does not ask for a count. Every post returned is billed.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_RESULTS","description":"Upper bound for posts per query. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_DAYS","description":"How far back post searches look when the call does not say, in days.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_DAYS","description":"Furthest back a post search may look, in days. Recent search cannot exceed 7.","format":"number","required":false,"secret":false},{"name":"POSTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a posts call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"POSTS_MIN_TIMEOUT_MS","description":"Lowest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"POSTS_MAX_TIMEOUT_MS","description":"Highest timeout a posts call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_USERNAMES","description":"Usernames accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_IDS","description":"User ids accepted in one x_users_lookup call. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_RESULTS","description":"Users returned per page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_RESULTS","description":"Upper bound for users per page.","format":"number","required":false,"secret":false},{"name":"USERS_DEFAULT_TIMEOUT_MS","description":"Timeout for a users call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"USERS_MIN_TIMEOUT_MS","description":"Lowest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"USERS_MAX_TIMEOUT_MS","description":"Highest timeout a users call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_RESULTS","description":"Items returned per list page when the call does not ask for a count.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_RESULTS","description":"Upper bound for items per list page. The X API caps this at 100.","format":"number","required":false,"secret":false},{"name":"LISTS_DEFAULT_TIMEOUT_MS","description":"Timeout for a lists call in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"LISTS_MIN_TIMEOUT_MS","description":"Lowest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"LISTS_MAX_TIMEOUT_MS","description":"Highest timeout a lists call may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_CHUNK_BYTES","description":"Bytes per upload segment. The X APPEND endpoint caps a segment at 5 MB.","format":"number","required":false,"secret":false},{"name":"MEDIA_POLL_INTERVAL_MS","description":"How often the upload status is polled while X transcodes a video, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_DEFAULT_TIMEOUT_MS","description":"Timeout for a whole upload in milliseconds when the call does not request one.","format":"number","required":false,"secret":false},{"name":"MEDIA_MIN_TIMEOUT_MS","description":"Lowest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false},{"name":"MEDIA_MAX_TIMEOUT_MS","description":"Highest timeout an upload may request, in milliseconds.","format":"number","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[]} | MCP-Register | 2026-09-10T01:17:02.024Z | selbstauskunft |  |

## Verweise

- Namensraum: [[namensraum/io-github-role1776|io.github.Role1776]]

---

- Registerseite: <https://tracevero.de/mcp/io-github-role1776-mcp-x>
- Abgerufen am: 2026-10-10
