From d152a3ebed868ecfd5be36016ac05ebde6f809de Mon Sep 17 00:00:00 2001 From: KnucklesSG1 Date: Sun, 5 Oct 2025 22:56:01 -0500 Subject: [PATCH 1/2] Added knucklessg1 MCP servers. --- servers/ansible-tower/server.yaml | 68 +++++++++++++++++++ servers/container-manager/server.yaml | 60 +++++++++++++++++ servers/gitlab-api/server.yaml | 53 +++++++++++++++ servers/media-downloader/server.yaml | 47 +++++++++++++ servers/servicenow-api/server.yaml | 74 ++++++++++++++++++++ servers/tunnel-manager/server.yaml | 97 +++++++++++++++++++++++++++ servers/vector/server.yaml | 63 +++++++++++++++++ 7 files changed, 462 insertions(+) create mode 100644 servers/ansible-tower/server.yaml create mode 100644 servers/container-manager/server.yaml create mode 100644 servers/gitlab-api/server.yaml create mode 100644 servers/media-downloader/server.yaml create mode 100644 servers/servicenow-api/server.yaml create mode 100644 servers/tunnel-manager/server.yaml create mode 100644 servers/vector/server.yaml diff --git a/servers/ansible-tower/server.yaml b/servers/ansible-tower/server.yaml new file mode 100644 index 00000000..d5475787 --- /dev/null +++ b/servers/ansible-tower/server.yaml @@ -0,0 +1,68 @@ +name: ansible-tower +image: knucklessg1/ansible-tower-mcp +type: server +meta: + category: productivity + tags: + - productivity +about: + title: Ansible Tower MCP Server + description: | + The Ansible Tower MCP Server provides a Model Context Protocol (MCP) interface to interact with the Ansible Tower (AWX) API, enabling automation and management of Ansible Tower resources such as inventories, hosts, groups, job templates, projects, credentials, organizations, teams, users, ad hoc commands, workflow templates, workflow jobs, schedules, and system information. This server is designed to integrate seamlessly with AI-driven workflows and can be deployed as a standalone service or used programmatically.Comprehensive API Coverage: Manage Ansible Tower resources including inventories, hosts, groups, job templates, projects, credentials, organizations, teams, users, ad hoc commands, workflows, and schedules. + MCP Integration: Exposes Ansible Tower API functionalities as MCP tools for use with AI agents or direct API calls. + Flexible Authentication: Supports both username/password and token-based authentication. + Environment Variable Support: Securely configure credentials and settings via environment variables. + icon: https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/ansible-light.png +source: + project: https://github.com/Knuckles-Team/ansible-tower-mcp +config: + description: Configure the connection to Ansible Tower MCP Server + env: + - name: HOST + example: 0.0.0.0 + value: '{{ansible-tower.host}}' + - name: PORT + example: "8000" + value: '{{ansible-tower.port}}' + - name: TRANSPORT + example: http + value: '{{ansible-tower.transport}}' + - name: ANSIBLE_INSTANCE + example: https://awx.com + value: '{{ansible-tower.ansible_instance}}' + - name: ANSIBLE_USERNAME + example: user + value: '{{ansible-tower.ansible_username}}' + - name: ANSIBLE_PASSWORD + example: password + value: '{{ansible-tower.ansible_password}}' + - name: ANSIBLE_CLIENT_ID + example: client_id + value: '{{ansible-tower.ansible_client_id}}' + - name: ANSIBLE_CLIENT_SECRET + example: client_secret + value: '{{ansible-tower.ansible_client_secret}}' + - name: ANSIBLE_VERIFY + example: "true" + value: '{{ansible-tower.ansible_verify}}' + parameters: + type: object + properties: + host: + type: string + port: + type: string + transport: + type: string + ansibleinstance: + type: string + ansibleusername: + type: string + ansiblepassword: + type: string + ansibleclientid: + type: string + ansibleclientsecret: + type: string + ansibleverify: + type: string diff --git a/servers/container-manager/server.yaml b/servers/container-manager/server.yaml new file mode 100644 index 00000000..44512828 --- /dev/null +++ b/servers/container-manager/server.yaml @@ -0,0 +1,60 @@ +name: container-manager +image: knucklessg1/container-manager +type: server +meta: + category: productivity + tags: + - productivity + - devops + - docker + - podman +about: + title: Container Manager MCP Server + description: Container Manager MCP Server provides a robust interface to manage Docker and Podman containers, networks, volumes, and Docker Swarm services through a FastMCP server, enabling programmatic and remote container management. + icon: https://avatars.githubusercontent.com/u/119072828?v=4 +source: + project: https://github.com/Knuckles-Team/container-manager-mcp +run: + volumes: + - /var/run/docker.sock:/var/run/docker.sock +config: + description: Configure the connection to Container Manager MCP Server + env: + - name: HOST + example: 0.0.0.0 + value: '{{container-manager.host}}' + - name: PORT + example: "8000" + value: '{{container-manager.port}}' + - name: TRANSPORT + example: http + value: '{{container-manager.transport}}' + - name: CONTAINER_MANAGER_SILENT + example: "false" + value: '{{container-manager.container_manager_silent}}' + - name: CONTAINER_MANAGER_LOG_FILE + example: ~/container_manager.log + value: '{{container-manager.container_manager_log_file}}' + - name: CONTAINER_MANAGER_TYPE + example: docker + value: '{{container-manager.container_manager_type}}' + - name: CONTAINER_MANAGER_PODMAN_BASE_URL + example: tcp://127.0.0.1:8080 + value: '{{container-manager.container_manager_podman_base_url}}' + parameters: + type: object + properties: + host: + type: string + port: + type: string + transport: + type: string + containermanagersilent: + type: string + containermanagerlogfile: + type: string + containermanagertype: + type: string + containermanagerpodmanbaseurl: + type: string diff --git a/servers/gitlab-api/server.yaml b/servers/gitlab-api/server.yaml new file mode 100644 index 00000000..fd60c3bb --- /dev/null +++ b/servers/gitlab-api/server.yaml @@ -0,0 +1,53 @@ +name: gitlab-api +image: knucklessg1/gitlab +type: server +meta: + category: devops + tags: + - gitlab + - devops +about: + title: GitLab MCP Server + description: |- + Pythonic GitLab API Library and GitLab MCP Server for Agentic AI! + + Includes a large portion of useful API calls to GitLab and SQLAlchemy Models to handle loading API calls directly to a database! + icon: https://about.gitlab.com/images/press/gitlab-logo-500-rgb.png +source: + project: https://github.com/Knuckles-Team/gitlab-api +config: + description: Configure the connection to GitLab MCP Server + env: + - name: HOST + example: 0.0.0.0 + value: '{{gitlab-api.host}}' + - name: PORT + example: "8000" + value: '{{gitlab-api.port}}' + - name: TRANSPORT + example: http + value: '{{gitlab-api.transport}}' + - name: GITLAB_INSTANCE + example: https://gitlab.com/api/v4/ + value: '{{gitlab-api.gitlab_url}}' + - name: GITLAB_ACCESS_TOKEN + example: gplat-123456 + value: '{{gitlab-api.gitlab_access_token}}' + - name: GITLAB_VERIFY + example: "true" + value: '{{gitlab-api.ansible_verify}}' + parameters: + type: object + properties: + host: + type: string + port: + type: string + transport: + type: string + gitlabinstance: + type: string + gitlabaccesstoken: + type: string + gitlabverify: + type: string diff --git a/servers/media-downloader/server.yaml b/servers/media-downloader/server.yaml new file mode 100644 index 00000000..f5840c6d --- /dev/null +++ b/servers/media-downloader/server.yaml @@ -0,0 +1,47 @@ +name: media-downloader +image: knucklessg1/media-downloader +type: server +meta: + category: productivity + tags: + - productivity +about: + title: Media Downloader + description: Download videos and audio from the internet! + icon: https://avatars.githubusercontent.com/u/119072828?v=4 +source: + project: https://github.com/Knuckles-Team/media-downloader +run: + volumes: + - ~/Downloads:/downloads +config: + description: Configure the connection to Media Downloader + env: + - name: HOST + example: 0.0.0.0 + value: '{{media-downloader.host}}' + - name: PORT + example: "8000" + value: '{{media-downloader.port}}' + - name: TRANSPORT + example: http + value: '{{media-downloader.transport}}' + - name: DOWNLOAD_DIRECTORY + example: /downloads + value: '{{media-downloader.download_directory}}' + - name: AUDIO_ONLY + example: "false" + value: '{{media-downloader.audio_only}}' + parameters: + type: object + properties: + host: + type: string + port: + type: string + transport: + type: string + downloaddirectory: + type: string + audioonly: + type: string diff --git a/servers/servicenow-api/server.yaml b/servers/servicenow-api/server.yaml new file mode 100644 index 00000000..1eaed8a0 --- /dev/null +++ b/servers/servicenow-api/server.yaml @@ -0,0 +1,74 @@ +name: servicenow-api +image: knucklessg1/servicenow +type: server +meta: + category: database + tags: + - database + - devops + - servicenow +about: + title: ServiceNow MCP Server + description: |- + ServiceNow API Python Wrapper. This can run as a standalone MCP Server for Agentic AI! + + All API Response objects are customized for the response call. You can get all return values in a parent.value.nested_value format, or you can run parent.model_dump() to get the table in dictionary format. + + API/MCP Calls: + Application Service + Change Management + CI/CD + CMDB + Import Sets + Incident + Knowledge Base + Table + Custom Endpoint + icon: https://avatars.githubusercontent.com/u/119072828?v=4 +source: + project: https://github.com/Knuckles-Team/servicenow-api +config: + description: Configure the connection to ServiceNow MCP Server + env: + - name: HOST + example: 0.0.0.0 + value: '{{servicenow-api.host}}' + - name: PORT + example: "8000" + value: '{{servicenow-api.port}}' + - name: TRANSPORT + example: http + value: '{{servicenow-api.transport}}' + - name: SERVICENOW_INSTANCE + example: https://www.servicenow.com + value: '{{servicenow-api.servicenow_instance}}' + - name: SERVICENOW_USERNAME + example: user + value: '{{servicenow-api.servicenow_username}}' + - name: SERVICENOW_PASSWORD + example: password + value: '{{servicenow-api.servicenow_password}}' + - name: SERVICENOW_CLIENT_ID + example: client_id + value: '{{servicenow-api.servicenow_client_id}}' + - name: SERVICENOW_CLIENT_SECRET + example: client_secret + value: '{{servicenow-api.servicenow_client_secret}}' + - name: SERVICENOW_VERIFY + example: "true" + value: '{{servicenow-api.servicenow_verify}}' + parameters: + type: object + properties: + servicenowinstance: + type: string + servicenowusername: + type: string + servicenowpassword: + type: string + servicenowclientid: + type: string + servicenowclientsecret: + type: string + servicenowverify: + type: string diff --git a/servers/tunnel-manager/server.yaml b/servers/tunnel-manager/server.yaml new file mode 100644 index 00000000..244b64cc --- /dev/null +++ b/servers/tunnel-manager/server.yaml @@ -0,0 +1,97 @@ +name: tunnel-manager +image: knucklessg1/tunnel-manager +type: server +meta: + category: communication + tags: + - communication +about: + title: Tunnel Manager + description: This project provides a Python-based Tunnel class for secure SSH connections and file transfers, integrated with a FastMCP server (tunnel_manager_mcp.py) to expose these capabilities as tools for AI-driven workflows. The implementation supports both standard SSH (e.g., for local networks) and Teleport's secure access platform, leveraging the paramiko library for SSH operations. + icon: https://avatars.githubusercontent.com/u/119072828?v=4 +source: + project: https://github.com/Knuckles-Team/tunnel-manager +run: + volumes: + - '{{tunnel-manager.inventory}}:{{tunnel-manager.tunnel_manager_inventory}}' +config: + description: Configure the connection to Tunnel Manager + env: + - name: HOST + example: 0.0.0.0 + value: '{{tunnel-manager.host}}' + - name: PORT + example: "8000" + value: '{{tunnel-manager.port}}' + - name: TRANSPORT + example: http + value: '{{tunnel-manager.transport}}' + - name: TUNNEL_INVENTORY + example: /inventory/inventory.yaml + value: '{{tunnel-manager.tunnel_inventory}}' + - name: TUNNEL_INVENTORY_GROUP + example: all + value: '{{tunnel-manager.tunnel_inventory_group}}' + - name: TUNNEL_PARALLEL + example: "true" + value: '{{tunnel-manager.tunnel_parallel}}' + - name: TUNNEL_MAX_THREADS + example: "9" + value: '{{tunnel-manager.tunnel_max_threads}}' + - name: TUNNEL_REMOTE_HOST + example: 192.168.1.69 + value: '{{tunnel-manager.tunnel_remote_host}}' + - name: TUNNEL_USERNAME + example: root + value: '{{tunnel-manager.tunnel_username}}' + - name: TUNNEL_PASSWORD + example: password + value: '{{tunnel-manager.tunnel_password}}' + - name: TUNNEL_REMOTE_PORT + example: "22" + value: '{{tunnel-manager.tunnel_remote_port}}' + - name: TUNNEL_IDENTITY_FILE + example: ~/.ssh/id_rsa + value: '{{tunnel-manager.tunnel_identity_file}}' + - name: TUNNEL_CERTIFICATE + example: ~/server.cert + value: '{{tunnel-manager.tunnel_certificate}}' + - name: TUNNEL_PROXY_COMMAND + example: https://proxy.com + value: '{{tunnel-manager.tunnel_proxy_command}}' + - name: TUNNEL_LOG_FILE + example: ~/tunnel_log.txt + value: '{{tunnel-manager.tunnel_log_file}}' + parameters: + type: object + properties: + host: + type: string + port: + type: string + transport: + type: string + tunnelinventory: + type: string + tunnelinventorygroup: + type: string + tunnelparallel: + type: string + tunnelmaxthreads: + type: string + tunnelremotehost: + type: string + tunnelusername: + type: string + tunnelpassword: + type: string + tunnelremoteport: + type: string + tunnelidentityfile: + type: string + tunnelcertificate: + type: string + tunnelproxycommand: + type: string + tunnellogfile: + type: string diff --git a/servers/vector/server.yaml b/servers/vector/server.yaml new file mode 100644 index 00000000..67a451a4 --- /dev/null +++ b/servers/vector/server.yaml @@ -0,0 +1,63 @@ +name: vector +image: knucklessg1/vector-mcp +type: server +meta: + category: database + tags: + - database +about: + title: Vector MCP Server + description: |- + This is an MCP Server implementation which allows for a standardized collection management system across vector database technologies. + + AI Agents can: + + Create collections with documents stored on the local filesystem or URLs + Add documents to a collection + Utilize collection for retrieval augmented generation (RAG) + Delete collection + Supports: + + ChromaDB, PGVector, Couchbase, Qdrant, MongoDB + icon: https://avatars.githubusercontent.com/u/119072828?v=4 +source: + project: https://github.com/Knuckles-Team/vector-mcp +run: + volumes: + - ~/Documents:/documents +config: + description: Configure the connection to Vector MCP Server + env: + - name: HOST + example: 0.0.0.0 + value: '{{vector.host}}' + - name: PORT + example: "8000" + value: '{{vector.port}}' + - name: TRANSPORT + example: http + value: '{{vector.transport}}' + - name: DATABASE_TYPE + example: chromadb + value: '{{vector.database_type}}' + - name: COLLECTION_NAME + example: memory + value: '{{vector.collection_name}}' + - name: DOCUMENT_DIRECTORY + example: /documents + value: '{{vector.document_directory}}' + parameters: + type: object + properties: + host: + type: string + port: + type: string + transport: + type: string + databasetype: + type: string + collectionname: + type: string + documentdirectory: + type: string From d23fe154a5769f6aa97985735534639b496be5f3 Mon Sep 17 00:00:00 2001 From: KnucklesSG1 Date: Sun, 5 Oct 2025 23:03:12 -0500 Subject: [PATCH 2/2] Updated names. --- servers/media-downloader/server.yaml | 2 +- servers/tunnel-manager/server.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/servers/media-downloader/server.yaml b/servers/media-downloader/server.yaml index f5840c6d..377febb6 100644 --- a/servers/media-downloader/server.yaml +++ b/servers/media-downloader/server.yaml @@ -6,7 +6,7 @@ meta: tags: - productivity about: - title: Media Downloader + title: Media Downloader MCP Server description: Download videos and audio from the internet! icon: https://avatars.githubusercontent.com/u/119072828?v=4 source: diff --git a/servers/tunnel-manager/server.yaml b/servers/tunnel-manager/server.yaml index 244b64cc..f8497db7 100644 --- a/servers/tunnel-manager/server.yaml +++ b/servers/tunnel-manager/server.yaml @@ -6,7 +6,7 @@ meta: tags: - communication about: - title: Tunnel Manager + title: Tunnel Manager MCP Server description: This project provides a Python-based Tunnel class for secure SSH connections and file transfers, integrated with a FastMCP server (tunnel_manager_mcp.py) to expose these capabilities as tools for AI-driven workflows. The implementation supports both standard SSH (e.g., for local networks) and Teleport's secure access platform, leveraging the paramiko library for SSH operations. icon: https://avatars.githubusercontent.com/u/119072828?v=4 source: