Cloud · MODEL CONTEXT PROTOCOL

AdamPippert multi service mcp server

an MCP server for the services I like to use with AI agents, which you should probably fork and modify for your own use. No PRs accepted, this is just for me. Not private because you or a bot might get something out of what you see here.

WHAT IT CONNECTS

AdamPippert multi service mcp server 为 AI Agent 提供什么

  • **MCP Gateway**: A unified endpoint for all tool requests following the MCP standard
  • **MCP Manifest**: An endpoint that describes all available tools and their capabilities
  • **Direct Tool Access**: Each tool can be accessed directly via its own API endpoints
  • **Modular Design**: Easy to add or remove tools as needed
  • **GitHub Tool**: Interact with GitHub repositories, issues, and search
  • **GitLab Tool**: Interact with GitLab projects, issues, and pipelines
  • **Google Maps Tool**: Geocoding, directions, and places search
  • **Memory Tool**: Store and retrieve data persistently
  • **Puppeteer Tool**: Take screenshots, generate PDFs, and extract content from websites
  • Python 3.8 or higher
  • Node.js 14 or higher
  • A Red Hat-based Linux distribution (RHEL, CentOS, Fedora) or any Linux/macOS system
  • Clone this repository:
  • Install Python dependencies:
  • Install Node.js dependencies:
  • Create a `.env` file with your configuration:
  • Start the server:
  • Build the Docker image:
  • Run the container:
  • Alternatively, use docker-compose:
  • "5000:5000"
  • ./data:/app/data
  • .env
  • Build the container image:
  • Run the container:
  • If you need persistent storage:
  • Using Podman Compose (if installed):
  • GitHub: `/tool/github/...`
  • GitLab: `/tool/gitlab/...`
  • Google Maps: `/tool/gmaps/...`
  • Memory: `/tool/memory/...`
  • Puppeteer: `/tool/puppeteer/...`
  • `listRepos`: List repositories for a user or organization
  • `getRepo`: Get details for a specific repository
  • `searchRepos`: Search for repositories
  • `getIssues`: Get issues for a repository
  • `createIssue`: Create a new issue in a repository
  • `listProjects`: List all projects accessible by the authenticated user
  • `getProject`: Get details for a specific project
  • `searchProjects`: Search for projects on GitLab
  • `getIssues`: Get issues for a project
  • `createIssue`: Create a new issue in a project
  • `getPipelines`: Get pipelines for a project
  • `geocode`: Convert an address to geographic coordinates
  • `reverseGeocode`: Convert geographic coordinates to an address
  • `getDirections`: Get directions between two locations
  • `searchPlaces`: Search for places using the Google Places API
  • `getPlaceDetails`: Get details for a specific place
  • `get`: Get a memory item by key
  • `set`: Create or update a memory item
  • `delete`: Delete a memory item by key
  • `list`: List all memory items, with optional filtering
  • `search`: Search memory items by value
  • `screenshot`: Take a screenshot of a webpage
  • `pdf`: Generate a PDF of a webpage
  • `extract`: Extract content from a webpage
  • Create a new file in the `tools` directory, e.g., `tools/newtool_tool.py`
  • Implement the tool with actions following the same pattern as existing tools
  • Add the tool to the manifest in `app.py`
  • Register the tool's blueprint in `tools/__init__.py`
  • [Model Context Protocol](https://modelcontextprotocol.io/) for the standard specification
  • [Flask](https://flask.palletsprojects.com/) for the web framework
  • [Puppeteer](https://pptr.dev/) for web automation

SECURITY

MCP 收录不等于安全审核

MCP 服务器可能获得模型上下文、凭据、本地文件或调用外部系统的权限。连接 Agent 前,请检查代码、环境变量、网络行为、软件包来源与维护状态。