The active Hamster MCP Server contract exposes 42 tools in full user sessions and nine tools in hosted delivery sessions. The full scope contains 38 CLI/MCP pairs and four MCP-only tools.
Two Access Scopes
- Full scope uses your signed-in account and permissions. Your MCP client receives 42 account-scoped read and write tools.
- Hosted delivery scope gives the agent nine tools for the Brief or Task being delivered. It cannot list or read unrelated workspace data.
If your workspace is connected to an issue tracker such as Linear, Jira, or Asana, most write tools can sync their changes there too. Note changes and Initiative archiving stay in Hamster.
Search
| Tool | What it does |
|---|
search | Find Briefs, notes, Initiatives, Goals, documents, and Tasks by name or task display ID. |
Accounts and Members
| Tool | What it does |
|---|
list_accounts | List accounts available to you. |
switch_account | Select the active account for every MCP client connected as you. |
list_members | List members of the active account. |
Briefs and Workspace Questions
| Tool | What it does |
|---|
list_briefs | List Briefs in the active account. |
get_brief | Get a Brief's content and metadata. |
create_brief | Create a Brief in the active account. |
update_brief | Update a Brief's title, description, status, or owner, link it to an Initiative, or replace its document body. |
link_pull_request | Link a GitHub pull request, a GitLab merge request, or a Cursor Origin pull request to a Brief, for plugin and local deliveries. Replaces any pull request already linked and moves a Draft or Refining Brief to Shipping. Hamster Cloud links its own pull requests automatically, and so does an OpenAI Agents delivery. |
unlink_pull_request | Remove a Brief's pull request or merge request link. If one was linked, a Shipping Brief moves back to Refining. |
ask_hamster | Run one Hamster agent turn on your behalf, optionally continuing an existing thread_id. Within your permissions, Hamster can change workspace data, delete Tasks, and use connected apps. Repeating a call can repeat those changes. |
get_hamster_reply | Read the exact turn identified by thread_id and turn_id; repeat this read after retry_after_ms while a result is pending. |
Notes
| Tool | What it does |
|---|
list_notes | List document-backed notes with title-and-description search, assignee filters, and pagination. Archived notes are omitted by default; archived returns only archived notes and include_archived returns both. |
get_note | Get note metadata and optional markdown content. |
create_note | Create a document-backed note with a title and optional content. |
update_note | Update a note's title, description, or archived state, and optionally replace its markdown body. |
Initiatives
| Tool | What it does |
|---|
list_initiatives | List Initiatives with title-and-description search, status and health filters, exclusions, and pagination. |
get_initiative | Get an Initiative's details and optionally its Markdown content. |
create_initiative | Create an Initiative with a title and description. |
update_initiative | Update an Initiative's title, description, status, health, owner, dates, or other fields, or replace its document body. |
archive_initiative | Archive an Initiative so it no longer appears in lists by default; Initiatives cannot be hard-deleted. |
unlink_brief_from_initiative | Remove a Brief's link to an Initiative. |
Tasks and Subtasks
| Tool | What it does |
|---|
list_tasks | List top-level Tasks in the active account, optionally filtered by Brief, status, priority, or assignee. |
get_task | Get a Task, its subtasks, and dependencies. |
create_task | Create a top-level Task, optionally linked to a Brief. |
update_task | Update a Task's title, description, priority, assignee, or other fields. |
update_task_status | Move a Task to todo, in_progress, or done. |
get_next_task | Get the next unblocked Task by priority and dependency state. |
list_subtasks | List a Task's subtasks. |
create_subtask | Add a subtask to a Task. |
update_subtask | Update a subtask's content or status. |
delete_subtask | Remove a subtask. |
Documents and Plans
| Tool | What it does |
|---|
list_documents | List the account's documents, optionally filtered by document type, parent document, search, or owner. |
get_document | Get a document and its content. |
get_plan | Get a Brief's generated Plan and Tasks. |
generate_plan | Generate a Plan and Tasks for a Brief in the background, cancelling any queued or running delivery of that Brief; poll get_plan for the result. |
trigger_delivery | Deliver a Brief: check the spec, generate a Plan if needed, then hand off to Hamster Cloud or return steps for a local delivery. It doesn't start OpenAI Agents deliveries. The method is cloud or local; if you omit it and your delivery settings don't resolve to one of those, it returns method_choice_needed. |
Goals
| Tool | What it does |
|---|
list_goals | List organizational Goals with title-and-description search, status filters, exclusions, and pagination. |
get_goal | Get a Goal's details. |
Context Graph
| Tool | What it does |
|---|
search_knowledge_graph | Search the Context Graph by topic and return typed evidence with relevance and confidence. |
explore_entity | Explore a named entity's relationships, edge types, lanes, and confidence. |
get_neighborhood | Resolve affinity edges between seed context node IDs and the rest of the graph. |
Initiative and Goal List Behavior
list_initiatives combines its optional filters. Search matches the title or description without case sensitivity. Status filters support planned, active, completed, and archived; health filters support not_started, on_track, at_risk, and off_track. Archived Initiatives are omitted by default and included when the status filter requests them. Status exclusions can remove archived or other matching Initiatives.
list_goals also combines its optional filters and searches titles and descriptions without case sensitivity. Status filters support draft, refining, shipping, done, blocked, and archived. Archived Goals are omitted by default and included when the status filter requests them. Status exclusions can remove archived or other matching Goals.
Both list tools use limit and offset pagination, return has_more, default to 50 results, and allow up to 200 results per page. Results use stable newest-updated ordering.
These tools are limited to the Brief or Task being delivered and its related documents. Hosted agents cannot list or read unrelated workspace data.
| Tool | Delivery use |
|---|
get_brief | Read a Brief. |
get_plan | Read a Plan. |
get_task | Read a Task. |
get_next_task | Get the next unblocked Task. |
list_tasks | List Tasks. |
list_subtasks | List subtasks. |
get_document | Read a document. |
update_task_status | Update a Task's status. |
link_pull_request | Link the delivery's pull request to its Brief. |
Discovery and Authentication
Your MCP client calls tools/list to discover its available tools. Normal OAuth sessions use your signed-in account and permissions and receive all 42 tools; hosted delivery sessions receive the nine tools above. Each tool arrives with its input schema and description, so the AI can infer when to use it — "what's my next Task?" maps to get_next_task, "what Initiatives do I have open?" maps to list_initiatives, and so on.
CLI Parity Is Partial
38 of the 42 MCP tools have a corresponding Hamster CLI command. Four are MCP-only: get_hamster_reply, because the CLI polls for a pending reply inside its interactive chat command; and search_knowledge_graph, explore_entity, and get_neighborhood, because the CLI has no Context Graph query surface. The CLI also has 14 deliberate CLI-only commands for local setup and sync, authentication, skill management, document authoring, convenience shortcuts, and binary updates, so do not assume that every CLI command is an MCP tool.
Tips
- Use
search when you know an artifact name instead of paging through list tools.
- Preserve
thread_id for a genuine Ask follow-up. Poll a pending turn with get_hamster_reply; do not call ask_hamster again to check status.
- Use
get_next_task when an agent needs the highest-priority Task with no unfinished dependencies.
- Tool calls respect the active account and your role. There is no MCP admin override.
- Navigable URLs are embedded in tool responses — the AI can read the direct link to any resource and show it to you.