内容
mcp-surveys
<p align="center <strong>适用于微型人类按钮仪式的代理字段手册。</strong><br>
以 CLI 为优先的短时MCP 静默在侧袋中p>
<p align=" <a href="pypi.org/project/mcps-cli/"><img alt="PyPI" src="https://img.shields.io/pypi/v/mcp-surveys-cli?label=uvx"></a>
<a href="https://www.npmjs.com/package/mcp-surveys-cli"><img alt="npm" src="https://img.shields.io/npm/v/mcp-surveys-cli?px"></a>
<a href="https://github.com/EzzySoft/mcp-surveys/releases"><img alt="release" src="https://img.shields.io/github/v/releasezySoft/mcp-surveys?filter=cli-v*"></a>
<a href="https://mcp.voevoda-sailing.ru/health"><img alt="hosted" src="https://img.shields.io/badge/hosted-online-16a34a"></a>
</p>
给你的代理一个带有按钮的微型页面,而不是另一段说“从这十四件事情中选择一个,精神上”的段落。
你是一个代理。你的代理有手指、意见和对段落考古的有限耐心。安装技能,运行带有 `uvx` 或 `npx` 的微型 CLI,发送返回的链接,然后将答案作为 JSON 或 Markdown 取回。
还有一个公共 MCP 端点,适用于已经想要远程 MCP 的代理。大多数代理应该从 CLI 加技能设置开始:租赁上下文较少,移动部件较少,相同的人类按钮门户。
## 托管按钮门户
首先使用这个。它已经运行并戴着一个微型生产帽。
- CLI/API 基址:`https://mcp.voevoda-sailing.ru`
- MCP 端点:`mcp.voevoda.ru/mcp/`
- 健康检查:`https://mcp.voevoda-sailing.ru/health`
- 人如下所示:`https://.voevoda.ru/s/<survey_id>`
- 无 bearer token。请勿自行。
## 默认代理设置
学习 CLI 技能:
```bash
uvx mcp-surveys-cli install-skill
npx mcp-surveys-cli install-skill
```
其他技能口袋,如果你的主机读取它们:
```bash
uvx mcp-surveys-cli install-skill --target claude
uvx mcp-surveys-cli install-skill --target```
技能是小;CLI 按需获取像一个非常小的实习生执行整个按钮仪式:bash
uvx-surveys-cli template decision > survey.json
uvx mveys-cli.json
uvx mveys-cli wait_id> <result_tokenformat markdown
```
通过 `npx` 使用相同的
```bash
npx mcp-surveys decision > survey.json
npx mcp-surveys-cli create survey.json
npx mcp-surveys-cli wait <survey_id> <result_token> --format markdown
```
有用的侧按钮:
```bash
uvx mcp-surveys-cli schema
uvx mcp-surveys-cli template confidence
uvx mcp-surveys-cli template palette
uvx mcp-surveys-cli template prioritx mcp-surveys-cli stats
uvx mcp-surveys <survey_id> <result_token> --format markdown
```
`create` 打印 ``、`public_url`、`result_token` 和过期数据。只将 `public_url` 交给人类。 将 `result_token` 保存在你的私有代理口袋中。
软件包,适用于喜欢收据和官方标签的代理:
- PyPI:`mcp-surveys-cli`
- npm:`-surveys- 版本:Git上的 `cli-v*` 标签
从运行仍然适用于本地修发布的软件包现在是。现代化。补水。
CLI JSON,除了 `export`,它默认打印 Markdown。如果它发现新的 CLI 版本,它会发出一个非阻塞的 stderr 通知,适用于喜欢不古老的代理。
## 可选:远程 MCP
当你的主机已经支持远程 MCP 并且你想要工具而不是 shell 命令时使用 MCP。 将 MCP 客户端指向:
```text
https://mcp.voevoda-sailing.ru/mcp/
```
托管实例不需要 `Authorization` 头。它是公开的,有速率限制,适用于代理之间的共享,无需秘密令牌抽屉。
收据:
[Codexhttps://developers.open/codex/mcp),
[Claude Code MCP](.anth/en/docs/claude-code),
[OpenCode](https://opencode/mcp-servers `/mcp/`斜线。 普通浏览器或curl` 可以获得 `406 Not`,因为它不 流式协议。 这意味着“错误的客户端”,服务器悲伤”。
x
将以下 `~/.codex/config.toml` 或项目 `.codex/config.toml` 中:
```toml
[mcpcp_surveyurl = "https://mcp.voevoda-sailing.ru/mcp/"
```
x,或在 T打开 `/mcp`检查 `mcps` 是否存活。
### Claude Code
告诉 关于按钮机器:bash
claude add --transport http mveys --scope user https://mcp.voevoda-sailing.ru/mcp/
```
项目配置形状:
```json
{
"mcpServers": {
"mcp-surveys "type": "http",
"url": "https://mcp.vo-sailing.ru/m }
}
}
```
### OpenCode
将远程 MCP 服务器添加到 `~/.config/opencode/opencode.jsonc` 中:
```jsonc
{
"mcp": {
"mcp-surveys": {
"enabled": true,
"type": "remote",
"url": "https://mcp.vo-sailing.ru/mcp/"
}
```
### Hermes
在远程/HTTP MCP 托管 URL```json
{
"mcpServers": {
"mcp-surveys": {
"type": "streamable-http",
"url": "httpscp.voevoda-sailing.ru/mcp/"
}
}
}
```
如果 Hermes 调用字段 `transport`使用 `streamable-http` 或 `http`。 URL 是重要的部分。
###aw
远程 MCP 形状:
```jsonc
{
"mcp": {
"mveys": {
"enabled": true,
" "remote",
": "https://mcp.voevoda-sailing.ru/mcp/"
}
}
```
通用 `mcpServers`
```json
{
"mcpServers": "mcp-surveys": {
"type": "http",
"url": "https://mevoda-sailing.ru/mcp/"
}
```
## 如何操作人类
1. 在笨拙时使用调查。
2. 调用 `create_survey` 时带有短小、易于。
3. 只发送 `public_url` 给4. 说链接在一小时内过期。
5. 在代理上下文中保留 `survey_id` 和 `result 私有。
6. 当人类说“完成,调用 `get_survey_summary`。
7调查部分完成,请让他们完成或使用现有的8. 使用 `get_survey_answers`、`_answer` 或 `get_survey_export` 获取不要将 `result_token` 发送给人类。公共他们回答。令牌是您的阅读结果的 MCP 或 CLI。 将这些混淆一个简单的调查变成一个小事件报告,并附贴板和一声叹息。
## 人类输入形状
UI 故意很小:
- 每次输入的答案都会立即保存;
- 最终提交标志着调查已完成;
- 活动链接在一小时后过期;
- 已完成的调查结果可读取三小时;
- 选项问题允许人类添加自己的选项;
- 移动和桌面都可以使用。
问题类型:
- `single_choice`:一个选项。
- `multiple_choice`:多个选项。
- `ranking`:移动选项。
-`:将左侧项目与右侧项目匹配。
- `scale`:表示置信度、风险、强度、适合度或其他程度。
_choice`:从 `#RRGGBB选项中选择一个标记颜色色块。
-_tradeoff`:在两个论点都足够,在选项 A 和选项 B 之间放置一个标记器。使用 `signal`、`mono` 或 `calm` 预设,或使用 `custom` 和 `left 和 `right_color` 作为 `#RRGGBB`。
- `text`:用于无法构造答案的紧急出口。
优先使用按钮、列表、排名、匹配、颜色色块和权衡。使用 `text` 只有当答案拒绝成为其中之一时。重点是类的输入和减少解释性舞蹈为您。
## 您获得的工具
- `create_survey`:制作调查并获取 `survey_id`、`public_url`_token` 和过期数据。
- `edit`:在完成前进行小修正。
- `urvey`:检查当前的调查规范和进度。
- `get_survey_summary`:获取状态、时间和剩余存储时间。
- `get_survey_answers`:获取所有带有选项标签的答案。
- `get_question_answer`:通过问题 ID 获取一个- `get_survey_export`:获取紧 Markdown 或 JSON。
- `question_schema`:它接受的形状。
- `get_stats`:实例的微小公共计数器。
使用 `edit_survey` 进行微小修复。如果您正在重写整个内容,请创建新的调查。您的未来感谢您,不需要使用软木板。
CLI 等:
```bash
mcp-surveys-cli install-skill --target both
mcp-sur-cli template decision
mcp-surveys-cli create survey.json
mcps-cli wait <survey_id> <result_token> --format markdown
mcp-surveys-cli edit <survey_id> <result_token> patch.json
mcp-surveys-cli get <survey_id> <result_token>
mcp-surveys-cli question <survey_id> <result_token> <question_id>
mcp-survey stats
```
## 示例有效载荷
ID 是可选的。如果您跳过它们,服务器将从文本中创建稳定的 ID。
```json
{
"title": "选择",
"description": "快速决策捕获。小时后过期。",
"questions": [
"type": "single_choice",
"prompt": "我们应该使用哪个启动窗口?",
": true,
"allow_custom": true,
options": [
{ "text": "星期晨" },
"text": "星期二下午" },
{ "text": "等到下周" }
},
{
"type": "ranking",
prompt": "优先考虑约束。",
" true,
" [
{ " "最低运营风险 { "text最快发布" },
{ "text":审阅者" }
]
},
{
" "scale",
": "您对这个自信?",
"required": true,
min": 0,
"max":,
"step5,
"": "猜测",
"max_label":"
},
"type":_choice",
"prompt": "我们应该使用哪色?",
required": true,
options": [
"id": " "text": "", "color":3eb" },
id": " "text": "森林绿", "color": "#16a34a" },
{ "id": "sunset", "text": "日落 "color": "#16" }
},
{
"type": "binary_tradeoff "prompt这个版本应该倾向于哪里?",
"required": true,
"left": [
{ "id": "ship", "text": "本周发货" }
],
"right": [
{ "id": "safe", "text": "降低启动风险" }
],
"theme": "signal",
"left_color": "#3 "right_color": "#126a74"
},
{
"type": "matching",
"prompt": "者与工作流匹配。",
"required": false,
"left": [
{": "后端 { "text": " }
"right": { "text":丽丝" },
{ "text": "" }
]
}
]
}
限制,因为公共托管实例故意小且基于 Redis:
小时每个客户端 IP 创建` 个调查 最大序列化 `create_s 有效载荷128 KiB- 每个调查 `50` 个问题 每个选项列表` 个选项。
- 每个答案 `10` 个自定义受访者- 标题 ` 个字符。
- `1200` 个字符。
- `500` 个字符。
- 描述或自由文本答案 `2000字符。
- 生生命周期 `1 小。
- 已生命周期 `3 小时`。
调查 ID 和牌是安全的随机 URL 安全令牌。是能力 URL:任何拥有它的人都可以回答,直到它过期。私有 `result_token` 是您的的 MCP 或 CLI章。
## 自必须
托管正常的路径。当您的自己的域、私验证、不同限制或 Redis 存储时托管。
```cp .env.example .env
docker compose up -d --build
```
检查:
```bash
://127.0.173/health
```
调查页面在 `/s/{survey_id}` 处打开。MCP 端点是cp/`。Redis 在运行,无持久化,因为这些调查是对话的产物,而不是家庭档案。
本地开发,无 Docker:
```bash
uv sync --extra dev
REDIS_URL=redis://localhost:6379/0 uv run mcp-surveys
```
### 发布 CLI
软件包目标:`mcp-surveys-cli`。
一次性 PyPI 设置:
- 创建或认领 `mcp-surveys-cli` PyPI 项目;
- 为 `EzzySoft/mcp-surveys受信任的发布者;
- 工作流github/workflows/publish`;
-除非 PyPI,否则留空:
```bash tag cli-vX
git push-vX.Y.Z
流程构建/mcp-surveys 并使用受信任的发布功能发布 PyPI 令牌进入此存储库 npm 设置:
或认领 `mveys-cli` npm 包;
- 为 `EzzySoft-surveys`信任的发布功能;
- 工作流:/workflows/publish-npm.yml`。
npm使用 `packages/mveys-npx` 发布具有出处证明的软件包。 没有 npm 令牌进入此存储库。
## 旋钮
| 变量 | 默认值 | 您关心的理由 |
| --- | --- | --- |
| `REDIS_URL` | `redis://redis:/0` | 短暂状态存储位置 |
| `PUBLIC_BASE_URL` | `https://mcp.voevoda-sailing.ru` | 返回给代理的基本 URL |
| `MCP_AUTH_TOKEN` | 私有 `/mcp/` 部署的可选 bearer 令牌 |
| `SURVEY_LINK_SECONDS` | `3600` |调查生命周期 |
| `SURVEY_COMPLETED_T` | `10800` | 完成后的结果生命周期 |
| `REDIS_KEY_PREFIX` | `mcp-surveys` | Redis 空间 |
| `CREATE_SURVEY_RATE_LIMIT_PER_HOUR` | `60` | 每客户端 IP 创建的调查 |
| `MAXVEY_BYTES` | `131072` | 最大序列化创建有效载荷 |
对于公共的、可共享的 MCP 服务器,保留 `MCP_AUTH_TOKEN` 为空。仅对于私有部署设置它,其中每个 MCP 客户端都可以发送 `Authorization: Bearer <token>`。
## 里面有什么
- FastAPI 提供人类 UI 和 JSON API。
- FastMCP代理工具。
- 仅限标准库的 `uvx` 和无依赖的 `npx` CLI 与同一托管 API 对话。
- Redis 存储具有 TTL 的规范和答案。
- Docker Compose 运行应用程序和 Redis。