Your coding agent is basically a very confident Stack Overflow.
You ask: "How does our authentication work?"
Agent responds: Generic OAuth tutorial from training data
Reality: Your team uses custom auth-service with Postgres sessions, JWTs were explicitly rejected 6 months ago for security reasons discussed in Slack #engineering.
Your agent doesn't know your team's architecture, decisions, or conventions. It can't search your Slack discussions, GitHub history, or Notion specs. Every answer is generic.
This guide shows you how to connect your AI coding agent (Cursor, Windsurf, VS Code, Claude Code) to your team's actual knowledge using Zine's MCP server. After 15 minutes of setup, your agent becomes a team expert, not a web scraper.
Table of Contents
- The Generic Agent Problem
- The Solution: Zine MCP for Team Context
- Part 1: Connect Your Team's Knowledge to Zine
- Part 2: Configure Zine MCP in Your IDE
- Part 3: Using Team Context in Your Workflow
- Real-World Workflows Transformed
- Before and After Comparison
- Troubleshooting
- Advanced: Combining Multiple MCP Servers
The Generic Agent Problem
Scenario 1: Implementing a New Feature
Task: "Implement password reset flow"
Without Zine MCP:
- Ask Cursor: "How do I implement password reset?"
- Cursor responds: Generic tutorial (Firebase, Auth0, bcrypt)
- You implement following generic pattern
- Code review: "This doesn't match our email verification flow" (you didn't know there was one)
- You search GitHub manually for email verification
- Find PR #234 from 8 months ago
- Rewrite your code to match team pattern
- Time wasted: 1 hour
With Zine MCP:
- Ask Cursor: "How did we implement email verification?" (similar flow)
- Cursor queries Zine → Returns:
- GitHub PR #234 "Add email verification"
- Notion doc "Email Security Guidelines"
- Slack thread where team discussed verification UX
- You implement following your team's established pattern
- Code review: "Perfect, matches our email flow"
- Time saved: 1 hour
Scenario 2: Debugging Production Issues
Task: "Fix checkout API timeout"
Without Zine MCP:
- Check Sentry (error logs)
- Search Slack #incidents manually
- Search GitHub for recent checkout changes manually
- Ask senior engineer if they've seen this before
- Piece together context from 4 tools
- Time wasted: 30-45 minutes
With Zine MCP:
- Ask Cursor: "Search Zine for checkout API timeout incidents"
- Cursor queries Zine → Returns:
- Slack #incidents thread from 2 months ago (same error, resolution documented)
- GitHub PR #567 that fixed it last time
- Notion runbook for checkout troubleshooting
- You apply the same fix (or know where to look)
- Time saved: 30 minutes
Scenario 3: Code Review
Task: Review PR adding new API endpoint
Without Zine MCP:
- Read PR code
- Guess if it follows team standards (you're new, don't know patterns)
- Approve or request changes based on intuition
- Miss security issues (team has guidelines in Notion you didn't know about)
With Zine MCP:
- Ask Cursor: "Search Zine for API security guidelines"
- Cursor queries Zine → Returns:
- Notion "API Security Checklist"
- Past PR review comments about common mistakes
- Slack discussion about rate limiting requirements
- You review PR against team standards
- Catch security issue before merge
- Quality improved, confidence increased
The Solution: Zine MCP for Team Context
What This Setup Gives You
Before: Coding agent knows the internet
After: Coding agent knows your team's specific knowledge
What your agent gains access to:
- Slack discussions: 2+ years of #engineering conversations
- GitHub history: All repos, issues, PRs, commits
- Notion specs: Architecture decisions, guidelines, runbooks
- Meeting recordings: Architecture reviews, design discussions
- Email threads: Technical discussions with vendors, partners
How it works:
- You ask Cursor a question
- Cursor queries Zine MCP (background, transparent)
- Zine searches your connected tools
- Cursor gets results + citations
- Cursor responds with team-specific context
All automatic. No manual searching. No copy/paste.
Part 1: Connect Your Team's Knowledge to Zine
Before you can use Zine MCP, you need data in Zine.
Step 1: Sign Up for Zine
- Go to zine.ai
- Click Get Started
- Sign up (OAuth with Google/GitHub or email)
- Choose plan: Free tier works for testing
Step 2: Connect Essential Tools
For developers, prioritize:
GitHub (required):
- Data Sources → Add Source → GitHub
- Choose connector types:
- ✅ GitHub Code (repo contents)
- ✅ GitHub Issues (bugs, features)
- ✅ GitHub PRs (implementations, reviews)
- ✅ GitHub Commits (change history)
- OAuth authorize
- Select repos (start with 5-10 core repos)
- Initial sync: 30min - 2 hours
Slack (highly recommended):
- Data Sources → Add Source → Slack
- OAuth authorize
- Select channels: #engineering, #devops, #product, #architecture
- Initial sync: 30min - 1 hour
Notion (if your team uses it):
- Data Sources → Add Source → Notion
- OAuth authorize
- Select pages: Specs, architecture decisions, runbooks
- Initial sync: 10-30 minutes
Gmail (optional but useful):
- Data Sources → Add Source → Gmail
- OAuth authorize
- Filter: Tech discussions, vendor emails
- Initial sync: 1-2 hours
You can use Zine immediately after first batch syncs (don't need to wait for everything).
Step 3: Verify Data is Synced
- Go to Zine search
- Test query: "authentication"
- Verify results from GitHub, Slack appear
- If empty: Wait for initial sync to complete (check Data Sources → Status)
Part 2: Configure Zine MCP in Your IDE
For Cursor Users
Step 1: Get Your Zine API Key
- Zine Settings → API Keys
- Create new key: "MCP Integration"
- Copy key (keep secure)
Step 2: Edit Cursor MCP Config
Mac/Linux:
nano ~/.cursor/mcp_servers.json
Windows:
notepad %USERPROFILE%\.cursor\mcp_servers.json
Step 3: Add Zine Server
{
"mcpServers": {
"zine": {
"type": "sse",
"url": "https://www.zine.ai/mcp",
"apiKey": "your-zine-api-key-here"
}
}
}
Replace your-zine-api-key-here with your actual API key.
Step 4: Restart Cursor
- Quit Cursor completely (Cmd+Q or Ctrl+Q)
- Reopen Cursor
- MCP connection established automatically
Step 5: Test
Open Cursor chat (Cmd+L):
Search Zine for authentication implementation
If working, Cursor will query Zine and show results.
For VS Code Users
Follow similar steps:
- Edit
~/.vscode/mcp_servers.json - Add Zine server config
- Restart VS Code
- Test with
@zine Search for authentication
See full details: MCP Integration Guide
For Windsurf Users
Config location: ~/.windsurf/mcp_servers.json
Same config format, different file location.
For Claude Code Users
In-browser MCP setup:
- Settings → MCP Servers
- Add Zine (URL + API key)
- Test queries
Part 3: Using Team Context in Your Workflow
Example Queries That Now Work
Architecture Questions:
Search Zine for database choice rationale
How did we decide on Postgres vs MongoDB?
What's our caching strategy?
Implementation Patterns:
Search Zine for API rate limiting implementation
How does our team handle error responses?
What's the standard way to structure tests?
Recent Discussions:
Search Zine for recent Redis discussions
What did the team say about performance optimization?
What's the status of the API redesign?
Expertise Discovery:
Search Zine for who worked on authentication
Who knows about the payment service?
Historical Context:
Search Zine for why JWT was rejected
What were the concerns about microservices?
Bug Context:
Search Zine for checkout timeout incidents
Has this error happened before?
How was it fixed last time?
Real-World Workflows Transformed
Workflow 1: New Feature Implementation
Task: Implement SSO (Single Sign-On)
Step 1: Research
In Cursor:
Search Zine for SSO requirements
Cursor gets from Zine:
- Notion spec: "Enterprise Authentication - SSO Support"
- Customer emails: 8 customers requested SSO
- Slack #product: Priority discussion, Q4 timeline
You now know: Requirements, customer demand, timeline.
Step 2: Technical Approach
In Cursor:
Search Zine for OAuth implementation
Cursor gets:
- GitHub PR #234: "Add OAuth2" (your team's existing OAuth implementation)
- Slack #engineering: Discussion about SAML vs OAuth decision
- Notion: "OAuth Security Checklist"
You now know: Follow OAuth pattern (not SAML), use existing code as reference, check security list.
Step 3: Implement
Write code. Cursor has context:
- Autocomplete suggestions match team patterns
- Security guidelines referenced automatically
- Implementation follows established conventions
Step 4: Pre-Submit Check
In Cursor:
Search Zine for API security review guidelines
Cursor gets:
- Past PR review comments on similar features
- Common security mistakes to avoid
- Required tests for auth features
You self-review before submitting: Fewer review cycles.
Result: Feature implemented correctly the first time, following team patterns, meeting security requirements.
Workflow 2: Bug Fix
Error: Payment API throwing 500 errors
Step 1: Context Gathering
In Cursor:
Search Zine for payment API errors OR timeouts
Cursor gets:
- Slack #incidents: Thread from 2 months ago (same error, resolution documented)
- GitHub Issue #567: "Payment timeout fixed" (describes root cause)
- GitHub PR #601: The fix (Redis cache timeout handling)
- Notion runbook: "Payment Service Troubleshooting"
Step 2: Hypothesis
Based on past incident: Redis cache timeout likely cause.
In Cursor:
Search Zine for recent Redis changes
Cursor gets:
- GitHub PR #789: Merged yesterday, modified Redis config
- Slack #engineering: "Concerns about new Redis settings"
Hypothesis confirmed: Recent Redis change caused regression.
Step 3: Fix
In Cursor:
Show me the diff in PR #789
Cursor accesses GitHub (via Zine):
- Shows config change:
timeout: 5000→timeout: 1000(too aggressive) - PR review comment: "Is 1 second enough?" (concern was raised but merged anyway)
Fix: Increase timeout to 3000ms (middle ground).
Step 4: Submit Fix
PR includes:
- Context from past incident
- Links to Slack discussion
- References runbook
Result: Bug fixed in 15 minutes with full context (vs. 2 hours of manual investigation).
Workflow 3: Code Review with Full Context
PR to Review: "Refactor authentication middleware"
Step 1: Understand Current System
In Cursor:
Search Zine for authentication architecture
Cursor gets:
- Notion spec: "Auth Architecture v2" (current design)
- GitHub repo:
auth-service(current code) - Slack #engineering: Past discussions about auth decisions
Step 2: Check Review Guidelines
In Cursor:
Search Zine for code review security checklist
Cursor gets:
- Notion: "Security Review Checklist" (SQL injection, XSS, auth bypass tests)
- Past PR reviews: Common feedback on auth code
Step 3: Review PR
Read PR. Cursor helps:
- "Does this PR handle SQL injection?" → Check against Notion checklist
- "Are there similar implementations?" → Search Zine, find 3 past PRs
- "What test coverage is expected?" → Notion guidelines: 80% for auth code
Step 4: Leave Review
Feedback includes:
- References to team guidelines (Notion links)
- Comparison to past implementations (GitHub links)
- Security concerns (based on checklist)
Result: High-quality review grounded in team context, not generic advice.
Before and After Comparison
Before: Generic Agent
Developer asks: "How do we handle database migrations?"
Cursor (no context): "Here's a generic approach using Flyway or Liquibase. Create migration scripts in a /migrations directory. Use semantic versioning..."
Problem:
- Doesn't know your team uses custom migration tool
- Doesn't know your team's migration process (documented in Slack #devops)
- Doesn't know past migration issues (incidents in Slack #incidents)
Developer: Follows generic advice, breaks production migration
After: Context-Aware Agent
Developer asks: "How do we handle database migrations?"
Cursor (with Zine MCP):
- Queries Zine: "database migration process"
- Zine returns:
- GitHub repo:
db-migrations/(your team's custom tool) - Notion runbook: "Database Migration Process" (step-by-step)
- Slack #devops (May): "Migration process updated after Q2 incident"
- Slack #incidents (March): "Failed migration rolled back—lessons learned"
- GitHub repo:
- Cursor responds: "Your team uses a custom migration tool in the
db-migrationsrepo. According to the Notion runbook, migrations must be tested in staging first. See the Slack discussion about the Q2 incident for what not to do."
Developer: Follows team process, migration succeeds
Real-World Workflows Transformed
Workflow 1: Implementing OAuth
Without Zine: Google OAuth tutorials, implement generic version, doesn't match team's security standards
With Zine:
- "How does our team implement OAuth?"
- Returns: PR #234 (existing OAuth implementation), Notion security guidelines, Slack discussion about token refresh
- Implement following established pattern
- Security team approves (matches guidelines)
Workflow 2: Refactoring Legacy Code
Without Zine: Refactor without knowing why original approach was chosen, introduce bugs, rollback
With Zine:
- "Why was this coded this way?"
- Returns: GitHub PR from 2 years ago, Slack discussion explaining trade-offs, known issues
- Refactor avoiding known pitfalls
- Success
Workflow 3: Onboarding to New Service
Without Zine: Clone repo, read code for 2 hours, still confused, ask senior engineer
With Zine:
- "How does the payment service work?"
- Returns: Notion architecture doc, GitHub repo README, Slack #payments discussions, meeting recording of design review
- Understand in 20 minutes
- Start contributing same day
Troubleshooting
Connection Issues
Problem: Cursor not finding Zine MCP
Check:
- API key correct in config file?
- Cursor restarted completely?
- Network access to zine.ai not blocked?
Test connection:
curl -H "Authorization: Bearer your-api-key" https://www.zine.ai/mcp/health
Should return {"status": "ok"}
Empty Results
Problem: Queries return no results
Causes:
- Data not synced yet: Check Zine dashboard, verify sync complete
- Too specific query: Try broader search terms
- No data in Zine: Connect Slack, GitHub in Zine first
Solution: Verify Data Sources → check sync status
Slow Responses
Problem: Queries take 10+ seconds
Causes:
- First query (not cached)
- Very broad search (returns 1000+ results)
- Large workspace (1M+ messages/files)
Solutions:
- Be more specific ("auth implementation" vs. just "auth")
- Use saved views in Zine (pre-filtered searches)
- Upgrade Zine plan (higher performance limits)
Advanced: Combining Multiple MCP Servers
Zine + Sentry MCP
Setup: Connect both Zine and Sentry MCP to Cursor
Cursor config:
{
"mcpServers": {
"zine": {
"type": "sse",
"url": "https://www.zine.ai/mcp",
"apiKey": "your-zine-key"
},
"sentry": {
"type": "sse",
"url": "https://sentry-mcp.example.com",
"apiKey": "your-sentry-key"
}
}
}
Now you can:
- "Search Zine for checkout errors" → Gets team discussions
- "Search Sentry for checkout error traces" → Gets actual error logs
- Cursor combines: Team context + error traces = faster debugging
Zine + GitHub MCP
Why both?
- Zine GitHub: Historical search (old issues, PRs, discussions)
- GitHub MCP: Real-time API access (create issues, comment on PRs)
Use case:
- Search Zine for similar bug fixes (history)
- Use GitHub MCP to create new issue (action)
Next Steps
Now that your coding agent has team context:
- ✅ Use It Daily: Make Zine queries part of your workflow
- ✅ Share with Team: Help teammates set up MCP
- ✅ Connect More Data: Add Jira, Linear, meeting recordings for richer context
- ✅ Create Saved Views: In Zine, save common queries for faster access
- ✅ Give Feedback: Tell your team how much time you're saving
Related Guides:
- MCP Integration - Complete MCP setup guide
- GitHub Intelligence - Deep dive on GitHub connector
- Slack Knowledge Base - Deep dive on Slack connector
- Data Connectors - Connect 30+ sources
Video Tutorial:
Learn More:
- Try Zine - Free tier available
- Schedule a demo - Get help setting up for your team
Generic answers from the web. Specific answers from your team. Choose the latter.