u

unblu

@detailobsessed/unblu
Hosted
0 Stars 5 次浏览 detailobsessed 更新于 2026-08-23

Token-efficient MCP server for 300+ Unblu API endpoints

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "unblu-mcp": {
      "args": [
        "unblu-mcp@0.5.1"
      ],
      "command": "uvx"
    }
  }
}

可用工具 (5 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

tavily_search 14 个参数 需填 1 项

Search the web for current information on any topic. Use for news, facts, or data beyond your knowledge cutoff. Returns snippets and source URLs.

必填参数:query

tavily_extract 6 个参数 需填 1 项

Extract content from URLs. Returns raw page content in markdown or text format.

必填参数:urls

tavily_crawl 11 个参数 需填 1 项

Crawl a website starting from a URL. Extracts content from pages with configurable depth and breadth.

必填参数:url

tavily_map 8 个参数 需填 1 项

Map a website's structure. Returns a list of URLs found starting from the base URL.

必填参数:url

tavily_research 2 个参数 需填 1 项

Perform comprehensive research on a given topic or question. Use this tool when you need to gather information from multiple sources to answer a question or complete a task. Returns a detailed response based on the research findings.

必填参数:input

服务介绍

unblu-mcp

<!- - mcp-name: io.github.detailobsessed/unblu - ->

ci
documentation
pypi version
python versions
license
FastMCP

A Model Context Protocol (MCP) server for debugging and operating Unblu deployments. Optimised for debugging workflows — curated typed tools for common operations, plus an escape hatch for the full 300+ endpoint API.

📚 Full Documentation

# Design

The server exposes three layers, each progressively more powerful:

| Layer | What it is | When to use |
|- -- -- --|- -- -- -- -- --|- -- -- -- -- -- --|
| Curated tools | Typed, token-efficient tools for common debugging tasks | 90% of debugging sessions |
| execute_operation | Generic escape hatch for any of 331 Unblu API operations | When a curated tool doesn't exist |
| Resources | Read-only api:// URIs for browsing the API surface | Discovery and schema inspection |

# Quick Start

# # Installation

uvx unblu-mcp

Or install persistently: uv tool install unblu-mcp

# # MCP Client Configuration

Direct API access with an API key:

{
  "mcpServers": {
    "unblu": {
      "command": "uvx",
      "args": ["unblu-mcp"],
      "env": {
        "UNBLU_BASE_URL": "https://your-instance.unblu.cloud/app/rest/v4",
        "UNBLU_API_KEY": "your-api-key"
      }
    }
  }
}

Kubernetes port-forward (auto-managed):

{
  "mcpServers": {
    "unblu": {
      "command": "uvx",
      "args": ["unblu-mcp", "- -provider", "k8s", "- -environment", "dev"],
      "env": {
        "PATH": "/Users/YOUR_USERNAME/.local/bin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin"
      }
    }
  }
}

# Tools

# # Curated tools (read-only)

| Tool | Description |
|- -- -- -|- -- -- -- -- -- --|
| get_current_account | Current account info — good first call to verify connectivity |
| search_conversations(status?, topic?, assignee_id?, limit?, fields?) | Search conversations with filters |
| get_conversation(conversation_id) | Full conversation detail with participants |
| search_persons(query?, email?, limit?, fields?) | Find persons (visitors, agents) |
| get_person(person_id) | Full person detail |
| get_persons(identifiers, fields?) | Batch-resolve up to 20 persons in parallel |
| search_users(query?, email?, limit?, fields?) | Find registered users |
| get_user(user_id) | Full user detail |
| check_agent_availability(named_area_id?) | Check agent availability per named area |
| search_named_areas(query?, limit?) | List named areas (routing targets) |
| find_operation(query, service?, include_schema?, limit?) | Discover API operations by keyword |

# # Mutation tools

| Tool | Description |
|- -- -- -|- -- -- -- -- -- --|
| assign_conversation(conversation_id, agent_id) | Assign a conversation to an agent |
| end_conversation(conversation_id) | End an active conversation |

# # Escape hatch

| Tool | Description |
|- -- -- -|- -- -- -- -- -- --|
| execute_operation(operation_id, path_params?, query_params?, body?, fields?, confirm_destructive?) | Execute any of the 331 Unblu API operations |

# # Resources

| URI | Description |
|- -- --|- -- -- -- -- -- --|
| api://services | JSON list of all API service groups |
| api://operations/{operation_id} | Full resolved schema for a specific operation |

# # Prompts

| Prompt | Description |
|- -- -- -- -|- -- -- -- -- -- --|
| debug_conversation(conversation_id) | Step-by-step debugging workflow for a conversation |
| find_agent(criteria) | Locate an agent and check their availability |
| account_health_check | Validate account configuration and connectivity |

# Safety

By default, execute_operation blocks DELETE operations unless confirm_destructive=True is passed. For stricter control, install the optional Eunomia policy engine:

uv tool install "unblu-mcp[safety]"

Then point to a policy file:

{
  "mcpServers": {
    "unblu": {
      "command": "unblu-mcp",
      "args": ["- -policy", "config/mcp_policies.json"],
      "env": { "UNBLU_BASE_URL": "...", "UNBLU_API_KEY": "..." }
    }
  }
}

The bundled config/mcp_policies.json allows all read-only and curated tools while blocking destructive execute_operation calls by operation ID pattern.

# Development

git clone https://github.com/detailobsessed/unblu-mcp.git
cd unblu-mcp
uv sync - -all-extras - -dev
uv run poe test

# License

ISC License

相关 MCP 服务