MCP Integration
Bootspring uses the Model Context Protocol (MCP) to communicate with AI assistants. This open standard enables secure, standardized tool access across different AI platforms.
What is MCP?#
The Model Context Protocol (MCP) is an open protocol developed by Anthropic that enables AI assistants to securely access external tools and data sources.
┌─────────────────────────────────────────────────────────────────────────┐
│ MCP Architecture │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ AI │ MCP │ MCP │ Tools │ Bootspring │ │
│ │ Assistant │◄──────►│ Server │◄──────►│ Features │ │
│ │ (Claude) │Protocol │ (Bootspring)│ │ │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
│ The AI assistant uses MCP to access Bootspring tools without │
│ direct integration - the protocol handles all communication. │
│ │
└─────────────────────────────────────────────────────────────────────────┘
Why MCP?#
| Benefit | Description |
|---|---|
| Standardized | Works with any MCP-compatible AI assistant |
| Secure | Controlled capability exposure |
| Extensible | Easy to add new tools |
| Portable | Works across platforms (Claude, Cursor, etc.) |
Bootspring MCP Server#
Bootspring runs as an MCP server, exposing 19 tools for AI assistants:
Core Tools#
| Tool | Purpose |
|---|---|
bootspring_assist | General development assistance |
bootspring_context | Project context access |
bootspring_agent | Specialized agent invocation |
bootspring_skill | Code pattern generation |
bootspring_quality | Quality gate execution |
Generation Tools#
| Tool | Purpose |
|---|---|
bootspring_generate | Context file generation |
bootspring_seed | Project seeding/scaffolding |
bootspring_prd | PRD document generation |
bootspring_mvp | MVP planning |
bootspring_content | Content generation |
Workflow Tools#
| Tool | Purpose |
|---|---|
bootspring_orchestrator | Workflow management |
bootspring_loop | Autonomous execution |
bootspring_todo | Task tracking |
bootspring_dashboard | Dashboard integration |
Configuration Tools#
| Tool | Purpose |
|---|---|
bootspring_plugin | Plugin management |
bootspring_capabilities | Feature discovery |
bootspring_telemetry | Usage analytics |
bootspring_memory | Persistent memory |
bootspring_autopilot | Autopilot mode |
Setting Up MCP#
Configuration File#
Create .mcp.json in your project root:
1{
2 "mcpServers": {
3 "bootspring": {
4 "command": "npx",
5 "args": ["bootspring", "mcp"],
6 "env": {
7 "BOOTSPRING_API_KEY": "${BOOTSPRING_API_KEY}"
8 }
9 }
10 }
11}Environment Variables#
Set your API key:
# .env.local
BOOTSPRING_API_KEY=bsk_your_api_key_hereVerifying Connection#
Test the MCP connection:
bootspring mcp --testExpected output:
✓ MCP server running
✓ 19 tools registered
✓ Authentication valid
✓ Ready for connections
How Tools Work#
Tool Invocation Flow#
┌─────────────────────────────────────────────────────────────────────────┐
│ Tool Invocation Flow │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ 1. User Request │
│ "Help me add authentication" │
│ │ │
│ ▼ │
│ 2. AI Determines Tool │
│ → bootspring_agent with auth-expert │
│ │ │
│ ▼ │
│ 3. MCP Protocol │
│ AI ──► MCP Server ──► Bootspring │
│ │ │
│ ▼ │
│ 4. Tool Execution │
│ Bootspring processes request │
│ │ │
│ ▼ │
│ 5. Response │
│ Bootspring ──► MCP Server ──► AI ──► User │
│ │
└─────────────────────────────────────────────────────────────────────────┘
Tool Schema#
Each tool has a defined schema:
1// Example: bootspring_agent tool schema
2{
3 name: "bootspring_agent",
4 description: "Invoke a specialized expert agent",
5 inputSchema: {
6 type: "object",
7 properties: {
8 agent: {
9 type: "string",
10 description: "Agent name (e.g., 'frontend-expert')"
11 },
12 task: {
13 type: "string",
14 description: "Task or question for the agent"
15 },
16 context: {
17 type: "string",
18 description: "Additional context"
19 },
20 outputFormat: {
21 type: "string",
22 enum: ["guidance", "code", "review", "plan"]
23 }
24 },
25 required: ["agent", "task"]
26 }
27}Tool Responses#
Tools return structured responses:
1{
2 "success": true,
3 "data": {
4 "agent": "frontend-expert",
5 "response": {
6 "summary": "Here's how to create...",
7 "code": [...],
8 "recommendations": [...]
9 }
10 },
11 "meta": {
12 "duration": 1234,
13 "tokensUsed": 500
14 }
15}Compatible Platforms#
Claude Desktop#
Native MCP support:
1// ~/Library/Application Support/Claude/claude_desktop_config.json
2{
3 "mcpServers": {
4 "bootspring": {
5 "command": "npx",
6 "args": ["bootspring", "mcp"]
7 }
8 }
9}Claude Code (CLI)#
Automatic detection via .mcp.json:
# In your project directory
claude # Automatically connects to Bootspring MCPCursor IDE#
Configure in settings:
1// .cursor/mcp.json
2{
3 "mcpServers": {
4 "bootspring": {
5 "command": "npx",
6 "args": ["bootspring", "mcp"]
7 }
8 }
9}VS Code (Copilot Chat)#
Coming soon with MCP support in Copilot.
Security Model#
Capability Exposure#
Bootspring only exposes safe operations:
┌─────────────────────────────────────────────────────────────────────────┐
│ Security Model │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ Exposed (Safe) │ Not Exposed (Protected) │
│ ───────────────────── │ ──────────────────────── │
│ • Read project context │ • Direct file system access │
│ • Generate code │ • Shell command execution │
│ • Run quality checks │ • Network requests │
│ • Access documentation │ • Environment variables │
│ • Invoke agents │ • Sensitive credentials │
│ │ │
└─────────────────────────────────────────────────────────────────────────┘
API Key Scoping#
API keys have scoped permissions:
| Key Type | Permissions |
|---|---|
| Development | Full access in local environment |
| CI/CD | Quality checks only |
| Read-only | Context and documentation |
Request Validation#
All tool requests are validated:
- Schema validation: Input matches expected format
- Permission check: API key has required access
- Rate limiting: Prevents abuse
- Audit logging: All requests logged
Advanced Configuration#
Custom Tool Parameters#
Override default tool behavior:
1// bootspring.config.js
2module.exports = {
3 mcp: {
4 tools: {
5 'bootspring_agent': {
6 defaultVerbosity: 'detailed',
7 timeout: 30000,
8 },
9 'bootspring_quality': {
10 enabled: true,
11 autoRun: ['pre-commit'],
12 },
13 },
14 },
15};Tool Filtering#
Enable/disable specific tools:
1module.exports = {
2 mcp: {
3 // Only expose these tools
4 enabledTools: [
5 'bootspring_assist',
6 'bootspring_agent',
7 'bootspring_skill',
8 'bootspring_quality',
9 ],
10
11 // Or disable specific tools
12 // disabledTools: ['bootspring_autopilot'],
13 },
14};Custom Server Port#
Run on a specific port:
1module.exports = {
2 mcp: {
3 port: 3100, // Default: auto-assigned
4 host: 'localhost',
5 },
6};Debugging#
Enable Debug Logging#
DEBUG=bootspring:mcp npx bootspring mcpView Tool Calls#
bootspring mcp --verboseOutput:
[MCP] Tool call: bootspring_agent
[MCP] Input: { agent: "frontend-expert", task: "..." }
[MCP] Duration: 1234ms
[MCP] Output: { success: true, data: {...} }
Test Individual Tools#
bootspring mcp --test-tool bootspring_agentTroubleshooting#
Connection Issues#
Symptom: AI assistant can't connect to Bootspring
Solutions:
- Verify
.mcp.jsonexists and is valid JSON - Check
BOOTSPRING_API_KEYis set - Run
bootspring mcp --test - Restart the AI assistant
Tool Not Found#
Symptom: "Tool bootspring_xyz not found"
Solutions:
- Check tool name spelling
- Verify tool is enabled in config
- Check tier access (some tools require Pro/Team)
Slow Responses#
Symptom: Tools take a long time to respond
Solutions:
- Check network connectivity
- Reduce context size
- Use more specific queries
- Check server status at status.bootspring.com
Authentication Errors#
Symptom: "Invalid API key" errors
Solutions:
- Verify API key is correct
- Check key hasn't expired
- Ensure key has required permissions
- Regenerate key in dashboard
Protocol Details#
Message Format#
MCP uses JSON-RPC 2.0:
1// Request
2{
3 "jsonrpc": "2.0",
4 "id": 1,
5 "method": "tools/call",
6 "params": {
7 "name": "bootspring_agent",
8 "arguments": {
9 "agent": "frontend-expert",
10 "task": "Create a button component"
11 }
12 }
13}
14
15// Response
16{
17 "jsonrpc": "2.0",
18 "id": 1,
19 "result": {
20 "content": [
21 {
22 "type": "text",
23 "text": "Here's a button component..."
24 }
25 ]
26 }
27}Transport#
Bootspring MCP supports:
- stdio: Default for local development
- HTTP: For remote/CI environments
module.exports = {
mcp: {
transport: 'stdio', // or 'http'
},
};Related#
- MCP Tools Reference - Full tool documentation
- Configuration - Setup guide
- Troubleshooting - Common issues
- MCP Specification - Protocol details