{"name":"io.github.sns45/dear-claude","slug":"sns45-dear-claude","title":null,"description":"Spawn Claude Code instances from 6 platforms when 'Dear Claude' is mentioned.","url":"https://mcp.market/server/sns45-dear-claude","rating":null,"grade":"B","score":71,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":19,"stars":0,"forks":1,"downloads_week":76,"last_push_at":"2026-08-27T21:53:41.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/sns45/dear-claude","website":null,"version":"1.2.0","remotes":[],"packages":[{"registryType":"npm","identifier":"dear-claude","version":"1.2.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"HTTP server port for webhooks (default: 3334)","format":"string","name":"DEAR_CLAUDE_PORT"},{"description":"Bind address for the HTTP server (default: 127.0.0.1, loopback only)","format":"string","name":"DEAR_CLAUDE_HOST"},{"description":"Override the data directory (default: $XDG_DATA_HOME/dear-claude or ~/.local/share/dear-claude)","format":"string","name":"DEAR_CLAUDE_DATA_DIR"},{"description":"Token guarding the /api/* and /mcp control endpoints (auto-generated at <dataDir>/api-token if unset)","format":"string","isSecret":true,"name":"DEAR_CLAUDE_API_TOKEN"},{"description":"Override Tailscale hostname for webhook URLs (auto-detected if not set)","format":"string","name":"TAILSCALE_HOSTNAME"},{"description":"GitHub OAuth App or GitHub App client ID","format":"string","name":"GITHUB_CLIENT_ID"},{"description":"GitHub OAuth App or GitHub App client secret","format":"string","isSecret":true,"name":"GITHUB_CLIENT_SECRET"},{"description":"GitHub webhook signature secret","format":"string","isSecret":true,"name":"GITHUB_WEBHOOK_SECRET"},{"description":"GitHub personal access token (alternative to OAuth)","format":"string","isSecret":true,"name":"GITHUB_ACCESS_TOKEN"},{"description":"GitHub App ID (for installation-based auth)","format":"string","name":"GITHUB_APP_ID"},{"description":"Path to GitHub App private key PEM file","format":"string","name":"GITHUB_APP_PRIVATE_KEY_PATH"},{"description":"Linear OAuth application client ID","format":"string","name":"LINEAR_CLIENT_ID"},{"description":"Linear OAuth application client secret","format":"string","isSecret":true,"name":"LINEAR_CLIENT_SECRET"},{"description":"Linear webhook signing secret","format":"string","isSecret":true,"name":"LINEAR_WEBHOOK_SECRET"},{"description":"Linear personal API key (alternative to OAuth)","format":"string","isSecret":true,"name":"LINEAR_ACCESS_TOKEN"},{"description":"Jira Cloud domain (e.g. 'mycompany' for mycompany.atlassian.net)","format":"string","name":"JIRA_DOMAIN"},{"description":"Jira account email for API authentication","format":"string","name":"JIRA_USER_EMAIL"},{"description":"Jira API token from id.atlassian.com","format":"string","isSecret":true,"name":"JIRA_API_TOKEN"},{"description":"Shared secret for Jira webhook URL validation","format":"string","isSecret":true,"name":"JIRA_WEBHOOK_SECRET"},{"description":"GitLab personal or project access token","format":"string","isSecret":true,"name":"GITLAB_ACCESS_TOKEN"},{"description":"GitLab webhook secret token","format":"string","isSecret":true,"name":"GITLAB_WEBHOOK_SECRET"},{"description":"Notion OAuth integration client ID","format":"string","name":"NOTION_CLIENT_ID"},{"description":"Notion OAuth integration client secret","format":"string","isSecret":true,"name":"NOTION_CLIENT_SECRET"},{"description":"Notion internal integration token (alternative to OAuth)","format":"string","isSecret":true,"name":"NOTION_ACCESS_TOKEN"},{"description":"Notion webhook verification secret","format":"string","isSecret":true,"name":"NOTION_WEBHOOK_SECRET"},{"description":"Absolute path to Obsidian vault directory for file watching","format":"string","name":"OBSIDIAN_VAULT_PATH"},{"description":"Giphy API key for embedding GIF reactions in responses","format":"string","isSecret":true,"name":"GIPHY_API_KEY"}]}],"tools":[{"name":"get_instance_messages","description":"Get conversation history for an instance","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_instance_status","description":"Get detailed status of a specific instance","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_instances","description":"List all instances belonging to a project","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_running_instances","description":"Get list of currently running instance IDs","write_action":false,"price_micros":0,"input_schema":null},{"name":"kill_instance","description":"Terminate a running instance","write_action":true,"price_micros":0,"input_schema":null},{"name":"list_instances","description":"List all Claude instances (active and recent)","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_platforms","description":"List configured platforms and their status","write_action":false,"price_micros":0,"input_schema":null},{"name":"spawn_instance","description":"Spawn a new Claude instance to handle a task. Use for parallel coding, cross-platform orchestration, etc.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":71,"grade":"B","scanned_at":"2026-10-30T18:17:32.260Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-30T18:17:32.215Z","components":{"code":{"score":20,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":12,"max":15,"notes":["last push 64 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"dist/index.js: … return false; try { return new Function(\"\"), true; } catch (X) { retur…"}],"inputs":{"packages":[{"registryType":"npm","identifier":"dear-claude","version":"1.2.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":6,"publishedAt":"2026-08-27T21:53:54.056Z","repositoryUrl":"git+https://github.com/sns45/dear-claude.git","weeklyDownloads":76}],"repo":{"found":true,"owner":"sns45","repo":"dear-claude","archived":false,"pushedAt":"2026-08-27T21:53:41Z","stars":0,"forks":1,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/24930418?v=4","ownerCreatedAt":"2017-01-05T05:33:27Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/24930418?v=4&s=128","source":"registry"},"presence":{"stars":0,"forks":1,"downloadsWeek":76,"license":"MIT","lastPushAt":"2026-08-27T21:53:41.000Z","score":19}}}},"grade_history":[],"reviews":[]}