Medium Risk

create_survey_by_json

(推荐,支持 70+ 题型)通过 JSONL 格式创建问卷。每行一个 JSON 对象,首行为 qtype='问卷基础信息' 的元数据。支持 70+ 种题型(普通调查、投票、专业调查模型、考试、表单),远多于 DSL 文本格式。【核心字段】qtype(题型名称)、title(标题,只写题目正文,不写题目类型)、select(选项数组)、rowtitle(行标题或表格字段名)、requir(是否必填;缺省时 SDK 注入 true)。【必答规则】默认所有题型都是必答题,包括单项填空、简答题、意见建议题、开放题;只有用户明确指定某个题号/题目/字段为选填时,才给该题传 requir=false...

Part of the Wjx server.

create_survey_by_json can modify Wjx data, with no limits today. PolicyLayer puts allow, deny, and rate-limit rules on every call. Live in minutes.

SECURE WJX →

Free to start. No card required.

AI agents use create_survey_by_json to create or modify resources in Wjx. Write operations carry medium risk because an autonomous agent could trigger bulk unintended modifications. Rate limits prevent a single agent session from making hundreds of changes in rapid succession. Argument validation ensures the agent passes expected values.

Without a policy, an AI agent could call create_survey_by_json repeatedly, creating or modifying resources faster than any human could review. PolicyLayer's rate limiting ensures write operations happen at a controlled pace, and argument validation catches malformed or unexpected inputs before they reach Wjx.

Write tools can modify data. A rate limit prevents runaway bulk operations from AI agents.

policy.json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "create_survey_by_json": {
      "limits": [
        {
          "counter": "create_survey_by_json_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}

See the full Wjx policy for all 58 tools.

Get this rule live on your own Wjx server in minutes. PolicyLayer enforces it on every call, before it runs.

ENFORCE ON MY WJX →

View all 58 tools →

These attack patterns abuse exactly the kind of access create_survey_by_json gives an agent. Each links to the full case and the policy that stops it:

Browse the full MCP Attack Database →

Every attack above starts with a tool call. PolicyLayer checks each one against your policy first, so create_survey_by_json only ever does what you allow.

SECURE WJX →

Other write tools across the catalogue. The same approach applies to each: rate-limit and validate the arguments.

What does the create_survey_by_json tool do? +

(推荐,支持 70+ 题型)通过 JSONL 格式创建问卷。每行一个 JSON 对象,首行为 qtype='问卷基础信息' 的元数据。支持 70+ 种题型(普通调查、投票、专业调查模型、考试、表单),远多于 DSL 文本格式。【核心字段】qtype(题型名称)、title(标题,只写题目正文,不写题目类型)、select(选项数组)、rowtitle(行标题或表格字段名)、requir(是否必填;缺省时 SDK 注入 true)。【必答规则】默认所有题型都是必答题,包括单项填空、简答题、意见建议题、开放题;只有用户明确指定某个题号/题目/字段为选填时,才给该题传 requir=false。【专业模型】支持 BWS/MaxDiff(mdattr)、联合分析(columntitle)、品牌漏斗(brands)、Kano模型、SUS模型、PSM模型等。【考试题型】支持 correctselect(正确答案)、quizscore(分值)、answeranalysis(答案解析)。【关联逻辑】支持 relation(显示条件)、referselect(引用前题选项)。【硬性校验 — 不满足会被 SDK 拒绝】1) 标题不得为空、占位符(??? / 无标题 / TODO / xxx 等)或少于 2 字;2) JSONL 必须包含至少 1 道真实题目(_meta/分页栏/段落说明/知情同意书不计入)。【多项填空必看】多项填空 qtype='多项填空',子填空位数量由 title 中的 {_} 占位符数量决定,例如 title='电话 {_},邮箱 {_},微信 {_}' 会生成 3 个空位;禁止用 rowtitle 数组(多项填空不支持该字段,服务端会忽略并只生成 1 个空位)。考试多项填空/考试完形填空同理。【表格类题型 706-710】生成 JSONL 时必须优先使用标准格式:表格数值/表格填空使用 rowtitle;表格下拉框使用 rowtitle+selects;表格组合使用 rowtitle+types+selects;自增表格使用 rowtitle+selects(一行模板)+minvalue/maxvalue。多项文件题(711) rowtitle 列出每个上传项;多项简答题(712) rowtitle 列出每个简答子题。【投票题】投票单选/投票多选使用 qtype='投票单选'/'投票多选' + select,并在调用工具时显式传 atype=3。输入示例(JSONL): {"qtype":"问卷基础信息","title":"客户满意度调查","introduction":"请认真填写"} {"qtype":"单选","title":"您的性别","select":["男","女"]} {"qtype":"多项填空","title":"联系方式:电话 {_},邮箱 {_}"} {"qtype":"表格填空","title":"报名人基础信息","rowtitle":["姓名","手机号","微信号","紧急联系人"]} {"qtype":"表格数值","title":"活动参与与体能数据","rowtitle":["计划参与人数","每周打球次数","可接受人均费用(元)"],"minvalue":"0","maxvalue":"999"} {"qtype":"表格下拉框","title":"个人水平与装备情况","rowtitle":["羽毛球水平","是否自带球拍","是否需要拼车"],"selects":[["新手","初级","中级","高级","校队/专业"],["是","否"],["是","否"]]} {"qtype":"表格组合","title":"活动时间与场地偏好","rowtitle":["可参加时段","偏好场地类型","备注"],"types":["多选","下拉","文本"],"selects":[["工作日晚上","周末上午","周末下午","周末晚上"],["木地板","塑胶地","不限"],[]]} {"qtype":"自增表格","title":"可参加日期清单","rowtitle":["可参加日期","可参加时段","是否可候补"],"selects":[["","工作日晚上|周末上午|周末下午|周末晚上","可以|不可以"]],"minvalue":"1","maxvalue":"5"} {"qtype":"投票单选","title":"你最喜欢哪个网站","select":["淘宝网","开心网","百度","腾讯","人人网"]} {"qtype":"投票多选","title":"哪些网站是你经常使用的","select":["淘宝网","开心网","百度","腾讯","人人网"]} {"qtype":"量表题","title":"满意度评分","select":["1","2","3","4","5"],"minvaluetext":"非常不满意","maxvaluetext":"非常满意"}. It is categorised as a Write tool in the Wjx MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on create_survey_by_json? +

Register the Wjx MCP server in PolicyLayer and add a rule for create_survey_by_json: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Wjx. Nothing to install.

What risk level is create_survey_by_json? +

create_survey_by_json is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit create_survey_by_json? +

Yes. Add a rate_limit block to the create_survey_by_json rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block create_survey_by_json completely? +

Set action: deny in the PolicyLayer policy for create_survey_by_json. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides create_survey_by_json? +

create_survey_by_json is provided by the Wjx MCP server (wjx-mcp-server). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every Wjx tool call.

Deterministic rules across all 58 Wjx tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Free to start. No card required.

4,600+ MCP servers and 31,000+ tools scanned and risk-classified.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.