ProjectHub MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PROJECTHUB_URL | No | ProjectHub base URL | http://localhost:8000 |
| PROJECTHUB_API_TOKEN | Yes | Personal access token (ph_...) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_user_infoA | Get the authenticated user's profile information (name, email, username) |
| list_workspacesA | List all workspaces the authenticated user belongs to |
| list_projectsA | List projects in a workspace that the user is a member of |
| create_projectB | Create a new project in a workspace. Requires add_project permission. |
| get_projectB | Get details of a specific project |
| list_project_membersA | List members of a project with their roles |
| search_projectA | Search across notes, tasks, discussions, messages, and memories in a project. Strong multi-term keyword matching (every word must match; order-independent); semantic search is also used for embedded types on Pro plans. Returns up to 4 results per type. Pass |
| get_activityC | Get the recent activity feed for a project |
| list_tasksA | List tasks in a project with optional filters. Results are paginated (default 50). Use |
| get_taskB | Get details of a specific task |
| create_taskB | Create a new task in a project. Only title is required. |
| update_taskA | Update a task. Only provided fields are changed. Set assignee_id to 0 to unassign. |
| delete_taskB | Delete a task. Requires Project Owner role. |
| toggle_taskB | Toggle a task between open and done status |
| start_timerA | Start a time tracking timer on a task. Automatically stops any other running timer. |
| stop_timerA | Stop the running time tracking timer on a task |
| list_notesA | List all notes in a project, ordered by pinned first then newest. Pass |
| get_noteA | Get a single note with its full content |
| create_noteC | Create a new note in a project. Only title is required. |
| update_noteB | Update a note. Only provided fields are changed. |
| delete_noteA | Delete a note. Requires being the creator or having delete permission. |
| list_discussionsB | List all discussions (chat rooms) in a project |
| create_discussionB | Create a new discussion (chat room) in a project |
| get_discussion_messagesB | Get messages from a discussion in chronological order. Messages are read-only via the API. |
| list_remindersA | List pending reminders for the current user in a project |
| create_reminderB | Create a reminder. Title and remind_at are required. remind_at must include timezone. |
| dismiss_reminderA | Dismiss a reminder (sets its status to dismissed) |
| list_notificationsA | List notifications for the current user. Returns unread only by default. |
| mark_notification_readB | Mark a notification as read |
| list_linksB | List all quick links in a project |
| create_linkB | Create a new quick link in a project |
| delete_linkB | Delete a quick link from a project |
| list_filesA | List all files in a project. Requires files_enabled plan feature. |
| list_memoriesA | List memories (AI-generated knowledge items) in a project. Memories capture decisions, preferences, context, references, and lessons that persist across conversations. |
| get_memoryB | Get a single memory with its full content |
| create_memoryA | Create a new memory in a project. Memories are AI-generated knowledge items — decisions, preferences, context, references, or lessons — that persist across conversations. Humans can view them in the platform. |
| update_memoryB | Update a memory. Only provided fields are changed (partial update). |
| delete_memoryA | Delete a memory from a project |
| list_workspace_memoriesB | List memories across all projects in a workspace. Useful for retrieving workspace-wide knowledge and context. |
| list_canvas_itemsA | List the notes placed on the project's shared canvas, with their positions (x, y), sizes (width, height), and stacking order (z). Use this to understand how the board is spatially organized before placing or arranging notes. |
| place_on_canvasA | Place a note on the shared canvas at an (x, y) world coordinate. Idempotent — if the note is already on the canvas, returns its existing placement. Returns the placement (including its |
| move_canvas_itemA | Move and/or resize a placed canvas item. Pass the placement's |
| remove_from_canvasA | Remove a note's placement from the canvas. The underlying note is NOT deleted — it just leaves the board. Pass the placement's |
| list_tagsA | List the tags defined in a project, with how many things each tag is attached to. Use this to discover existing tags before tagging something, so you reuse a tag instead of creating a near-duplicate. |
| create_tagA | Create a tag in a project. Names are unique per project (case-insensitive). Note: you usually don't need this — passing |
| update_tagA | Rename or recolour a tag. Renaming updates it everywhere it's used. Only provided fields change. |
| delete_tagA | Delete a tag from a project. It is removed from every task and note it was attached to. The tagged items themselves are NOT deleted. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/compagnt/projecthub-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server