Universal MCP (Model Context Protocol) client for Shov. Connect AI assistants to:
- Shov Platform API (
shov.com/api) - Create/manage projects, deploy code, manage data - User-built Shov APIs (
yourapp.shov.dev) - Connect to any Shov project's custom API
npm install -g shov-mcpGive AI assistants full control of Shov infrastructure - perfect for AI agents that build and deploy apps:
Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"shov-platform": {
"command": "npx",
"args": ["-y", "shov-mcp", "shov.com", "--api-key", "shov_live_abc123..."]
}
}
}MCP Manifest URL: https://shov.com/mcp
What Claude can do:
- ✅ Create new Shov projects
- ✅ Deploy code to global edge
- ✅ Manage data and collections
- ✅ Vector search across data
- ✅ Upload and manage files
- ✅ Set environment secrets
- ✅ Query analytics
Example AI conversation:
User: "Create a new Shov project called my-saas-app"
Claude: [calls create_project] → "Created! Your API key is shov_live_xyz..."
User: "Deploy a hello world API"
Claude: [calls deploy_code] → "Deployed to https://my-saas-app.shov.dev/api/hello"
User: "Add a user to the database"
Claude: [calls add_to_collection] → "Added user successfully"
Connect AI assistants to YOUR custom Shov project APIs:
Claude Desktop config:
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": ["-y", "shov-mcp", "myapp_acme.shov.dev", "--api-key", "pk_abc123..."]
}
}
}Or with custom domain:
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": ["-y", "shov-mcp", "api.yourdomain.com", "--api-key", "pk_abc123..."]
}
}
}MCP Manifest URL: https://yourproject.shov.dev/mcp or https://api.yourdomain.com/mcp
npx shov-mcp api.yourdomain.com --api-key pk_your_api_key_hereYou can also use environment variables:
export SHOV_API_KEY=pk_your_api_key_here
npx shov-mcp myapp_acme.shov.dev- ✅ Auto-discovery: Automatically fetches available tools from
/mcp.json - ✅ Type-safe: Full TypeScript support with JSON Schema validation
- ✅ Streaming: Supports streaming responses
- ✅ Authentication: Secure API key authentication
- ✅ Error handling: Comprehensive error messages
Get your API key from your Shov project:
# Create an API key
curl -X POST https://myapp_acme.shov.dev/auth/api-keys/create \
-H "Authorization: Bearer YOUR_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Claude Desktop", "permissions": ["*"]}'# Create a team API key
curl -X POST https://myapp_acme.shov.dev/teams/{teamId}/api-keys/create \
-H "Authorization: Bearer YOUR_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Claude Desktop", "permissions": ["*"]}'- Fetches MCP Manifest: Connects to
https://yourapp.shov.dev/mcp.json - Registers Tools: Makes all your API endpoints available as AI tools
- Proxies Requests: Routes tool calls to your API with authentication
- Returns Results: Formats responses for AI consumption
Once configured, you can ask Claude:
User: "List all users in my app"
Claude: [calls list_users tool]
Claude: "Here are the users in your app: ..."
User: "Create a new user named John"
Claude: [calls create_user tool with name: "John"]
Claude: "I've created a new user named John."
- Check that your Shov project is deployed
- Verify the domain is correct
- Ensure
/mcp.jsonendpoint is accessible
- Verify your API key starts with
pk_ - Check that the key hasn't been revoked
- Ensure the key hasn't expired
- Make sure your routes have
export const apiwithmcpsection - Check that
mcp.enabledis not set tofalse - Restart Claude Desktop after config changes
# Clone the repo
git clone https://github.com/yourusername/shov.git
cd shov/packages/shov-mcp
# Install dependencies
npm install
# Test locally
node src/cli.js myapp_acme.shov.dev --api-key pk_test_keyMIT