MCP tools
Every tool the Corpole MCP server offers, the permission it needs and what it does. The server is at https://corpole.com/api/mcp.
Tools
| Tool | Access | What it does |
|---|---|---|
get_authority_context | Read | Every Authority record of the project, grouped by type, with its acceptance criteria and their status, plus the agent instruction. Agents call it before writing or changing code. |
search_requirements | Read | Keyword search in title, code, statement and acceptance criteria. Defaults to Authority and Approved; Retired only on request. |
get_record | Read | Full detail of one record: state, statement, rationale, each acceptance criterion with its code (e.g. FR-001/AC2), status and evidence, satisfaction, owner, source. |
get_work_context | Read | The context slice for one record or work item: acceptance criteria, the why-chain, realizing technical requirements, dependencies, constraints (linked and project-wide), open conflicts, replacements; for work items also the theme → epic → story/task → subtask chain, the work package and the implemented requirements (inherited from the nearest parent when an item has none). |
list_work_items | Read | Themes, epics, work packages, stories, tasks and subtasks with status, parent and the requirements they implement, e.g. the stories that are Ready. Stories are work that involves development; tasks are work without development. |
update_work_status | Write (propose permission) | Moves a work item along its workflow: stories to In progress or Code review, tasks to In progress or Check, subtasks to Doing or Done. Approval, verification, check and Done are decided by people. |
get_standards | Read | Standards that apply to the project (tenant-wide and project; waived ones listed separately), with must/should enforcement. |
search_knowledge | Read | Search decisions, questions, glossary terms, standards and references. |
ask_question | Write (propose permission) | Records an open question with the working assumption, linked to what it concerns. |
propose_decision | Write (propose permission) | Proposes an ADR; binding only once a person accepts it. |
propose_relation | Write (propose permission) | Proposes a typed relation (refines, realizes, constrains, replaces, conflicts_with, relates_to). A person confirms it on the record page. |
create_project | Write (propose permission) | Creates a project for the user in their workspace and switches an OAuth connection to it. An existing codebase starts onboarding; a new idea starts the kickoff interview. |
get_setup_brief | Read | The kickoff interview for a new project: interview rules, the steps with why and an example, what exists so far and what comes next. |
submit_setup_records | Write (propose permission) | Stores one confirmed kickoff section: project brief, Draft records with criteria and links, open questions. Nothing binds until a person approves it. |
propose_change | Write (propose permission) | Proposes a change to an existing record. Nothing is applied until a person accepts the difference on the record page; accepting follows the edit rules. |
propose_work_items | Write (propose permission) | Proposes epics, stories, tasks and subtasks into the Backlog. The agent can start one only after a person has moved it to Ready. |
get_handover_brief | Read | The project's authority tier (Shadow, Shared, Full) and how to move agent rule files, requirement documents and ADRs into Corpole as proposals. Only a person changes the tier. |
declare_emergency | Write (emergency.declare) | Opens a time-boxed production emergency when a person allowed to declare one says so: code gates advise instead of refusing, forbidden actions stay forbidden, a defect tracks it. |
get_repo_kit | Read | Files that make a code repository treat Corpole as its requirements authority (CLAUDE.md section, team plugin settings, PR template, GitHub check). |
propose_record | Write (propose permission) | Adds a Draft marked as an AI proposal, with its acceptance criteria as separate items. Not binding until a person approves it. Limited to 30 per project per hour. |
report_acceptance_result | Write (propose permission) | Records whether one acceptance criterion is met, with evidence. People see which agent reported it and can override it; the record's satisfaction updates. |
get_agent_policy | Read | What agents may do on their own, only after asking, or never (migrations, dependencies, CI/CD, merging, deploying, production data…), and the agent rules in force for this person. Called once per session. |
get_changes | Read | What changed since a moment: records, criteria, relations, work items, knowledge, tests and code links, with who, the field changes and the reason. Without since: since this agent last asked. |
check_code_area | Read | Before changing files: whether they are governed. During onboarding an ungoverned module is refused (enforced) or needs the user's agreement (advisory); a project without any Authority record is treated the same until the kickoff has produced one. |
get_onboarding_brief | Read | How to bring an existing codebase under governance: the discovery protocol, the source trust order, the current modules and the maturity. |
submit_onboarding_findings | Write (propose permission) | Submits what was found in an existing codebase in one batch. Everything arrives as Drafts or proposals for people to review. |
leave_handover_note | Write (propose permission) | Leaves a note on an unfinished work item for whoever continues it: what is done, what is open, the next step. Shown at the top of get_work_context. |
link_code | Write (propose permission) | Attaches a pull request, commit, branch, file or CI run to a story, task or record. Connected repositories link pull requests that mention the code automatically. |
propose_test_case | Write (propose permission) | Registers a test that proves acceptance criteria. The automation reference must match how CI reports the test, so results update the criteria. |
report_test_result | Write (propose permission) | Reports one test run: passed, failed or blocked. Any failing active test makes its criteria Not met; all passing makes them Met. |
report_defect | Write (propose permission) | Records behaviour that breaks a requirement or criterion. Violated criteria become Not met until the defect is fixed and verified; people triage it first. |
raise_risk | Write (propose permission) | Records a risk in the register. It starts as Identified; people score it and decide the response. |
submit_retrospective | Write (propose permission) | Records lessons learned and improvement ideas. Corpole asks for this at most once a day. |
submit_handover_inventory | Propose | Records the sources that govern the project outside Corpole (agent rule files, requirement documents, ADRs, glossaries, tickets) with their size and status: to move, moved, historical or staying outside. Rows are matched by path. Answers with the readiness for the next authority tier. |
proceed_without_kickoff | Propose (records.authorize) | For a new project without Authority records: records that the user chose to build without the kickoff interview, with the reason. The code gate stops asking and agents stop offering the interview until the first Authority record; a person can withdraw it on Project settings. |
propose_rule | Propose (knowledge.edit) | Proposes behavioural rules for agents on this project — from an agent rule file, a recurring lesson or the conversation — as Draft project rules. Rules already in force or proposed in other words are skipped. They apply only after someone who manages the project's integrations activates them on the Rules page. |
switch_project | Write | Moves an OAuth connection to another project the user can open; every switch is written to both projects' history. A token belongs to one project: for a token connection the answer links the page where the user creates a token for the other project. |
what_do_we_have | Read | Does the project have it: matching requirements with their state, whether work built them and tests prove them, related decisions, lessons and questions, and work that mentions it without a requirement. |
explain_change | Read | Why something exists: the requirement it serves and the chain above, who asked and approved, decisions behind it, and the reasons agents gave when linking the code. |
get_impact | Read | What a change to a record reaches: open work that implements it or covers its criteria, the tests of its criteria, open pull requests of the record or that work, and the records that refine, realize or depend on it. |
persist_instruction | Propose | Makes an instruction from the conversation permanent after the person says yes: a personal rule at once, or a Draft project rule, constraint, standard or glossary term for approval. A permission (policy) is explained, not set. |
set_working_mode | Propose | Switches a ready-made working mode on or off — plan first, small steps, analysis only, tests first, smallest change, challenge me — for the person at once, or as a Draft project rule. |
get_decision_queue | Read | What waits for the person's decision in the project, by their permissions: agent drafts, change proposals, proposed decisions, open questions, proposed project rules — with content, proposer and age. |
prepare_decisions | Propose | Stores the agent's short summary and recommendation per waiting item for the person's Decisions screen, where the person decides in one pass. Decides nothing. |
answer_question | Propose | Records the person's own answer to an open question, as theirs, after they confirm it. |
record_decision | Propose | Records a decision taken in the conversation, a meeting or by someone outside, with who decided and the channel; Accepted when the person may decide, proposed otherwise. Can change work priorities the decision sets. |
get_portfolio | Read | Every project the person can read, each in its own section: work in progress for them, decisions waiting, dates due in two weeks, maturity below target, serious issues; then the next two weeks across projects. Each project read is logged in that project. |
get_status | Read | Status brief. For me: what others changed since my last change, where I left off, what is blocked or failing on my work, what waits for me. For the project: progress, decisions waiting, serious risks, drift, bottlenecks, maturity below target. For the team: people and their open work, agents waiting, alerts. |
get_maturity | Read | Where the project stands on seven dimensions (intent, requirements, verification, delivery, agent governance, codebase, decisions and knowledge) against its target profile, with at most three next steps. |
approve_records | Write (the person confirms in their client) | Moves records to Approved or Authority only after the user confirms in their AI client (MCP 2026-07-28 elicitation), with the user's own permissions and the board's checks. Clients that cannot ask send the user to the review board. |
Permissions
Read tools work on every connection. Write tools need the propose permission, and never make anything binding: they add Drafts, proposals or evidence for people to review. declare_emergency also needs the person to hold the emergency permission.