home / mcp / aio mcp server

AIO MCP Server

Provides AI-powered search and integrations across GitLab, Jira, Confluence, YouTube, and more for automated workflows.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "athapong-aio-mcp": {
      "command": "aio-mcp",
      "args": [
        "-env",
        "/path/to/.env",
        "-sse",
        "-sse-addr",
        ":8080",
        "-sse-base-path",
        "/mcp"
      ]
    }
  }
}

You run this MCP server to access AI-powered tools and data from multiple sources through a single, unified interface. It enables real-time communication with clients, supports a suite of integrations, and powers advanced reasoning and search across connected services.

How to use

You interact with the MCP server using a client that supports either Standard I/O (stdio) or Server-Sent Events (SSE). In stdio mode, the server communicates via standard input/output, which is the default, suitable for desktop clients. In SSE mode, the server runs as an HTTP server, exposing endpoints for real-time event streaming and message exchange. Enable SSE when you need network access or web-based clients.

How to install

Prerequisites: install Go 1.23.2 or higher and prepare API keys/tokens for the services you intend to use.

Install via Smithery (client setup is interactive):npx -y @smithery/cli install @athapong/aio-mcp --client claude

Install via Go (build and run the MCP server locally):1) Set up your Go environment so binaries go to your GOPATH/bin and that directory is on your PATH. 2) Install the server BINARY:`` go install github.com/athapong/aio-mcp@latest ``

Create a configuration file (.env) with your credentials and options. Here is a representative set of environment variables you may configure: ENABLE_TOOLS, QDRANT_HOST, ATLASSIAN_HOST, ATLASSIAN_EMAIL, GITLAB_HOST, GITLAB_TOKEN, BRAVE_API_KEY, ATLASSIAN_TOKEN, GOOGLE_AI_API_KEY, OPENAI_API_KEY, OPENAI_EMBEDDING_MODEL, PROXY_URL, QDRANT_PORT, GOOGLE_TOKEN_FILE, GOOGLE_CREDENTIALS_FILE, QDRANT_API_KEY, USE_OLLAMA_DEEPSEEK, ENABLE_SSE, SSE_ADDR, SSE_BASE_PATH, and related keys for deep search and OpenRouter if used.

Configure the MCP server entry in your Claude’s config (example below). This uses a stdio runtime with environment file support and SSE enabled at port 8080 with a base path of /mcp.

Configuration basics

To run in SSE mode, you can start the MCP server with command-line flags or via environment variables. Command-line: aio-mcp -sse -sse-addr ":8080" -sse-base-path "/mcp". Environment variables (in your .env): ENABLE_SSE=true, SSE_ADDR=:8080, SSE_BASE_PATH=/mcp.

Example of the MCP server initialization in a client config file is provided below to illustrate how the server is wired for stdio operation and environment-based configuration.

Starting the server with a complete config

{
  "mcpServers": {
    "aio_mcp": {
      "type": "stdio",
      "command": "aio-mcp",
      "args": ["-env", "/path/to/.env", "-sse", "-sse-addr", ":8080", "-sse-base-path", "/mcp"]
    }
  }
}

Security and prerequisites

Keep your API keys and tokens secure. Do not commit the .env file to version control. Use appropriate file permissions and consider using a secret manager for production deployments.

Only enable tools you trust. The server supports a range of tool groups (e.g., gemini, fetch, brave_search, google_maps, confluence, youtube, jira, gitlab, script, rag, deepseek). You can selectively enable or disable tool groups via environment controls.

Troubleshooting and notes

If SSE mode does not start, verify that the chosen address is not in use and that the .env file is accessible by the runtime. Check logs for authentication errors related to external services. Ensure the CLI client and server packages are compatible with your Go version.

Available tools

calendar_create_event

Create a new event in Google Calendar with title, description, start/end times, and attendees.

calendar_list_events

List upcoming Google Calendar events within a specified time range.

calendar_update_event

Update details of an existing Google Calendar event.

calendar_respond_to_event

Respond to a Google Calendar event invitation.

confluence_search

Search content in Confluence using CQL.

confluence_get_page

Retrieve content of a Confluence page by ID.

confluence_create_page

Create a new Confluence page with specified space, title, and content.

confluence_update_page

Update an existing Confluence page with new content.

confluence_compare_versions

Compare two versions of a Confluence page.

deepseek_reasoning

Advanced multi-step reasoning using Deepseek AI capabilities.

get_web_content

Fetch and return content from a given HTTP/HTTPS URL.

gchat_list_spaces

List all Google Chat spaces available to you.

gchat_send_message

Send a message to a Google Chat space or direct message.

ai_web_search

Query the web via Google AI Search for up-to-date information.

gitlab_list_projects

List GitLab projects under a group.

gitlab_get_project

Get details for a specific GitLab project.

gitlab_list_mrs

List merge requests for a GitLab project.

gitlab_get_mr_details

Retrieve details for a specific GitLab merge request.

gitlab_create_MR_note

Add a note to a GitLab merge request.

gitlab_get_file_content

Fetch a file's content from a GitLab repository.

gitlab_list_pipelines

List pipelines for a GitLab project.

gitlab_list_commits

List commits for a GitLab project within a date range.

gitlab_get_commit_details

Get details of a specific commit in a GitLab project.

gitlab_list_user_events

List user events in GitLab within a date range.

gitlab_list_group_users

List all users in a GitLab group.

gitlab_create_mr

Create a new GitLab merge request.

gitlab_clone_repo

Clone or update a GitLab repository locally.

gmail_search

Search Gmail messages using Gmail search syntax.

gmail_move_to_spam

Move specified Gmail messages to spam.

gmail_create_filter

Create a Gmail filter with criteria and actions.

gmail_list_filters

List all Gmail filters in the account.

gmail_list_labels

List all Gmail labels in the account.

gmail_delete_filter

Delete a Gmail filter by its ID.

gmail_delete_label

Delete a Gmail label by its ID.

jira_get_issue

Retrieve detailed Jira issue information.

jira_search_issue

Search Jira issues using JQL.

jira_list_sprints

List active and future sprints for a Jira board.

jira_create_issue

Create a new Jira issue with specified details.

jira_update_issue

Update an existing Jira issue with new fields.

jira_list_statuses

Retrieve all available Jira issue statuses for a project.

jira_transition_issue

Transition a Jira issue through its workflow.

RAG_memory_index_content

Index content into an in-memory vector store.

RAG_memory_index_file

Index a local file into memory as a vector.

RAG_memory_create_collection

Create a new in-memory vector collection.

RAG_memory_delete_collection

Delete a vector collection from memory.

RAG_memory_list_collections

List all in-memory vector collections.

RAG_memory_search

Search for memory in a collection using a query.

RAG_memory_delete_index_by_filepath

Delete a vector index by file path.

execute_comand_line_script

Safely execute command-line scripts with sandboxing and safety checks.

web_search

Search the web using Brave Search API.

sequentialthinking

Dynamic multi-step thinking tool to plan, revise, and verify solutions step-by-step.

youtube_transcript

Fetch YouTube video transcripts.

youtube_update_video

Update a YouTube video's title and description.

youtube_get_video_details

Get details for a YouTube video.

youtube_list_videos

List YouTube videos managed by the user.