github Python analyzed 83e326b

sandraschi/bluesky-mcp

github

FastMCP Bluesky / AT Proto client with SOTA webapp and a human-approved outbox for fleet promotion drafts. Dry-run by default.

maintainer
sandraschi
licence
MIT
first seen
2026-07-26
last seen
2026-08-31
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 4 tools
transport stdio · http counts 4 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • bluesky_help
  • bluesky_shutdown
  • bluesky_social_tool
  • show_outbox_card
skills & danger signals github-tarball
code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 52

filesystem 8

  • fs (weak) sandraschi-bluesky-mcp-83e326b/scripts/cua-smoke.py :47 with open(p) as f:
  • fs (weak) sandraschi-bluesky-mcp-83e326b/scripts/cua-webapp-test.py :33 from pathlib import Path
  • fs (weak) sandraschi-bluesky-mcp-83e326b/scripts/generate-mcpb-prompts.py :7 from pathlib import Path
  • fs sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/client.py :8 from pathlib import Path
  • fs sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/config.py :9 from pathlib import Path
  • fs sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :9 from pathlib import Path
  • fs sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/webhooks.py :9 from pathlib import Path
  • fs (weak) sandraschi-bluesky-mcp-83e326b/tests/test_portmanteau.py :5 from pathlib import Path

shell / exec 3

  • shell (weak) sandraschi-bluesky-mcp-83e326b/scripts/cua-smoke.py :31 import subprocess
  • shell (weak) sandraschi-bluesky-mcp-83e326b/scripts/cua-webapp-test.py :27 import subprocess
  • shell sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :355 import subprocess

network 5

  • net (weak) sandraschi-bluesky-mcp-83e326b/scripts/cua-smoke.py :34 import urllib.error
  • net (weak) sandraschi-bluesky-mcp-83e326b/scripts/cua-webapp-test.py :30 import urllib.error
  • net sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/__main__.py :14 import httpx
  • net sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/client.py :11 import httpx
  • net sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :324 import httpx

secrets 2

  • secrets sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/config.py :46 self.app_password = os.getenv("BLUESKY_APP_PASSWORD", self.app_password) or ""
  • secrets sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/webhooks.py :41 return os.getenv("BLUESKY_WEBHOOK_SECRET", "") or ""

database 2

  • db sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/outbox.py :7 import sqlite3
  • db sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/webhooks.py :7 import sqlite3

tool registrations 4

  • bluesky_social_tool sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :60
  • bluesky_help sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :105
  • bluesky_shutdown sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :131
  • show_outbox_card sandraschi-bluesky-mcp-83e326b/src/bluesky_mcp/server.py :146

declared dependencies 14

  • fastmcp@>=3.4.4,<4
  • python-dotenv@>=1.0.0
  • prefab-ui@>=0.14.0
  • httpx@>=0.27.0
  • pydantic@>=2.0.0
  • fastapi@>=0.104.0
  • uvicorn@>=0.23.0
  • tauri-build@2
  • tauri@2
  • tauri-plugin-shell@2
  • tauri-plugin-fs@2
  • tauri-plugin-process@2
show 2 more
  • serde@1
  • serde_json@1