{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.cyanheads/bluesky-mcp-server","description":"Search Bluesky posts and feeds; read profiles, threads, and trends. STDIO or Streamable HTTP.","repository":{"url":"https://github.com/cyanheads/bluesky-mcp-server","source":"github"},"version":"0.8.0","packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/bluesky-mcp-server","version":"0.8.0","runtimeHint":"npx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Clamp oversized read limits with a notice; false restores rejection.","format":"boolean","default":"true","name":"BLUESKY_CLAMP_READ_LIMITS"},{"description":"Handle, DID, or email of the Bluesky account post search runs as. Optional: without it and BLUESKY_APP_PASSWORD, bsky_search_posts is not offered, since Bluesky refuses search without a signed-in account. Use a dedicated account — search leaves out posts from accounts in a block relationship with it.","format":"string","name":"BLUESKY_IDENTIFIER"},{"description":"App password for BLUESKY_IDENTIFIER (a standard, non-privileged one — Settings → Privacy and security → App passwords). Optional; required together with BLUESKY_IDENTIFIER to enable bsky_search_posts.","format":"string","isSecret":true,"name":"BLUESKY_APP_PASSWORD"},{"description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","default":"info","name":"MCP_LOG_LEVEL"}]},{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/bluesky-mcp-server","version":"0.8.0","runtimeHint":"npx","transport":{"type":"streamable-http","url":"http://localhost:3010/mcp"},"environmentVariables":[{"description":"Selects the HTTP transport.","format":"string","value":"http","name":"MCP_TRANSPORT_TYPE"},{"description":"Clamp oversized read limits with a notice; false restores rejection.","format":"boolean","default":"true","name":"BLUESKY_CLAMP_READ_LIMITS"},{"description":"Handle, DID, or email of the Bluesky account post search runs as. Optional: without it and BLUESKY_APP_PASSWORD, bsky_search_posts is not offered, since Bluesky refuses search without a signed-in account. Use a dedicated account — search leaves out posts from accounts in a block relationship with it.","format":"string","name":"BLUESKY_IDENTIFIER"},{"description":"App password for BLUESKY_IDENTIFIER (a standard, non-privileged one — Settings → Privacy and security → App passwords). Optional; required together with BLUESKY_IDENTIFIER to enable bsky_search_posts.","format":"string","isSecret":true,"name":"BLUESKY_APP_PASSWORD"},{"description":"The hostname for the HTTP server.","format":"string","default":"127.0.0.1","name":"MCP_HTTP_HOST"},{"description":"The port to run the HTTP server on.","format":"string","default":"3010","name":"MCP_HTTP_PORT"},{"description":"The endpoint path for the MCP server.","format":"string","default":"/mcp","name":"MCP_HTTP_ENDPOINT_PATH"},{"description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","default":"none","name":"MCP_AUTH_MODE"},{"description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","default":"info","name":"MCP_LOG_LEVEL"}]}],"remotes":[{"type":"streamable-http","url":"https://bluesky.caseyjhand.com/mcp"}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-11-11T14:21:28.733339Z","publishedAt":"2026-11-11T14:21:28.733339Z","updatedAt":"2026-11-11T14:21:28.733339Z","isLatest":true}}}
