MSIO

MSIO

MSIO is an MCP server that gives AI agents tools to interact with Housecall Pro (HCP), enabling job history search, business intelligence, estimate generation, and validated write operations for plumbing company operators.

Category
访问服务器

README

MSIO — HCP Tools for AI Agents

Madam Secretary Intelligent Operations (MSIO) is an MCP server built to assist plumbing company operators who use Housecall Pro (HCP) daily. Running it as an MCP server means operators work through the AI chat interface they are already familiar with, leveraging the power of a cloud-based subscription AI they already pay for. The purpose of MSIO is to give AI agents useful tools to do useful work by enabling them to interact with HCP. It is in daily production use at a working plumbing company.

What it can do

MSIO gives your AI agent the ability to do the tasks that make management, evaluation, and projections easier. Most AI agents are innately good at pattern recognition, but they lack the tools to interact properly with HCP — and they lack context. MSIO provides the functions to search job history and parse information so the AI agent can read it and find the patterns. For instance, you could give it a job like:

"Look through the jobs completed over the last 4 months. Find out which zip codes have the most activity, what types of jobs we've done, and which tech has been the most efficient with their time."

The server exposes 36 tools: reading HCP data (jobs, customers, estimates, invoices, employees, tags, leads), spotting problems (stale estimates, uninvoiced jobs, overdue receivables), business intelligence (customer history and risk signals, tech performance, revenue forecasting, job classification), estimate generation, and a small set of validated write operations (tags, notes, line items, scheduling).

Architecture

When the MCP server connects to the user's agent, it provides the agent with descriptions of its tools for selection when needed. A user request triggers the agent to select a tool based on reasoning. The agent forms the client request for the appropriate tool, structured as MCP over stdio. app.py routes the request to that tool's handler, which validates the inputs and then calls HCP's REST API through hcp_client.py. Structured JSON is returned from HCP, parsed into a consistent response envelope (success / data / error / metadata, with credentials redacted), and given back to the agent. The agent then reads the information and forms the response that is given to the user.

Reasoning happens at the two ends of that chain — tool selection and the final answer — and everything in the middle is deterministic Python. The server makes no LLM calls of its own: it either works or returns a structured error, and it cannot hallucinate.

Much of the deterministic layer exists because HCP's API behaves in ways the docs don't advertise. Every monetary amount arrives in cents. Estimates are write-once — no update, no delete. And POST /jobs returns a 201 success while silently dropping the job's description field; the server works around it by creating the job, then attaching the description as a note in a second call. Each gotcha like this is encoded once in the execution layer so no user — human or AI — ever hits it again.

Install and configuration

MSIO's intended use is with Claude Desktop, and the directions below reflect that — it's what the server was built and tested against. Because it's built on the open MCP standard, any MCP-compatible agent is viable, including private/self-hosted agents; installation and configuration guides for those will be added in future updates.

Requires Python 3.11+ and uv. An HCP API key is only available on plan tiers that include API access (e.g. MAX) — find it in your HCP settings, where you will have HCP generate a key.

git clone https://github.com/brystal00/msio-server
cd msio-server
uv venv .venv --python 3.13
uv pip install -e ".[dev]"
make check

Then register the server in your Claude Desktop config (claude_desktop_config.json):

{
  "mcpServers": {
    "madam-secretary": {
      "command": "/path/to/msio-server/.venv/bin/python",
      "args": ["/path/to/msio-server/server.py"],
      "env": { "HCP_API_KEY": "your_key_here" }
    }
  }
}

Restart Claude Desktop, approve the MCP connection, and Claude will have access to the tools. (A double-click install bundle for non-technical users is planned.)

Status and scope

This application is completely local stdio. This is deliberate: it keeps access to your HCP account and your data centralized to your computer — there is no hosted service, no third-party server, and nothing to sign up for. It is important to note that if you use a cloud-model AI agent, your data will flow through their cloud servers accordingly.

License

Licensed under the MIT License. Built on Anthropic's open Model Context Protocol standard.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选