5.2 KiB
5.2 KiB
Vibn MCP (Model Context Protocol) Server
The Vibn MCP Server exposes your project data, coding sessions, and AI conversations to AI assistants through a standardized protocol.
🎯 What It Does
The MCP server allows AI assistants (like Claude, ChatGPT, etc.) to:
- Access your project data - View projects, sessions, costs, and activity
- Read conversation history - Reference past AI conversations
- Search sessions - Find coding sessions by workspace, date, or project
- Get project summaries - Retrieve comprehensive project insights
🚀 Quick Start
1. Start the MCP Server
cd vibn-frontend
npm run mcp:server
The server runs on stdio and waits for connections from AI assistants.
🔌 Integration Guides
For Claude Desktop
Add to your Claude configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"vibn": {
"command": "node",
"args": ["/absolute/path/to/vibn-frontend/mcp-server.js"],
"env": {
"FIREBASE_PROJECT_ID": "your-project-id",
"FIREBASE_CLIENT_EMAIL": "your-client-email",
"FIREBASE_PRIVATE_KEY": "your-private-key"
}
}
}
}
For Custom AI Applications
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
const transport = new StdioClientTransport({
command: 'node',
args: ['/path/to/vibn-frontend/mcp-server.js'],
});
const client = new Client({
name: 'my-ai-app',
version: '1.0.0',
}, {
capabilities: {},
});
await client.connect(transport);
// Now you can use the client to interact with Vibn data
const resources = await client.listResources();
const projectData = await client.readResource({ uri: 'vibn://projects' });
📚 Available Resources
Projects
- URI:
vibn://projects - Description: List all user projects
- Returns: Array of project objects with metadata
Project Sessions
- URI:
vibn://sessions/{projectId} - Description: Get all coding sessions for a specific project
- Returns: Array of session objects with timestamps, costs, tokens
AI Conversations
- URI:
vibn://conversations/{projectId} - Description: Get AI conversation history for a project
- Returns: Array of conversation messages with roles and timestamps
🛠️ Available Tools
get_project_summary
Get a comprehensive summary of a project.
Parameters:
projectId(string, required) - The project ID
Returns:
{
"project": { /* project data */ },
"stats": {
"totalSessions": 42,
"totalCost": 12.50,
"totalTokens": 125000,
"totalDuration": 3600
},
"recentSessions": [ /* last 5 sessions */ ]
}
search_sessions
Search coding sessions with filters.
Parameters:
projectId(string, optional) - Filter by projectworkspacePath(string, optional) - Filter by workspace pathstartDate(string, optional) - Filter by start date (ISO format)endDate(string, optional) - Filter by end date (ISO format)
Returns: Array of matching sessions
get_conversation_context
Get AI conversation history for context.
Parameters:
projectId(string, required) - The project IDlimit(number, optional) - Max messages to return (default: 50)
Returns: Array of conversation messages
💡 Example Use Cases
1. Get Project Overview
AI: Use the get_project_summary tool with projectId: "abc123"
2. Find Recent Sessions
AI: Use the search_sessions tool with projectId: "abc123" and no date filters
3. Reference Past Conversations
AI: Use the get_conversation_context tool with projectId: "abc123" to see what we discussed before
4. Analyze Coding Patterns
AI: Use search_sessions to find all sessions from workspacePath: "/Users/mark/my-project"
🔒 Security Notes
- The MCP server requires Firebase Admin credentials to access your data
- Only expose the MCP server to trusted AI assistants
- Consider running the server locally rather than exposing it publicly
- The server validates all requests and sanitizes inputs
🐛 Troubleshooting
Server Won't Start
- Ensure
.env.localhas all required Firebase credentials - Check that
@modelcontextprotocol/sdkis installed:npm install - Verify Node.js version is 18 or higher
AI Can't Connect
- Check the absolute path in your AI assistant's configuration
- Ensure the MCP server is running:
npm run mcp:server - Verify environment variables are set correctly
No Data Returned
- Confirm you have projects and sessions in Firebase
- Check that the user ID matches your authenticated user
- Review server logs for error messages
📖 Learn More
🤝 Contributing
Have ideas for new MCP resources or tools? Open an issue or PR!
Potential additions:
- Export project data
- Create/update projects via MCP
- Real-time session monitoring
- Cost analytics and forecasting