Skip to main content
Glama

ShortURLMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

AceDataCloud API を通じて Short URL API を利用するための Model Context Protocol (MCP) サーバーです。

Claude、VS Code、またはその他のMCP対応クライアントから直接、短縮された共有可能なURLを作成できます。

機能

  • URL短縮 - 長いURLを短く共有可能なリンクに変換

  • バッチ短縮 - 複数のURLを一度に短縮(1バッチあたり最大10個)

  • 無料サービス - リクエストごとのクレジット消費はゼロ

  • 永続リンク - 短縮URLは期限切れになりません

  • surl.idドメイン - 短縮URLにはクリーンな surl.id ドメインを使用

  • Bearer認証 - トークン認証による安全なAPIアクセス

ツールリファレンス

ツール

説明

shorturl_create

長いURLから短縮URLを作成します。

shorturl_batch_create

複数の長いURLから一度に短縮URLを作成します。

shorturl_get_usage_guide

ShortURLツールの包括的な使用ガイドを取得します。

shorturl_get_api_info

ShortURL APIサービスに関する情報を取得します。

クイックスタート

1. APIトークンの取得

  1. AceDataCloud Platform にサインアップ

  2. APIドキュメントページ に移動

  3. 「Acquire」 をクリックしてAPIトークンを取得

  4. トークンをコピーして以下で使用

2. ホスト型サーバーの使用(推奨)

AceDataCloudは管理されたMCPサーバーをホストしており、ローカルインストールは不要です

エンドポイント: https://shorturl.mcp.acedata.cloud/mcp

すべてのリクエストにはBearerトークンが必要です。ステップ1で取得したAPIトークンを使用してください。

Claude.ai

Claude.ai でOAuthを使用して直接接続します(APIトークンは不要です):

  1. Claude.aiの 設定 → 統合 → 追加 に移動

  2. サーバーURLを入力: https://shorturl.mcp.acedata.cloud/mcp

  3. OAuthログインフローを完了

  4. 会話内でツールの使用を開始

Claude Desktop

設定ファイル(macOSの場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します:

{
  "mcpServers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cursor / Windsurf

MCP設定(.cursor/mcp.json または .windsurf/mcp.json)に追加します:

{
  "mcpServers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

VS Code (Copilot)

VS CodeのMCP設定(.vscode/mcp.json)に追加します:

{
  "servers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

または、VS Code用の Ace Data Cloud MCP拡張機能 をインストールしてください。これには15個のMCPサーバーすべてが含まれており、ワンクリックでセットアップできます。

JetBrains IDEs

  1. 設定 → ツール → AI Assistant → Model Context Protocol (MCP) に移動

  2. 追加HTTP をクリック

  3. 以下を貼り付け:

{
  "mcpServers": {
    "shorturl": {
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Claude Code

Claude CodeはMCPサーバーをネイティブでサポートしています:

claude mcp add shorturl --transport http https://shorturl.mcp.acedata.cloud/mcp \
  -h "Authorization: Bearer YOUR_API_TOKEN"

または、プロジェクトの .mcp.json に追加します:

{
  "mcpServers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cline

ClineのMCP設定(.cline/mcp_settings.json)に追加します:

{
  "mcpServers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Amazon Q Developer

MCP設定に追加します:

{
  "mcpServers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Roo Code

Roo CodeのMCP設定に追加します:

{
  "mcpServers": {
    "shorturl": {
      "type": "streamable-http",
      "url": "https://shorturl.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Continue.dev

.continue/config.yaml に追加します:

mcpServers:
  - name: shorturl
    type: streamable-http
    url: https://shorturl.mcp.acedata.cloud/mcp
    headers:
      Authorization: "Bearer YOUR_API_TOKEN"

Zed

Zedの設定(~/.config/zed/settings.json)に追加します:

{
  "language_models": {
    "mcp_servers": {
      "shorturl": {
        "url": "https://shorturl.mcp.acedata.cloud/mcp",
        "headers": {
          "Authorization": "Bearer YOUR_API_TOKEN"
        }
      }
    }
  }
}

cURLテスト

# Health check (no auth required)
curl https://shorturl.mcp.acedata.cloud/health

# MCP initialize
curl -X POST https://shorturl.mcp.acedata.cloud/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'

3. ローカルでの実行(代替手段)

自分のマシンでサーバーを実行したい場合:

# Install from PyPI
pip install mcp-shorturl
# or
uvx mcp-shorturl

# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"

# Run (stdio mode for Claude Desktop / local clients)
mcp-shorturl

# Run (HTTP mode for remote access)
mcp-shorturl --transport http --port 8000

Claude Desktop (ローカル)

{
  "mcpServers": {
    "shorturl": {
      "command": "uvx",
      "args": ["mcp-shorturl"],
      "env": {
        "ACEDATACLOUD_API_TOKEN": "your_token_here"
      }
    }
  }
}

Docker (セルフホスト)

docker pull ghcr.io/acedatacloud/mcp-shorturl:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-shorturl:latest

クライアントは独自のBearerトークンで接続します。サーバーは各リクエストの Authorization ヘッダーからトークンを抽出します。

利用可能なツール

URL短縮ツール

ツール

説明

shorturl_create

単一のURLを短縮

shorturl_batch_create

複数のURLを一度に短縮(最大10個)

情報ツール

ツール

説明

shorturl_get_usage_guide

包括的な使用ガイドを取得

shorturl_get_api_info

APIの詳細とエラーコードを取得

使用例

単一URLの短縮

User: Shorten this URL: https://platform.acedata.cloud/documents/a2303356-6672-4eb8-9778-75f55c998fe9

Claude: I'll shorten that URL for you.
[Calls shorturl_create with url="https://platform.acedata.cloud/documents/a2303356-6672-4eb8-9778-75f55c998fe9"]

Result: https://surl.id/1uHCs01xa5

複数URLのバッチ短縮

User: Shorten these URLs for my social media posts:
- https://example.com/blog/very-long-article-title-about-ai
- https://example.com/products/new-release-2024

Claude: I'll shorten both URLs at once.
[Calls shorturl_batch_create with urls=[...]]

ドキュメント用リンクの作成

User: I need clean short links for these reference URLs in my doc.

Claude: I'll create short links for all your references.
[Calls shorturl_batch_create with the list of URLs]

レスポンス構造

成功時のレスポンス

{
  "success": true,
  "data": {
    "url": "https://surl.id/1uHCs01xa5"
  }
}

エラー時のレスポンス

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

設定

環境変数

変数

説明

デフォルト

ACEDATACLOUD_API_TOKEN

AceDataCloudのAPIトークン

必須

ACEDATACLOUD_API_BASE_URL

APIベースURL

https://api.acedata.cloud

ACEDATACLOUD_OAUTH_CLIENT_ID

OAuthクライアントID(ホストモード)

ACEDATACLOUD_PLATFORM_BASE_URL

プラットフォームベースURL

https://platform.acedata.cloud

SHORTURL_REQUEST_TIMEOUT

リクエストタイムアウト(秒)

30

LOG_LEVEL

ログレベル

INFO

コマンドラインオプション

mcp-shorturl --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

開発

開発環境のセットアップ

# Clone repository
git clone https://github.com/AceDataCloud/ShortURLMCP.git
cd ShortURLMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

テストの実行

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

コード品質

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

ビルドと公開

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

プロジェクト構造

ShortURLMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for ShortURL API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   └── server.py          # MCP server initialization
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── shorturl_tools.py  # URL shortening tools
│   └── info_tools.py      # Information tools
├── prompts/                # MCP prompt templates
│   └── __init__.py
├── tests/                  # Test suite
│   ├── conftest.py
│   ├── test_client.py
│   ├── test_config.py
│   └── test_integration.py
├── deploy/                 # Deployment configs
│   ├── run.sh
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── .ruff.toml             # Ruff linter configuration
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

APIリファレンス

このサーバーは AceDataCloud Short URL API をラップしています:

  • エンドポイント: POST /shorturl

  • 入力: { "content": "https://long-url.example.com/..." }

  • 出力: { "success": true, "data": { "url": "https://surl.id/..." } }

  • 料金: 無料(0クレジット)

  • 認証: Bearerトークン

完全なAPIドキュメント: AceDataCloud Platform

ライセンス

MITライセンス - 詳細は LICENSE を参照してください。

Install Server
A
security – no known vulnerabilities
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AceDataCloud/MCPShortURL'

If you have feedback or need assistance with the MCP directory API, please join our Discord server