Skip to main content
Glama

Manoj's Personal MCP Server

Remote MCP server giving Claude access to Jira, Confluence, Gmail, Drive, and Slack — from any device including phone.

Tools included

Tool

What it does

jira_create_ticket

Create a Jira issue with summary, description, priority, labels

jira_search

Search issues by plain English or JQL

jira_get_issue

Get full details of any issue

jira_transition

Move issue to new status (In Progress, Done, etc.)

jira_add_comment

Add a comment to any issue

jira_my_issues

Get all your open issues

confluence_search

Search pages by keyword

confluence_get_page

Read full page content

confluence_create_page

Create a new page in any space

gmail_search

Search email threads

gmail_read_thread

Read a full email thread

gmail_create_draft

Create a draft (does not send)

gmail_unread_count

Get unread inbox count

drive_search

Search Drive files by name or content

drive_read_doc

Read a Google Doc's content

drive_list_folder

List files in a folder

slack_search

Search messages across all channels

slack_read_channel

Read recent messages in a channel

slack_find_channel

Find a channel ID by name

slack_send_message

Send a message to a channel


Related MCP server: Confluence MCP Server

Deploy to Railway (free, ~15 minutes)

Step 1 — Push to GitHub

cd manoj-mcp
git init
git add .
git commit -m "initial commit"

Then create a new repo on github.com (name it manoj-mcp, private) and:

git remote add origin https://github.com/YOUR_USERNAME/manoj-mcp.git
git push -u origin main

Step 2 — Deploy on Railway

  1. Go to railway.app → Sign in with GitHub

  2. Click New ProjectDeploy from GitHub repo → select manoj-mcp

  3. Railway auto-detects Node.js and deploys. Wait ~2 minutes.

  4. Go to Settings → Networking → click Generate Domain → copy your URL e.g. https://manoj-mcp-production.up.railway.app

Step 3 — Set environment variables in Railway

Go to your service → Variables tab → add all from .env.example:

Variable

Where to get it

MCP_AUTH_TOKEN

Make up a long random string — use a password generator

JIRA_DOMAIN

prathamdigitalteam.atlassian.net

JIRA_EMAIL

manoj.mahale@pratham.org

JIRA_API_TOKEN

id.atlassian.com/manage-profile/security/api-tokens

GMAIL_ACCESS_TOKEN

See below

SLACK_BOT_TOKEN

See below

Getting GMAIL_ACCESS_TOKEN:

  1. Go to developers.google.com/oauthplayground

  2. Select scopes: Gmail API v1 (gmail.readonly, gmail.compose) + Drive API v3 (drive.readonly) + Google Docs API v1 (documents.readonly)

  3. Click Authorize → Exchange for tokens → copy Access Token

  4. Note: access tokens expire in 1 hour. For permanent access you'll need OAuth refresh flow — we'll set that up next.

Getting SLACK_BOT_TOKEN:

  1. Go to api.slack.com/apps → Create New App → From Scratch

  2. Name: Manoj MCP → pick your workspace

  3. Go to OAuth & Permissions → Bot Token Scopes → add: channels:read, channels:history, search:read, chat:write

  4. Click Install to Workspace → copy Bot User OAuth Token (starts with xoxb-)

Step 4 — Test

curl https://your-railway-url.railway.app/health
# Should return: {"status":"ok","service":"manoj-mcp"}

curl -H "Authorization: Bearer YOUR_TOKEN" https://your-railway-url.railway.app/sse
# Should open SSE stream

Step 5 — Connect in Claude.ai on phone

  1. Open Claude.ai on phone → Settings → MCP Servers (or Integrations)

  2. Add new server:

    • URL: https://your-railway-url.railway.app/sse

    • Auth: Bearer YOUR_MCP_AUTH_TOKEN

  3. Save → you'll see all 20 tools available


Local development

npm install
cp .env.example .env
# Fill in .env values
npm run dev

Server runs on http://localhost:3000

Related MCP Connectors

Related MCP Servers