Guide

AI Coding Agent Setup: Give Cursor Real Context, Not Generic Answers

Transform your AI coding agent from generic Stack Overflow to team expert. Connect Cursor to your Slack, GitHub, and docs with Zine MCP.

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

  1. The Generic Agent Problem
  2. The Solution: Zine MCP for Team Context
  3. Part 1: Connect Your Team's Knowledge to Zine
  4. Part 2: Configure Zine MCP in Your IDE
  5. Part 3: Using Team Context in Your Workflow
  6. Real-World Workflows Transformed
  7. Before and After Comparison
  8. Troubleshooting
  9. Advanced: Combining Multiple MCP Servers

The Generic Agent Problem

Scenario 1: Implementing a New Feature

Task: "Implement password reset flow"

Without Zine MCP:

  1. Ask Cursor: "How do I implement password reset?"
  2. Cursor responds: Generic tutorial (Firebase, Auth0, bcrypt)
  3. You implement following generic pattern
  4. Code review: "This doesn't match our email verification flow" (you didn't know there was one)
  5. You search GitHub manually for email verification
  6. Find PR #234 from 8 months ago
  7. Rewrite your code to match team pattern
  8. Time wasted: 1 hour

With Zine MCP:

  1. Ask Cursor: "How did we implement email verification?" (similar flow)
  2. Cursor queries Zine → Returns:
    • GitHub PR #234 "Add email verification"
    • Notion doc "Email Security Guidelines"
    • Slack thread where team discussed verification UX
  3. You implement following your team's established pattern
  4. Code review: "Perfect, matches our email flow"
  5. Time saved: 1 hour

Scenario 2: Debugging Production Issues

Task: "Fix checkout API timeout"

Without Zine MCP:

  1. Check Sentry (error logs)
  2. Search Slack #incidents manually
  3. Search GitHub for recent checkout changes manually
  4. Ask senior engineer if they've seen this before
  5. Piece together context from 4 tools
  6. Time wasted: 30-45 minutes

With Zine MCP:

  1. Ask Cursor: "Search Zine for checkout API timeout incidents"
  2. 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
  3. You apply the same fix (or know where to look)
  4. Time saved: 30 minutes

Scenario 3: Code Review

Task: Review PR adding new API endpoint

Without Zine MCP:

  1. Read PR code
  2. Guess if it follows team standards (you're new, don't know patterns)
  3. Approve or request changes based on intuition
  4. Miss security issues (team has guidelines in Notion you didn't know about)

With Zine MCP:

  1. Ask Cursor: "Search Zine for API security guidelines"
  2. Cursor queries Zine → Returns:
    • Notion "API Security Checklist"
    • Past PR review comments about common mistakes
    • Slack discussion about rate limiting requirements
  3. You review PR against team standards
  4. Catch security issue before merge
  5. 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:

  1. You ask Cursor a question
  2. Cursor queries Zine MCP (background, transparent)
  3. Zine searches your connected tools
  4. Cursor gets results + citations
  5. 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

  1. Go to zine.ai
  2. Click Get Started
  3. Sign up (OAuth with Google/GitHub or email)
  4. Choose plan: Free tier works for testing

Step 2: Connect Essential Tools

For developers, prioritize:

GitHub (required):

  1. Data Sources → Add Source → GitHub
  2. Choose connector types:
    • GitHub Code (repo contents)
    • GitHub Issues (bugs, features)
    • GitHub PRs (implementations, reviews)
    • GitHub Commits (change history)
  3. OAuth authorize
  4. Select repos (start with 5-10 core repos)
  5. Initial sync: 30min - 2 hours

Slack (highly recommended):

  1. Data Sources → Add Source → Slack
  2. OAuth authorize
  3. Select channels: #engineering, #devops, #product, #architecture
  4. Initial sync: 30min - 1 hour

Notion (if your team uses it):

  1. Data Sources → Add Source → Notion
  2. OAuth authorize
  3. Select pages: Specs, architecture decisions, runbooks
  4. Initial sync: 10-30 minutes

Gmail (optional but useful):

  1. Data Sources → Add Source → Gmail
  2. OAuth authorize
  3. Filter: Tech discussions, vendor emails
  4. 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

  1. Go to Zine search
  2. Test query: "authentication"
  3. Verify results from GitHub, Slack appear
  4. 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

  1. Zine Settings → API Keys
  2. Create new key: "MCP Integration"
  3. 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:

  1. Edit ~/.vscode/mcp_servers.json
  2. Add Zine server config
  3. Restart VS Code
  4. 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:

  1. Settings → MCP Servers
  2. Add Zine (URL + API key)
  3. 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: 5000timeout: 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):

  1. Queries Zine: "database migration process"
  2. 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"
  3. Cursor responds: "Your team uses a custom migration tool in the db-migrations repo. 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:

  1. "How does our team implement OAuth?"
    • Returns: PR #234 (existing OAuth implementation), Notion security guidelines, Slack discussion about token refresh
  2. Implement following established pattern
  3. 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:

  1. "Why was this coded this way?"
    • Returns: GitHub PR from 2 years ago, Slack discussion explaining trade-offs, known issues
  2. Refactor avoiding known pitfalls
  3. Success

Workflow 3: Onboarding to New Service

Without Zine: Clone repo, read code for 2 hours, still confused, ask senior engineer

With Zine:

  1. "How does the payment service work?"
    • Returns: Notion architecture doc, GitHub repo README, Slack #payments discussions, meeting recording of design review
  2. Understand in 20 minutes
  3. Start contributing same day

Troubleshooting

Connection Issues

Problem: Cursor not finding Zine MCP

Check:

  1. API key correct in config file?
  2. Cursor restarted completely?
  3. 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:

  1. Data not synced yet: Check Zine dashboard, verify sync complete
  2. Too specific query: Try broader search terms
  3. 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:

  1. First query (not cached)
  2. Very broad search (returns 1000+ results)
  3. 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:

  1. "Search Zine for checkout errors" → Gets team discussions
  2. "Search Sentry for checkout error traces" → Gets actual error logs
  3. 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:

  1. Use It Daily: Make Zine queries part of your workflow
  2. Share with Team: Help teammates set up MCP
  3. Connect More Data: Add Jira, Linear, meeting recordings for richer context
  4. Create Saved Views: In Zine, save common queries for faster access
  5. Give Feedback: Tell your team how much time you're saving

Related Guides:

Video Tutorial:

Learn More:


Generic answers from the web. Specific answers from your team. Choose the latter.

Ready to Build with Graphlit?

Start building AI-powered applications with our API-first platform. Free tier includes 100 credits/month — no credit card required.

No credit card required • 5 minutes to first API call

AI Coding Agent Setup: Give Cursor Real Context, Not Generic Answers | Graphlit Developer Guides