Skip to content

techanvil/mcp-dev-workflow

Repository files navigation

MCP Dev Workflow

A collection of Model Context Protocol (MCP) servers for development workflow tools. This project provides scalable MCP servers that enable AI assistants like Cursor to interact with development tools and services through natural language.

🌟 Available Servers

πŸ™ GitHub MCP Server

Interact with GitHub repositories through natural language commands.

Features:

  • Get detailed issue and PR information
  • List and browse repository content
  • Search issues and PRs across repositories
  • Works with any public repository
  • Default repository configuration for simplified usage

Tools: get_github_issue, get_github_pr, list_github_issues, list_github_prs, search_github_issues

πŸ“„ Google Workspace MCP Server

Read and search Google Docs, with extensible architecture for Sheets, Gmail, and Drive.

Current Features:

  • Google Docs: Read content, search within documents, get metadata
  • Multiple Formats: Plain text, Markdown, or structured output
  • Smart URL Parsing: Works with Google Docs URLs or document IDs
  • Authentication Options: Service Account or OAuth2

Tools: get_google_doc, get_google_doc_metadata, search_google_doc

Planned: Google Sheets, Gmail, Google Drive integration

🎨 Figma MCP Server

Bridge design and development workflows with comprehensive Figma integration.

Features:

  • Design Token Extraction: Colors, typography, spacing in CSS/SCSS/JSON formats
  • Component Discovery: Find reusable components and design patterns
  • Asset Export: Download icons, images, and design assets as SVG/PNG
  • Design File Analysis: Read file structure, comments, and layer information
  • Multi-Format Output: Structured data optimized for development handoff

Tools: get_figma_file, get_figma_comments, search_figma_layers, get_figma_components, get_design_tokens, export_figma_assets

πŸš€ Quick Start

1. Install

git clone <repository-url>
cd mcp-dev-workflow
npm install

2. Configure Cursor

# Copy configuration to Cursor
cp cursor-mcp-config.json ~/.cursor/mcp.json
# Update paths in the config for your system

3. Restart Cursor

Restart Cursor completely for MCP servers to load.

4. Test

GitHub (works immediately):

  • "Show me issue 2345"
  • "List recent open issues"
  • "Search for storybook issues"

Google Workspace (requires authentication):

Figma (requires authentication):

πŸ’¬ Natural Language Usage

Instead of technical syntax, use natural language:

GitHub:

  • "Show me issue 2345" (uses default repo: google/site-kit-wp)
  • "Find storybook-related issues"
  • "List recent PRs from nodejs/node"

Google Workspace:

  • "Read the design doc at [URL]"
  • "Search for 'authentication' in that document"
  • "What's the metadata for this Google Doc?"

Figma:

πŸ“š Documentation

Setup & Configuration

Usage & Examples

Service-Specific Docs

πŸ”§ Configuration Reference

Cursor MCP Configuration

{
  "mcpServers": {
    "github-dev-workflow": {
      "command": "node",
      "args": ["/path/to/mcp-dev-workflow/servers/github/index.js"],
      "env": {
        "GITHUB_TOKEN": "optional_token",
        "DEFAULT_GITHUB_OWNER": "google",
        "DEFAULT_GITHUB_REPO": "site-kit-wp"
      }
    },
    "google-workspace": {
      "command": "node",
      "args": ["/path/to/mcp-dev-workflow/servers/google-workspace/index.js"],
      "env": {
        "GOOGLE_SERVICE_ACCOUNT_FILE": "/path/to/service-account.json"
      }
    },
    "figma": {
      "command": "node",
      "args": ["/path/to/mcp-dev-workflow/servers/figma/index.js"],
      "env": {
        "FIGMA_ACCESS_TOKEN": "figd_your_token_here",
        "DEFAULT_FIGMA_TEAM_ID": "your_team_id",
        "DEFAULT_FIGMA_PROJECT_ID": "your_project_id"
      }
    }
  }
}

Authentication Setup

GitHub (Optional):

  • Public repos: No authentication needed
  • Private repos + higher limits: Add GITHUB_TOKEN to .env

Google Workspace (Required):

  • OAuth2 (personal): npm run auth:google
  • Service Account (teams): Set GOOGLE_SERVICE_ACCOUNT_FILE

Figma (Required):

  • Personal Access Token: Generate in Figma Settings β†’ Personal Access Tokens
  • Set Token: Add FIGMA_ACCESS_TOKEN to .env

See the Setup Guide for detailed authentication instructions.

πŸ› οΈ Development

Running Servers Locally

# Test individual servers
npm run start:github
npm run start:google-workspace
npm run start:figma

# Set up Google authentication
npm run auth:google

# Verify setup
npm run test:setup

Adding New Servers

  1. Create servers/your-service/ directory
  2. Follow the existing server patterns
  3. Add configuration to cursor-mcp-config.json
  4. Update documentation

See existing servers for implementation patterns.

πŸ—οΈ Architecture

mcp-dev-workflow/
β”œβ”€β”€ docs/                    # Documentation
β”‚   β”œβ”€β”€ setup/               # Setup & configuration guides
β”‚   β”œβ”€β”€ usage/               # Usage patterns & commands
β”‚   └── examples/            # Real-world workflows
β”œβ”€β”€ servers/                 # MCP server implementations
β”‚   β”œβ”€β”€ github/              # GitHub integration
β”‚   └── google-workspace/    # Google Workspace integration
β”‚       β”œβ”€β”€ modules/         # Service-specific modules
β”‚       └── utils/           # Shared utilities
β”œβ”€β”€ cursor-mcp-config.json   # Ready-to-use Cursor configuration
└── package.json             # Dependencies & scripts

Each server follows a modular pattern for easy extension and maintenance.

🚨 Common Issues

Tools not available in Cursor:

  1. Copy cursor-mcp-config.json to ~/.cursor/mcp.json
  2. Update file paths for your system
  3. Restart Cursor completely

GitHub rate limits:

  • Add GITHUB_TOKEN to .env for 5,000 requests/hour

Google Workspace authentication:

  • Run npm run auth:google for OAuth2 setup
  • Or set GOOGLE_SERVICE_ACCOUNT_FILE for Service Account

Figma authentication:

  • Generate Personal Access Token in Figma Settings
  • Add FIGMA_ACCESS_TOKEN to .env file

See the Setup Guide for detailed troubleshooting.

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/new-server
  3. Follow existing server patterns in servers/
  4. Add documentation in docs/
  5. Submit a pull request

πŸ“„ License

Apache License 2.0 - see LICENSE file for details.


Ready to start? Check the Setup Guide for installation instructions or jump to Examples to see what's possible!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published