THE PROJECT HAS BEEN SPLIT AND MOVED TO INDIVIDUAL REPOSITORIES. - Google Kit: Tools for Gmail, Google Calendar, Google Chat - RAG Kit: Tools for RAG, Memory - Dev Kit: Tools for developers, jira, confluence, gitlab, github, ... - Fetch Kit: Tools for fetch, scrape, ... - Research Kit: Tools for research, academic, reasoning, ... A powerful Model Context Protocol (MCP) server implementation with i
Add this skill
npx mdskills install nguyenvanduocit/all-in-one-model-context-protocolDeprecated MCP server with extensive tool integrations but project has moved to split repositories
1# THE PROJECT IS MOVED23THE PROJECT HAS BEEN SPLIT AND MOVED TO INDIVIDUAL REPOSITORIES.45- [Google Kit](https://github.com/nguyenvanduocit/google-kit): Tools for Gmail, Google Calendar, Google Chat6- [RAG Kit](https://github.com/nguyenvanduocit/rag-kit): Tools for RAG, Memory7- [Dev Kit](https://github.com/nguyenvanduocit/dev-kit): Tools for developers, jira, confluence, gitlab, github, ...8- [Fetch Kit](https://github.com/nguyenvanduocit/fetch-kit): Tools for fetch, scrape, ...9- [Research Kit](https://github.com/nguyenvanduocit/research-kit): Tools for research, academic, reasoning, ...1011# MyMCP Server1213[](https://smithery.ai/server/@nguyenvanduocit/all-in-one-model-context-protocol)14A powerful Model Context Protocol (MCP) server implementation with integrations for GitLab, Jira, Confluence, YouTube, and more. This server provides AI-powered search capabilities and various utility tools for development workflows.1516[Tutorial](https://www.youtube.com/watch?v=XnDFtYKU6xU)1718## Community1920For community support, discussions, and updates, please visit our forum at [community.aiocean.io](https://community.aiocean.io/).212223## Prerequisites2425- Go 1.23.2 or higher26- Various API keys and tokens for the services you want to use2728## Installation2930### Installing via Smithery3132To install MyMCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@nguyenvanduocit/all-in-one-model-context-protocol) (will guide you through interactive CLI setup):3334```bash35npx -y @smithery/cli install @nguyenvanduocit/all-in-one-model-context-protocol --client claude36```3738*Note: Smithery will interactively prompt you for required configuration values and handle environment setup automatically*3940### Installing via Go41421. Install the server:43```bash44go install github.com/nguyenvanduocit/all-in-one-model-context-protocol@latest45```46472. **Manual setup required** - Create a `.env` file with your configuration:48```env49ENABLE_TOOLS=50QDRANT_HOST=51ATLASSIAN_HOST=52ATLASSIAN_EMAIL=53GITLAB_HOST=54GITLAB_TOKEN=55BRAVE_API_KEY=56ATLASSIAN_TOKEN=57GOOGLE_AI_API_KEY=58PROXY_URL=59OPENAI_API_KEY=60DEEPSEEK_API_KEY=61QDRANT_PORT=62GOOGLE_TOKEN_FILE=63GOOGLE_CREDENTIALS_FILE=64QDRANT_API_KEY=65```66673. Config your claude's config:6869```json{claude_desktop_config.json}70{71 "mcpServers": {72 "my_mcp_server": {73 "command": "all-in-one-model-context-protocol",74 "args": ["-env", "/path/to/.env"],75 }76 }77}78```7980## Secret8182*GOOGLE_TOKEN_FILE* is using for Google AI like Gemini, Google Search, Google Calendar, etc.8384*GOOGLE_CREDENTIALS_FILE* is service account for advanced feature like Google Chat. You need to create project in Google Cloud Console and create service account. Then also need to create Google cloud bot chat for it. Ask any LLM model to create these for you.85868788## Enable Tools8990There are a hidden variable `ENABLE_TOOLS` in the environment variable. It is a comma separated list of tools group to enable. If not set, all tools will be enabled. Leave it empty to enable all tools.919293Here is the list of tools group:9495- `gemini`: Gemini-powered search96- `fetch`: Fetch tools97- `confluence`: Confluence tools98- `youtube`: YouTube tools99- `jira`: Jira tools100- `gitlab`: GitLab tools101- `script`: Script tools102- `rag`: RAG tools103- `deepseek`: Deepseek AI tools104105## Available Tools106107### calendar_create_event108109Create a new event in Google Calendar110111Arguments:112113- `summary` (String) (Required): Title of the event114- `description` (String): Description of the event115- `start_time` (String) (Required): Start time of the event in RFC3339 format (e.g., 2023-12-25T09:00:00Z)116- `end_time` (String) (Required): End time of the event in RFC3339 format117- `attendees` (String): Comma-separated list of attendee email addresses118119### calendar_list_events120121List upcoming events in Google Calendar122123Arguments:124125- `time_min` (String): Start time for the search in RFC3339 format (default: now)126- `time_max` (String): End time for the search in RFC3339 format (default: 1 week from now)127- `max_results` (Number): Maximum number of events to return (default: 10)128129### calendar_update_event130131Update an existing event in Google Calendar132133Arguments:134135- `event_id` (String) (Required): ID of the event to update136- `summary` (String): New title of the event137- `description` (String): New description of the event138- `start_time` (String): New start time of the event in RFC3339 format139- `end_time` (String): New end time of the event in RFC3339 format140- `attendees` (String): Comma-separated list of new attendee email addresses141142### calendar_respond_to_event143144Respond to an event invitation in Google Calendar145146Arguments:147148- `event_id` (String) (Required): ID of the event to respond to149- `response` (String) (Required): Your response (accepted, declined, or tentative)150151### confluence_search152153Search Confluence154155Arguments:156157- `query` (String) (Required): Atlassian Confluence Query Language (CQL)158159### confluence_get_page160161Get Confluence page content162163Arguments:164165- `page_id` (String) (Required): Confluence page ID166167### confluence_create_page168169Create a new Confluence page170171Arguments:172173- `space_key` (String) (Required): The key of the space where the page will be created174- `title` (String) (Required): Title of the page175- `content` (String) (Required): Content of the page in storage format (XHTML)176- `parent_id` (String): ID of the parent page (optional)177178### confluence_update_page179180Update an existing Confluence page181182Arguments:183184- `page_id` (String) (Required): ID of the page to update185- `title` (String): New title of the page (optional)186- `content` (String): New content of the page in storage format (XHTML)187- `version_number` (String): Version number for optimistic locking (optional)188189### deepseek_reasoning190191advanced reasoning engine using Deepseek's AI capabilities for multi-step problem solving, critical analysis, and strategic decision support192193Arguments:194195- `question` (String) (Required): The structured query or problem statement requiring deep analysis and reasoning196- `context` (String) (Required): Defines the operational context and purpose of the query within the MCP ecosystem197- `knowledge` (String): Provides relevant chat history, knowledge base entries, and structured data context for MCP-aware reasoning198199### get_web_content200201Fetches content from a given HTTP/HTTPS URL. This tool allows you to retrieve text content from web pages, APIs, or any accessible HTTP endpoints. Returns the raw content as text.202203Arguments:204205- `url` (String) (Required): The complete HTTP/HTTPS URL to fetch content from (e.g., https://example.com)206207### gchat_list_spaces208209List all available Google Chat spaces/rooms210211### gchat_send_message212213Send a message to a Google Chat space or direct message214215Arguments:216217- `space_name` (String) (Required): Name of the space to send the message to218- `message` (String) (Required): Text message to send219220### ai_web_search221222search the web by using Google AI Search. Best tool to update realtime information223224Arguments:225226- `question` (String) (Required): The question to ask. Should be a question227- `context` (String) (Required): Context/purpose of the question, helps Gemini to understand the question better228229### gitlab_list_projects230231List GitLab projects232233Arguments:234235- `group_id` (String) (Required): gitlab group ID236- `search` (String): Multiple terms can be provided, separated by an escaped space, either + or %20, and will be ANDed together. Example: one+two will match substrings one and two (in any order).237238### gitlab_get_project239240Get GitLab project details241242Arguments:243244- `project_path` (String) (Required): Project/repo path245246### gitlab_list_mrs247248List merge requests249250Arguments:251252- `project_path` (String) (Required): Project/repo path253- `state` (String) (Default: all): MR state (opened/closed/merged)254255### gitlab_get_mr_details256257Get merge request details258259Arguments:260261- `project_path` (String) (Required): Project/repo path262- `mr_iid` (String) (Required): Merge request IID263264### gitlab_create_MR_note265266Create a note on a merge request267268Arguments:269270- `project_path` (String) (Required): Project/repo path271- `mr_iid` (String) (Required): Merge request IID272- `comment` (String) (Required): Comment text273274### gitlab_get_file_content275276Get file content from a GitLab repository277278Arguments:279280- `project_path` (String) (Required): Project/repo path281- `file_path` (String) (Required): Path to the file in the repository282- `ref` (String) (Required): Branch name, tag, or commit SHA283284### gitlab_list_pipelines285286List pipelines for a GitLab project287288Arguments:289290- `project_path` (String) (Required): Project/repo path291- `status` (String) (Default: all): Pipeline status (running/pending/success/failed/canceled/skipped/all)292293### gitlab_list_commits294295List commits in a GitLab project within a date range296297Arguments:298299- `project_path` (String) (Required): Project/repo path300- `since` (String) (Required): Start date (YYYY-MM-DD)301- `until` (String): End date (YYYY-MM-DD). If not provided, defaults to current date302- `ref` (String) (Required): Branch name, tag, or commit SHA303304### gitlab_get_commit_details305306Get details of a commit307308Arguments:309310- `project_path` (String) (Required): Project/repo path311- `commit_sha` (String) (Required): Commit SHA312313### gitlab_list_user_events314315List GitLab user events within a date range316317Arguments:318319- `username` (String) (Required): GitLab username320- `since` (String) (Required): Start date (YYYY-MM-DD)321- `until` (String): End date (YYYY-MM-DD). If not provided, defaults to current date322323### gitlab_list_group_users324325List all users in a GitLab group326327Arguments:328329- `group_id` (String) (Required): GitLab group ID330331### gitlab_create_mr332333Create a new merge request334335Arguments:336337- `project_path` (String) (Required): Project/repo path338- `source_branch` (String) (Required): Source branch name339- `target_branch` (String) (Required): Target branch name340- `title` (String) (Required): Merge request title341- `description` (String): Merge request description342343### gmail_search344345Search emails in Gmail using Gmail's search syntax346347Arguments:348349- `query` (String) (Required): Gmail search query. Follow Gmail's search syntax350351### gmail_move_to_spam352353Move specific emails to spam folder in Gmail by message IDs354355Arguments:356357- `message_ids` (String) (Required): Comma-separated list of message IDs to move to spam358359### gmail_create_filter360361Create a Gmail filter with specified criteria and actions362363Arguments:364365- `from` (String): Filter emails from this sender366- `to` (String): Filter emails to this recipient367- `subject` (String): Filter emails with this subject368- `query` (String): Additional search query criteria369- `add_label` (Boolean): Add label to matching messages370- `label_name` (String): Name of the label to add (required if add_label is true)371- `mark_important` (Boolean): Mark matching messages as important372- `mark_read` (Boolean): Mark matching messages as read373- `archive` (Boolean): Archive matching messages374375### gmail_list_filters376377List all Gmail filters in the account378379### gmail_list_labels380381List all Gmail labels in the account382383### gmail_delete_filter384385Delete a Gmail filter by its ID386387Arguments:388389- `filter_id` (String) (Required): The ID of the filter to delete390391### gmail_delete_label392393Delete a Gmail label by its ID394395Arguments:396397- `label_id` (String) (Required): The ID of the label to delete398399### jira_get_issue400401Retrieve detailed information about a specific Jira issue including its status, assignee, description, subtasks, and available transitions402403Arguments:404405- `issue_key` (String) (Required): The unique identifier of the Jira issue (e.g., KP-2, PROJ-123)406407### jira_search_issue408409Search for Jira issues using JQL (Jira Query Language). Returns key details like summary, status, assignee, and priority for matching issues410411Arguments:412413- `jql` (String) (Required): JQL query string (e.g., 'project = KP AND status = \"In Progress\"')414415### jira_list_sprints416417List all active and future sprints for a specific Jira board, including sprint IDs, names, states, and dates418419Arguments:420421- `board_id` (String) (Required): Numeric ID of the Jira board (can be found in board URL)422423### jira_create_issue424425Create a new Jira issue with specified details. Returns the created issue's key, ID, and URL426427Arguments:428429- `project_key` (String) (Required): Project identifier where the issue will be created (e.g., KP, PROJ)430- `summary` (String) (Required): Brief title or headline of the issue431- `description` (String) (Required): Detailed explanation of the issue432- `issue_type` (String) (Required): Type of issue to create (common types: Bug, Task, Story, Epic)433434### jira_update_issue435436Modify an existing Jira issue's details. Supports partial updates - only specified fields will be changed437438Arguments:439440- `issue_key` (String) (Required): The unique identifier of the issue to update (e.g., KP-2)441- `summary` (String): New title for the issue (optional)442- `description` (String): New description for the issue (optional)443444### jira_list_statuses445446Retrieve all available issue status IDs and their names for a specific Jira project447448Arguments:449450- `project_key` (String) (Required): Project identifier (e.g., KP, PROJ)451452### jira_transition_issue453454Transition an issue through its workflow using a valid transition ID. Get available transitions from jira_get_issue455456Arguments:457458- `issue_key` (String) (Required): The issue to transition (e.g., KP-123)459- `transition_id` (String) (Required): Transition ID from available transitions list460- `comment` (String): Optional comment to add with transition461462### RAG_memory_index_content463464Index a content into memory, can be inserted or updated465466Arguments:467468- `collection` (String) (Required): Memory collection name469- `filePath` (String) (Required): content file path470- `payload` (String) (Required): Plain text payload471472### RAG_memory_index_file473474Index a local file into memory475476Arguments:477478- `collection` (String) (Required): Memory collection name479- `filePath` (String) (Required): Path to the local file to be indexed480481### RAG_memory_create_collection482483Create a new vector collection in memory484485Arguments:486487- `collection` (String) (Required): Memory collection name488489### RAG_memory_delete_collection490491Delete a vector collection in memory492493Arguments:494495- `collection` (String) (Required): Memory collection name496497### RAG_memory_list_collections498499List all vector collections in memory500501### RAG_memory_search502503Search for memory in a collection based on a query504505Arguments:506507- `collection` (String) (Required): Memory collection name508- `query` (String) (Required): search query, should be a keyword509510### RAG_memory_delete_index_by_filepath511512Delete a vector index by filePath513514Arguments:515516- `collection` (String) (Required): Memory collection name517- `filePath` (String) (Required): Path to the local file to be deleted518519### execute_comand_line_script520521Safely execute command line scripts on the user's system with security restrictions. Features sandboxed execution, timeout protection, and output capture. Supports cross-platform scripting with automatic environment detection.522523Arguments:524525- `content` (String) (Required):526- `interpreter` (String) (Default: /bin/sh): Path to interpreter binary (e.g. /bin/sh, /bin/bash, /usr/bin/python, cmd.exe). Validated against allowed list for security527- `working_dir` (String): Execution directory path (default: user home). Validated to prevent unauthorized access to system locations528529### web_search530531Search the web using Brave Search API532533Arguments:534535- `query` (String) (Required): Query to search for (max 400 chars, 50 words)536- `count` (Number) (Default: 5): Number of results (1-20, default 5)537- `country` (String) (Default: ALL): Country code538539### sequentialthinking540541`A detailed tool for dynamic and reflective problem-solving through thoughts.542This tool helps analyze problems through a flexible thinking process that can adapt and evolve.543Each thought can build on, question, or revise previous insights as understanding deepens.544545When to use this tool:546- Breaking down complex problems into steps547- Planning and design with room for revision548- Analysis that might need course correction549- Problems where the full scope might not be clear initially550- Problems that require a multi-step solution551- Tasks that need to maintain context over multiple steps552- Situations where irrelevant information needs to be filtered out553554Key features:555- You can adjust total_thoughts up or down as you progress556- You can question or revise previous thoughts557- You can add more thoughts even after reaching what seemed like the end558- You can express uncertainty and explore alternative approaches559- Not every thought needs to build linearly - you can branch or backtrack560- Generates a solution hypothesis561- Verifies the hypothesis based on the Chain of Thought steps562- Repeats the process until satisfied563- Provides a correct answer564565Parameters explained:566- thought: Your current thinking step, which can include:567* Regular analytical steps568* Revisions of previous thoughts569* Questions about previous decisions570* Realizations about needing more analysis571* Changes in approach572* Hypothesis generation573* Hypothesis verification574- next_thought_needed: True if you need more thinking, even if at what seemed like the end575- thought_number: Current number in sequence (can go beyond initial total if needed)576- total_thoughts: Current estimate of thoughts needed (can be adjusted up/down)577- is_revision: A boolean indicating if this thought revises previous thinking578- revises_thought: If is_revision is true, which thought number is being reconsidered579- branch_from_thought: If branching, which thought number is the branching point580- branch_id: Identifier for the current branch (if any)581- needs_more_thoughts: If reaching end but realizing more thoughts needed582583You should:5841. Start with an initial estimate of needed thoughts, but be ready to adjust5852. Feel free to question or revise previous thoughts5863. Don't hesitate to add more thoughts if needed, even at the "end"5874. Express uncertainty when present5885. Mark thoughts that revise previous thinking or branch into new paths5896. Ignore information that is irrelevant to the current step5907. Generate a solution hypothesis when appropriate5918. Verify the hypothesis based on the Chain of Thought steps5929. Repeat the process until satisfied with the solution59310. Provide a single, ideally correct answer as the final output59411. Only set next_thought_needed to false when truly done and a satisfactory answer is reached`595596Arguments:597598- `thought` (String) (Required): Your current thinking step599- `nextThoughtNeeded` (Boolean) (Required): Whether another thought step is needed600- `thoughtNumber` (Number) (Required): Current thought number601- `totalThoughts` (Number) (Required): Estimated total thoughts needed602- `isRevision` (Boolean): Whether this revises previous thinking603- `revisesThought` (Number): Which thought is being reconsidered604- `branchFromThought` (Number): Branching point thought number605- `branchId` (String): Branch identifier606- `needsMoreThoughts` (Boolean): If more thoughts are needed607608### tool_manager609610Manage MCP tools - enable or disable tools611612Arguments:613614- `action` (String) (Required): Action to perform: list, enable, disable615- `tool_name` (String): Tool name to enable/disable616617### tool_use_plan618619Tạo kế hoạch sử dụng các công cụ đang kích hoạt để giải quyết yêu cầu620621Arguments:622623- `request` (String) (Required): Yêu cầu cần lập kế hoạch624- `context` (String) (Required): Ngữ cảnh liên quan đến yêu cầu625626### youtube_transcript627628Get YouTube video transcript629630Arguments:631632- `video_id` (String) (Required): YouTube video ID633634### youtube_update_video635636Update a video's title and description on YouTube637638Arguments:639640- `video_id` (String) (Required): ID of the video to update641- `title` (String) (Required): New title of the video642- `description` (String) (Required): New description of the video643- `keywords` (String) (Required): Comma-separated list of keywords for the video644- `category` (String) (Required): Category ID for the video. See https://developers.google.com/youtube/v3/docs/videoCategories/list for more information.645646### youtube_get_video_details647648Get details (title, description, ...) for a specific video649650Arguments:651652- `video_id` (String) (Required): ID of the video653654### youtube_list_videos655656List YouTube videos managed by the user657658Arguments:659660- `channel_id` (String) (Required): ID of the channel to list videos for661- `max_results` (Number) (Required): Maximum number of videos to return662663
Full transparency — inspect the skill content before installing.