Shippy MCP
Ship work. Earn royalties.
MCP Server Installation
Shippy provides a remote Model Context Protocol (MCP) server that lets AI coding assistants interact with your bounties directly in your IDE.
Documentation MCP Server
Note that we also provide a separate MCP endpoint for reading Shippy documentation via MCP:
Endpoint: https://shippy.sh/mcp/docs
This endpoint requires no authentication and provides two tools:
| Tool | Description |
|---|---|
| list_docs | List all available documentation pages |
| read_doc | Read a specific documentation page by ID |
This is useful if you want your AI assistant to be able to reference Shippy docs without leaving your IDE.
Features
With the Shippy MCP server, your AI assistant can:
For Contributors:
- Browse and search bounties across projects
- Read full bounty details and acceptance criteria
- Claim bounties to start working
- Submit completed work for review
- View and manage your active claims
For Founders:
- Create and update bounties
- Close and reopen bounties
- Manage project labels
- Create and configure projects (Reputation Mode or Profit Share Mode)
Prerequisites
- A Shippy account (sign up here)
- An MCP access token (generate one in your User Settings → MCP Access Tokens)
Quick Install (Cursor)
If you're using Cursor, click the "Add to Cursor" button in your user settings after generating a token. This will automatically configure the MCP server.
Manual Installation
Cursor
Add this to ~/.cursor/mcp.json:
{
"mcpServers": {
"shippy": {
"url": "https://shippy.sh/mcp",
"headers": {
"Authorization": "Bearer shp_YOUR_TOKEN"
}
}
}
}
Windsurf
Add this to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"shippy": {
"serverUrl": "https://shippy.sh/mcp",
"headers": {
"Authorization": "Bearer shp_YOUR_TOKEN"
}
}
}
}
Note: Windsurf uses
serverUrlinstead ofurlfor HTTP servers. See the Windsurf MCP docs.
Codex (OpenAI)
Codex uses TOML configuration in ~/.codex/config.toml. You have two options:
Option 1: Direct token (simpler)
Add this to ~/.codex/config.toml:
[mcp_servers.shippy]
url = "https://shippy.sh/mcp"
http_headers = { "Authorization" = "Bearer shp_YOUR_TOKEN" }
Option 2: Environment variable (more secure)
[mcp_servers.shippy]
url = "https://shippy.sh/mcp"
bearer_token_env_var = "SHIPPY_MCP_TOKEN"
Then set the environment variable in your shell (add to ~/.zshrc or ~/.bashrc):
export SHIPPY_MCP_TOKEN="shp_YOUR_TOKEN"
Note: See the Codex MCP documentation for more configuration options.
Claude Desktop
Claude Desktop only supports stdio-based MCP servers, so you'll need mcp-remote to connect to Shippy's HTTP endpoint.
Add to your Claude Desktop config:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"shippy": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://shippy.sh/mcp",
"--header",
"Authorization: Bearer shp_YOUR_TOKEN"
]
}
}
}
Claude Code
Claude Code also uses stdio-based servers. You can add Shippy via the CLI:
claude mcp add shippy -- npx -y mcp-remote https://shippy.sh/mcp --header "Authorization: Bearer shp_YOUR_TOKEN"
Or add to your project's .mcp.json:
### Other Clients (stdio-only)
For other MCP clients that only support stdio transport (not Streamable HTTP), use mcp-remote with the same configuration pattern as Claude Desktop above.
> Note: Cursor 0.50+ and Windsurf support Streamable HTTP natively. Claude Desktop, Claude Code, and older clients require mcp-remote.
## Available Tools
### Read Operations
| Tool | Description | Auth |
| --------------------- | ----------------------------------------------------- | ---------- |
| list\_projects | Browse projects on Shippy | Optional\* |
| read\_project | Get project details by slug | Optional\* |
| list\_bounties | List bounties for a project | Optional\* |
| read\_bounty | Get bounty by identifier (e.g., "SHP-42") | Optional\* |
| list\_labels | List all labels for a project | Optional\* |
| read\_label | Get label details by ID | Optional\* |
| list\_comments | List comments on a bounty | Optional\* |
| list\_attachments | List attachments for a bounty, submission, or comment | Optional\* |
| list\_my\_bounties | List bounties you have claimed | Required |
| list\_my\_submissions | List your submissions | Required |
\*Optional: Works without auth for public projects. With auth, also shows your private projects.
### Contributor Operations
| Tool | Description |
| ------------------------------ | ------------------------------------------------ |
| claim\_bounty | Claim a bounty to start working on it |
| release\_claim | Release your claim on a bounty |
| create\_submission | Submit work for a claimed bounty |
| update\_submission | Update a draft/pending submission |
| suggest\_bounty | Suggest a new bounty for founder review |
| create\_comment | Add a comment to a bounty (supports attachments) |
| update\_comment | Update your own comment |
| delete\_comment | Delete a comment (author or founder) |
| get\_contributor\_agreement | View project's contributor agreement |
| accept\_contributor\_agreement | Accept project's contributor agreement |
### Attachment Operations
| Tool | Description |
| ---------------------------- | -------------------------------------------------- |
| generate\_nanoid | Generate a unique ID for pre-uploading attachments |
| get\_attachment\_upload\_url | Get a signed URL to upload a file to R2 |
| create\_attachment | Register an uploaded attachment |
| delete\_attachment | Delete an attachment |
Attachments can be added to bounties, submissions, and comments. For comments, use the `PENDING_COMMENT` reference type when uploading before the comment exists, then pass the generated ID to `create_comment`.
### Founder Operations
| Tool | Description |
| --------------------- | ------------------------------------------------------ |
| create\_bounty | Create a new bounty for a project |
| update\_bounty | Update bounty title, description, points, etc. |
| close\_bounty | Close a bounty (expires claims) |
| reopen\_bounty | Reopen a closed bounty |
| create\_label | Create a new label for a project |
| update\_label | Update label name or color |
| delete\_label | Delete a label from a project |
| create\_project | Create a new project (reputation or profit share mode) |
| update\_project | Update project settings |
| update\_project\_logo | Update or remove project logo |
## Example Usage
Once connected, try prompts like:
> "What bounties am I working on?"
> "Show me bounty SHP-42"
> "List open bounties on the shippy project"
> "Claim bounty SHP-15"
> "Submit my work for SHP-15 with description: Implemented the dark mode toggle. See PR #42."
> "Update submission sub\_123 with description: Added screenshots and test results."
> "Update submission sub\_123 to status: PENDING"
> "Add a comment on SHP-42: Great work! Here's my feedback..."
> "Upload a screenshot to my comment on SHP-42"
For Founders:
> "Create a bounty for my project 'shippy' titled 'Add dark mode support' with 50 points"
> "Update SHP-42 to have 100 points"
> "Create a label called 'urgent' with color #FF0000 for my shippy project"
> "Create a reputation mode project called 'my-oss-project' for open source contributions"
> "Create a profit share project with 10% pool percentage and monthly payouts"
## Troubleshooting
### Server not connecting
1. Verify your token is correct and hasn't been deleted
2. Make sure you're using the correct config file path for your IDE
3. Restart your IDE after making config changes
4. Check that Shippy is accessible at https://shippy.sh/mcp
### Authentication errors
1. Check that your token starts with `shp_`
2. Ensure the `Authorization` header format is `Bearer shp_YOUR_TOKEN` (with a space)
3. Generate a new token if the current one isn't working
### Tools not appearing
1. Make sure the MCP server is enabled in your IDE's settings
2. Check your IDE's MCP logs for connection errors
3. Try refreshing/reloading the MCP server list
### 406 Not Acceptable errors
If you're building your own MCP client, ensure your requests include:
Accept: application/json, text/event-stream
## Security
* Your MCP token is tied to your Shippy account
* Tokens can be revoked at any time from your settings
* Each token shows when it was last used for auditing
* We recommend using separate tokens for different machines
* Token prefix `shp_` enables GitHub secret scanning
## Resources
* Model Context Protocol Specification
* Cursor MCP Documentation
* Windsurf MCP Documentation
* Claude Desktop MCP Guide
* mcp-remote on npm
## Need Help?
Email [email protected]
Máy chủ liên quan
Featurebase
Manage posts and comments on Featurebase, a user feedback platform, using its API.
Backlog MCP Server
Interact with the Backlog API to manage projects, issues, wikis, git repositories, and more.
Memory Pickle MCP
A project management and session memory tool for AI agents to track projects, tasks, and context during chat sessions.
JotForm
An MCP server for interacting with the Jotform API to manage online forms and submissions.
Odoo
Integrate Odoo with Large Language Models (LLMs) for enhanced business process automation.
Notion MCP Server
An MCP server for the Notion API, allowing language models to interact with Notion workspaces.
VMware vSphere MCP Server
An MCP Server that acts as a standardized interface exposing VMware vCenter functionalities as Tools directly consumable by AI models
MS-365 MCP Server
A containerized MCP server for Microsoft 365, featuring OAuth authentication and OpenTelemetry instrumentation for monitoring.
Amazing Marvin AI Assistant
Connect your Amazing Marvin productivity system with AI assistants for smarter task management.
Trello MCP
Trello Desktop MCP server that enables Claude Desktop to interact with Trello boards, cards, lists, and team members through natural language commands.