This server enables Google Developer Experts (GDEs) and Microsoft MVPs to submit activity reports through natural language conversations with AI, eliminating manual data entry.
Core Capabilities:
Google GDE Activity Submissions:
Content creation (articles, books, demos, newsletters, podcasts, videos)
Public speaking (conference talks, presentations with attendee tracking, supporting in-person/virtual/hybrid formats across 240+ countries)
Workshops (training sessions with participant tracking)
Mentoring (sessions with mentee counts)
Product feedback (early access programs, feedback sessions)
Googler interactions (surveys, user studies, bug reports, Stack Overflow/GitHub contributions)
Success stories (diversity & inclusion, business/social impact, community leading, open source)
Microsoft MVP Activity Submissions:
Videos (YouTube videos, webinars, livestreams with view counts)
Blog posts (articles with views and subscriber metrics)
Speaking engagements (conference presentations with attendee counts)
Additional Features:
Documentation Access: Browse and retrieve API references, error handling guides, and changelogs
Dual Program Support: Handle both GDE and MVP reporting simultaneously
Automated Token Management: Includes
capture-mvp-tokenutility for capturing and refreshing frequently expiring Microsoft MVP bearer tokensActivity Validation: Enforces required fields, dates, URLs, and data formats
Local Configuration: Stores tokens securely in Claude Desktop configuration without external data sharing
Private Activity Flagging: Option to mark activities as private
Integrates with Google's Developer Expert (GDE) program via the Advocu API, allowing GDEs to report various activities such as content creation, speaking engagements, workshops, mentoring sessions, product feedback, and interactions with Google employees.
Mentioned as a platform where content creation activities can be reported, allowing GDEs to submit their blog posts published on Medium.
Supports reporting activities related to React, such as blog posts about React hooks or presentations at React conferences.
Allows reporting of mentoring sessions and other activities related to TypeScript development.
Unified Activity Reporting MCP Server
π― Overview
A unified MCP (Model Context Protocol) server that enables both Google Developer Experts (GDEs) and Microsoft MVPs to report their activities through AI-powered conversational interfaces.
Stop the boring manual data entry! Just talk to Claude and submit your activities naturally - whether it's a YouTube video, blog post, conference talk, or mentoring session.
Supported Programs
β Microsoft MVP - Direct API integration with the MVP portal
β Google GDE - Integration with Advocu API
π§ Both at once - If you're both an MVP and GDE, use one tool for everything!
π Quick Start
Prerequisites
Node.js 18+
Claude Desktop
At least one access token (MVP or GDE)
Installation
Option 1: Local Development (Recommended)
Option 2: Global Install
Configuration
Edit your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
For Both MVP + GDE:
π Important: The
DOCS_DIRenvironment variable is required for documentation tools to work. Set it to the absolute path of thedocsdirectory in your installation.
MVP Only:
GDE Only:
Get Your Tokens
Microsoft MVP Token
For Claude Desktop users only (not Claude Code):
This tool will:
Open your default browser to the MVP portal (you should already be logged in)
Show you detailed instructions to capture the token from DevTools
Paste your token when prompted
Automatically update your Claude Desktop config file with the new token
No browser automation detection - uses your real browser session!
Google GDE Token
Get your token from the Advocu Developer Portal.
Restart Claude Desktop
Look for the π¨ hammer icon to confirm tools are loaded!
π¬ Usage Examples
Just talk to Claude naturally! Here are examples:
Documentation Tools
Microsoft MVP Activities
Submit a Video
Submit a Blog Post
Submit a Conference Talk
Google GDE Activities
π§ Available Tools
Documentation Tools (2) - Always Available
Tool | Description | Usage |
| List all available documentation | "List available documentation" |
| Get a specific documentation file | "Show me the MVP API reference" |
Available Documents:
api-reference- Complete API documentation for MVP and GDEmvp-api-reference- Detailed MVP API specificationsmvp-fixes-changelog- MVP integration fixes historyerror-handling- Error handling improvements guidemcp-resources- MCP resources usage guide
π Note: Documentation tools require
DOCS_DIRto be set in your configuration.
Microsoft MVP Tools (3)
Tool | Description | Key Fields |
| Videos, webinars, livestreams | views, sessions, role, tech area |
| Blog posts, articles | views, subscribers, tech area |
| Conference talks, presentations | attendees, sessions, tech area |
Google GDE Tools (7)
Tool | Description |
| Articles, videos, podcasts |
| Talks and presentations |
| Training sessions |
| Mentoring activities |
| Product feedback |
| Google employee interactions |
| Success stories |
π Token Refresh
Microsoft MVP Token (Expires: Hours/Days)
Your MVP token expires regularly. When you get a 401 error or your token expires:
For Claude Desktop users:
What happens:
π Your default browser opens to the MVP portal
β If you're already logged in, you'll see your account immediately
π If not logged in, log in with Microsoft (2FA supported)
π οΈ Open DevTools (F12 or Cmd+Option+I)
π Navigate to "Add activity" and fill any field
π In Network tab, find the request to
mavenapi-prod.azurewebsites.netπ Copy the Bearer token from the Authorization header
β¨οΈ Paste the token in the terminal
β Your Claude Desktop config file is automatically updated!
π Restart Claude Desktop
Advantages:
β Uses your real browser (no automation detection)
β Works with 2FA/MFA
β Automatically updates your Claude Desktop config file
β Clear step-by-step instructions
Google GDE Token (Expires: Less frequently)
Get a fresh token from Advocu when needed and update your config manually.
π Required Fields Reference
MVP Video Activity
MVP Blog Activity
MVP Speaking Activity
ποΈ Project Structure
π οΈ Development
Build
Development Mode
Lint and Format
Capture MVP Token
π Troubleshooting
Tools Don't Appear in Claude Desktop
Check config path: Ensure your
claude_desktop_config.jsonis in the right locationVerify build: Run
npm run buildin the project directoryCheck logs: Restart Claude Desktop and check for errors
Verify tokens: Make sure at least one token (MVP or GDE) is configured
401 Unauthorized Error (MVP)
Your token expired. Run:
Follow the instructions to capture a fresh token from DevTools, then restart Claude Desktop.
"At least one of GDE or MVP must be configured"
You need to set either:
ADVOCU_ACCESS_TOKEN(for GDE), orMVP_ACCESS_TOKEN+MVP_USER_PROFILE_ID(for MVP)
Both can be set if you're both an MVP and GDE!
Documentation Tools Not Working
If you get errors like "Failed to read resource" or "Documentation not found":
Check : Make sure you added
DOCS_DIRto your Claude Desktop configVerify the path: The path must be absolute and point to the
docsdirectoryExample:
"DOCS_DIR": "/Users/yourname/advocu-mcp-server/docs"Check directory exists: Run
ls "$DOCS_DIR"to verify the directory existsRestart Claude Desktop: Changes to config require a restart
Example config:
MVP Submission Fails
Check your profile ID: Make sure
MVP_USER_PROFILE_IDis correctVerify token: Run
npm run capture-mvp-tokento get a fresh tokenCheck required fields: All required fields must be provided
Target audience: Must be an array (e.g.,
["Developer"])
π Security & Privacy
Tokens are stored locally in your Claude Desktop config
Never commit tokens to version control
captured-api-calls.json- it contains sensitive dataMVP tokens expire regularly for security
Tokens are never sent to anyone except the official APIs
π API Documentation
Microsoft MVP API
Base URL:
https://mavenapi-prod.azurewebsites.net/apiEndpoint:
POST /Activities/Authentication: Bearer token
Payload:
{ "activity": { ...fields } }
Google GDE API (Advocu)
Base URL:
https://api.advocu.com/personal-api/v1/gdeEndpoints:
/activity-drafts/{type}Authentication: Bearer token
Rate Limit: 30 requests/minute
For detailed field documentation, see docs/API.md.
π€ Contributing
Fork the project
Create a feature branch:
git checkout -b feature/amazing-featureCommit your changes (use conventional commits)
Push to the branch:
git push origin feature/amazing-featureOpen a Pull Request
π License
MIT License - see LICENSE file for details.
π Acknowledgments
Built for Google Developer Experts and Microsoft MVPs
Powered by Model Context Protocol (MCP)
Integrates with Advocu and Microsoft MVP Portal
π‘ Tips
Be specific: The more details you provide to Claude, the better
Natural language: Just describe what you did - Claude will structure it
Batch submissions: Submit multiple activities in one conversation
Check responses: Claude will show you the API response for verification
Token expires? Just run
npm run capture-mvp-tokenand paste your new token - takes 30 seconds
Questions or issues? Open an issue on GitHub or check the troubleshooting section.
Want to add more activity types? Check out the code structure and submit a PR! π
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants like Claude to interact with Google Cloud Platform environments through natural language, allowing users to query and manage GCP resources during conversations.Last updated -9146179MIT License
- -securityFlicense-qualityA server implementing the Model Context Protocol that enables AI assistants like Claude to interact with Google's Gemini API for text generation, text analysis, and chat conversations.Last updated -
- -security-license-qualityA Model Context Protocol server that enables AI assistants like Claude to read from, append to, and format text in Google Documents programmatically.Last updated -131MIT License
- -securityFlicense-qualityProvides Multi-Agent Conversation Protocol access to Google Cloud TPU services, enabling management of Tensor Processing Units through natural language interactions with the Google TPU API.Last updated -