Contact Affordance

org.ottobot由 ottobot.org 發布v0.1.1更新於 Oct 24, 2026

Check how to contact a business website, and whether that contact path actually works.

發布方自己的服務:QR Rápido

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取商業與電商

概覽

AI 產生的概覽

一個遠端 MCP 伺服器,用來檢查企業網站的聯絡途徑,並回報人工聯繫是否真的可達。

可以做什麼
依給定的網址檢查企業網站的聯絡途徑,回傳可達或無法確定的結論,以及找到的表單與其解析後的處理網址、公開的電話或電子郵件。它從不送出任何內容,只檢視網站上公開提供的資訊。
適用情境
適合在聯繫企業之前確認其聯絡方式,或查證頁面上列出的聯絡表單、地址是否真的可用,而不是只憑頁面內容判斷。
執行需求
遠端 streamable HTTP 端點;未宣告任何套件、帳號、API 金鑰、環境變數或標頭。助理需要能連上該端點,端點本身也需要能抓取目標網站。
安裝前請注意
它會抓取第三方網站,目標網址會傳送到該遠端服務。它只讀取頁面、不送出表單,但結果可能無法確定,因此結論宜視為參考而非確證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Contact Affordance,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/org.ottobot%2Fcontact-affordance/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "contact-affordance": {
      "type": "http",
      "url": "https://contact-affordance-mcp.ottobot2025.workers.dev/mcp"
    }
  }
}

README

MCP Registry

The MCP registry provides MCP clients with a list of MCP servers, like an app store for MCP servers.

📤 Publish my MCP server | ⚡️ Live API docs | 👀 Ecosystem vision | 📖 Full documentation

Development Status

2025-10-24 update: The Registry API has entered an API freeze (v0.1) 🎉. For the next month or more, the API will remain stable with no breaking changes, allowing integrators to confidently implement support. This freeze applies to v0.1 while development continues on v0. We'll use this period to validate the API in real-world integrations and gather feedback to shape v1 for general availability. Thank you to everyone for your contributions and patience—your involvement has been key to getting us here!

2025-09-08 update: The registry has launched in preview 🎉 (announcement blog post). While the system is now more stable, this is still a preview release and breaking changes or data resets may occur. A general availability (GA) release will follow later. We'd love your feedback in GitHub discussions or in the #registry-dev Discord (joining details here).

Registry Working Group:

Contributing

We use multiple channels for collaboration - see modelcontextprotocol.io/community/communication.

Often (but not always) ideas flow through this pipeline:

  • Discord - Real-time community discussions
  • Discussions - Propose and discuss product/technical requirements
  • Issues - Track well-scoped technical work
  • Pull Requests - Contribute work towards issues

Quick start:

Pre-requisites
  • Docker
  • Go - version per the go directive in go.mod; the Go toolchain fetches it for you
  • ko - Container image builder for Go (installation instructions)
  • golangci-lint - version per the golangci-lint-action pin in ci.yml, so local lint matches CI
Running the server
bash
# Start full development environmentmake dev-compose

This starts the registry at localhost:8080 with PostgreSQL. The database uses ephemeral storage and is reset each time you restart the containers, ensuring a clean state for development and testing.

Note: The registry uses ko to build container images. The make dev-compose command automatically builds the registry image with ko and loads it into your local Docker daemon before starting the services.

By default, the registry seeds from the production API with a filtered subset of servers (to keep startup fast). This ensures your local environment mirrors production behavior and all seed data passes validation. For offline development you can seed from a file without validation with MCP_REGISTRY_SEED_FROM=data/seed.json MCP_REGISTRY_ENABLE_REGISTRY_VALIDATION=false make dev-compose.

The setup can be configured with environment variables in docker-compose.yml - see .env.example for a reference.

Alternative: Running a pre-built Docker image

Pre-built Docker images are automatically published to GitHub Container Registry. Note that the image does not bundle PostgreSQL, so you need to run your own and point the registry at it via MCP_REGISTRY_DATABASE_URL (see docker-compose.yml for a working example):

bash
# Run latest stable releasedocker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:latest
# Run latest from main branch (continuous deployment)docker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:main
# Run specific release versiondocker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:v1.0.0
# Run development build from main branchdocker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:main-20250906-abc123d

Available tags:

  • Releases: latest, v1.0.0, v1.1.0, etc.
  • Continuous: main (latest main branch build)
  • Development: main-<date>-<sha> (specific commit builds)
Publishing a server

Publishing an MCP server does not happen through a pull request to this repository. Adding a server.json, a server directory, or an entry in data/seed.json will not publish or list your server, even if the PR is merged. Use the mcp-publisher CLI from your server's own project instead.

To publish a server, we've built a simple CLI. You can use it with:

bash
# Build the latest CLImake publisher
# Use it!./bin/mcp-publisher --help

See the publisher guide for more details.

Other commands
bash
# Run lint, schema validation, and all tests# Note: this also runs `make dev-down`, stopping any running dev-compose environmentmake check

There are also a few more helpful commands for development. Run make help to learn more, or look in Makefile.

Architecture

Project Structure

├── cmd/                     # Application entry points│   ├── publisher/           # Server publishing tool│   └── registry/            # Registry API server├── data/                    # Seed data├── deploy/                  # Deployment configuration (Pulumi)├── docs/                    # Documentation├── internal/                # Private application code│   ├── api/                 # HTTP handlers and routing│   ├── auth/                # Authentication (GitHub OAuth, JWT, namespace blocking)│   ├── config/              # Configuration management│   ├── database/            # Data persistence (PostgreSQL)│   ├── importer/            # Seed data import│   ├── service/             # Business logic│   ├── telemetry/           # Metrics and monitoring│   └── validators/          # Input validation├── pkg/                     # Public packages│   ├── api/                 # API types and structures│   │   └── v0/              # Version 0 API types│   └── model/               # Data models for server.json├── scripts/                 # Development and testing scripts├── tests/                   # Integration tests└── tools/                   # CLI tools and utilities    └── validate-*.sh        # Schema validation tools

Authentication

Publishing supports multiple authentication methods:

  • GitHub OAuth - For publishing by logging into GitHub
  • GitHub OIDC - For publishing from GitHub Actions
  • DNS verification - For proving ownership of a domain and its subdomains
  • HTTP verification - For proving ownership of a domain

The registry validates namespace ownership when publishing. E.g. to publish...:

  • io.github.domdomegg/my-cool-mcp you must login to GitHub as domdomegg, or be in a GitHub Action on domdomegg's repos
  • me.adamjones/my-cool-mcp you must prove ownership of adamjones.me via DNS or HTTP challenge

Community Projects

Check out community projects to explore notable registry-related work created by the community.

More documentation

See the documentation for more details if your question has not been answered here!

來源:README.md,提交 11b7b0e

工具

1

check_contact_path

Given a business website URL, report how a human is meant to make contact and whether that path is actually reachable. Returns a verdict of 'reachable' or 'inconclusive', the forms found with their resolved handler URLs, and any published phone or email. Never submits anything. Answers 'inconclusive' rather than guessing when a site is client-rendered, bot-protected or parked -- about 64% of real sites cannot be judged from outside, and a confident wrong answer is worse than an honest one.

輸入參數url必填

版本歷史

1
  1. v0.1.1最新Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Qrrapido 整合