Skip to content

Add Sojo plugin (remote MCP server) - #1045

Draft
cursor[bot] wants to merge 1 commit into
mainfrom
sojo-plugin
Draft

cursor[bot] wants to merge 1 commit into
mainfrom
sojo-plugin

Conversation

@cursor

@cursor cursor Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Unreviewed plugin submission. This PR was generated automatically from a submission form and has not been reviewed. Please verify the publisher, server, and logo before merging.

Summary

  • Adds third_party/sojo/ with mcp.json (remote HTTP server https://sojo.gg/mcp), .cursor-plugin/plugin.json ("mcpServers": "./mcp.json"), README, CHANGELOG, LICENSE.
  • Appends sojo to .cursor-plugin/marketplace.json and adds a row to the root README integrations table. .claude-plugin/marketplace.json is unchanged.
  • node scripts/validate-plugins.mjs passes.

Submission

  • Publisher handle: sojo
  • Company: Sojo
  • Contact: Jaivin Halpern, [email protected]
  • Website: sojo.gg
  • plugin_url: https://sojo.gg/mcp
  • logo_url: https://sojo.gg/logo.png
  • Listing targets: Grok, Grok Bot, Cursor
  • Description: Make games that play inside posts on X. Create, deploy and run them from chat, then get paid.

Logo: no local file committed

No image could be downloaded, so there is no assets/logo.png. plugin.json points at the best URL found instead: https://sojo.gg/logo.png.

  • From the build VM, https://sojo.gg/logo.png and https://sojo.gg/favicon.ico failed with an SSL connection error, and plain http://sojo.gg/logo.png returned 403.
  • The Google and DuckDuckGo favicon services could not be reached either.
  • The GitHub sojo account belongs to an unrelated organization (Sojourners, sojo.net) and has a default identicon, so it was not used. I found no official Sojo GitHub organization.

A reviewer should download the logo and commit it as third_party/sojo/assets/logo.png, then set "logo": "assets/logo.png".

Testing instructions (as submitted)

  1. In Grok Bot, send: "Add a custom MCP server called Sojo at https://sojo.gg/mcp".
  2. Click Authorize on the connect card. sojo.gg opens. If signed out, click Sign in, then Connect with X. Sojo reads only the X name, handle and picture, and nothing is posted. Click Allow.
  3. Ask: "Show my Sojo account and games."
  4. Ask: "Make a Sojo-hosted test game called review-test with a simple HTML page, then deploy it." The Bot creates the game, writes sojo.json, calls deploy and runs the one-time command it returns on its own computer.
  5. Ask: "Check review-test." It returns the dev URL and a health s

(The submitted testing instructions were cut off mid-sentence in step 5.)

Reviewer note: step 4 says the agent runs a command returned by the server on the local machine. Check what that command does before testing.

Open in Web View Automation 

Note

Medium Risk
Introduces an unreviewed third-party remote MCP and X OAuth in the official marketplace; deploy flows may drive local command execution via hosted tools.

Overview
Adds the Sojo third-party integration plugin so Cursor can connect to Sojo’s hosted MCP at https://sojo.gg/mcp for creating, deploying, and checking X-embedded games from chat.

The new third_party/sojo/ package follows the usual marketplace layout (plugin.json, mcp.json, README, CHANGELOG, MIT LICENSE). OAuth (Sign in with X) is documented as handled on sojo.gg; the logo is referenced remotely (https://sojo.gg/logo.png) because no local asset was committed. sojo is registered in .cursor-plugin/marketplace.json and the root README integrations table (the diff also closes the prior rippling marketplace entry correctly before appending Sojo).

Reviewers should treat this as an unreviewed publisher submission: verify sojo.gg, the MCP endpoint, OAuth scopes, and any deploy tooling that may instruct the agent to run commands locally.

Reviewed by Cursor Bugbot for commit 4da460a. Bugbot is set up for automated code reviews on this repo. Configure here.

@cursor cursor Bot left a comment •

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: Missing Grok Bot server placement
    • Added "placement": "server" to the sojo HTTP MCP entry so Grok Bot routes it through the hosted path and shows a connect card.

Create PR

Or push these changes by commenting:

@cursor push 3f55e9ff64
Preview (3f55e9ff64)
diff --git a/third_party/sojo/mcp.json b/third_party/sojo/mcp.json
--- a/third_party/sojo/mcp.json
+++ b/third_party/sojo/mcp.json
@@ -2,7 +2,8 @@
   "mcpServers": {
     "sojo": {
       "type": "http",
-      "url": "https://sojo.gg/mcp"
+      "url": "https://sojo.gg/mcp",
+      "placement": "server"
     }
   }
 }

You can send follow-ups to the cloud agent here.

Reviewed by Cursor Bugbot for commit 4da460a. Configure here.

Comment thread third_party/sojo/mcp.json
"sojo": {
"type": "http",
"url": "https://sojo.gg/mcp"
}

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing Grok Bot server placement

Medium Severity · Logic Bug

The sojo MCP entry omits placement server, so Grok Bot can leave the server UNDECIDED and never show a connect or sign-in card. The submission lists Grok Bot as a target and its test flow starts there.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 4da460a. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant