MCP App Store
by KeenEthics

Overview

Loopsii is the all-in-one workspace for freelance developers and designers: projects, clients, tasks, time tracking, meeting notes and documents in one place. This plugin lets ChatGPT and Codex work inside it on your behalf. What ChatGPT can do once connected: • Search your whole workspace and open any project, client, task, document, meeting or recording. • Read meeting notes and full transcripts, and answer questions about what was said or decided in a meeting ("what did we agree with Anna about the pricing page?"). • Log time you have worked, start or stop the timer, and review or correct recent entries. • Create and update projects, clients, tasks and documents, and leave comments on tasks. It can never delete anything. Every answer links back to the record in Loopsii, so what ChatGPT made or changed is one click away. Sign-in is standard OAuth: you see which app is asking and exactly what it may do — read your workspace, and create and update records. Access tokens expire after an hour and renew silently, and you can disconnect at any time in Loopsii → Settings → API → Connected apps. Loopsii never sees your conversation with ChatGPT; it only receives the tool requests ChatGPT makes and returns the matching records. Bank details are never readable or editable through the plugin. Setup guide: loopsii.com/connect/chatgpt.

Tools

add_task_comment

ChatGPT
Add a comment to a task, posted as the user. On a project shared with a client the comment shows in the client portal, so write it the way the user would. Use it to leave a note, a status update or a question on a task; read existing comments with get_task.

add_time_entry

ChatGPT
Log a finished block of time after the fact, without touching the running timer. Use it when the user reports work they already did ("log 2h of design for Acme yesterday").

create_client

ChatGPT
Create a new client. Only the name is required — contact and billing fields can be filled in now or later with update_client.

create_document

ChatGPT
Create a document inside a project — a plain doc, or an estimate, proposal or agreement. For estimate, proposal and agreement, prefer creating it WITHOUT content: the server seeds a full template already filled in from the user's own profile and the project's client record, leaving [bracketed] placeholders wherever it had no data. Then call get_document, replace those placeholders, and send the finished markdown back with update_document. Pass content yourself only for a plain doc, or when the user has given you the exact text they want. Show the returned url to the user — it opens the new document in Loopsii.

create_project

ChatGPT
Create a new project from a name. Use it when the user starts new work; set the client, stage, dates and price afterwards with update_project.

create_task

ChatGPT
Create a task. Only the title is required — file it under a project, set the priority, status, due date or milestone in the same call, or leave them at their defaults (todo, medium, no project). Use it whenever the user asks for something to be added to their list. When the task follows up on a meeting, pass meeting: the task is then linked to that meeting and takes its project.

fetch

ChatGPT
Fetch one record by id — the document, meeting, task, project, client or recording that search returned. Use it to read the full content behind a search hit; pass the optional type when you know it to skip the lookup.

get_client

ChatGPT
Read one client in full — contact fields, billing address, VAT and notes. Use it before quoting a client detail back to the user or before updating one.

get_document

ChatGPT
Read one document in full, including its whole body as markdown. Use it before answering questions about what a document says, and always before update_document — an update replaces the entire body, so you need the current text to edit. Estimate tables come back as ```estimate fenced JSON and callouts as "> [!NOTE]" blockquotes; both are real content, so keep them verbatim.

get_meeting

ChatGPT
Read one meeting: metadata, the projects it is filed under (projects — the primary first), the AI summary and the tasks generated from it. Use it to answer "what did we decide in X". Only set include_transcript when the summary is not enough — transcripts are huge and come back 30000 characters at a time: while transcriptNextOffset is not null, call again with transcript_offset set to it to read on.

get_profile

ChatGPT
Read the signed-in user's own account settings: name, workspace slug, timezone, currency, hourly rate, and the business identity printed on their documents (business name, address, VAT and registration numbers). Use it when you need the user's currency or rate for a calculation, or their business identity for a document. Bank details are never returned.

get_project

ChatGPT
Read one project in full — stage, client, start date, deadline, price, hourly rate and description. A null hourlyRate means the project bills at the default rate from get_profile. Use it before answering questions about a specific project or before updating it.

get_recording

ChatGPT
Read one screen recording: metadata, its summary and transcript, plus the public watch URL when sharing is on. Use it to answer questions about what a recording shows. The transcript comes back 30000 characters at a time: while transcriptNextOffset is not null, call again with transcript_offset set to it to read on.

get_task

ChatGPT
Read one task in full — description, status, priority, project, milestone, due date, where it came from and its comments, newest first. Use it before quoting a task detail back to the user or before updating one. The task can be a UUID, an id prefix, or any part of its title.

list_clients

ChatGPT
List every client with contact and billing details; archived clients are included and marked isArchived. Use it to answer "who are my clients", or to find the client id a project or invoice question needs.

list_documents

ChatGPT
List the documents in the workspace, newest first — id, title, kind, project and when each was last touched. Use it to see what the user has written, or to find the document another document tool needs. Filter by project and by kind: a plain doc, or an estimate, proposal or agreement.

list_meetings

ChatGPT
List recent meetings, newest first — id, title, platform, date and duration. Use it to find the meeting the user means before calling get_meeting.

list_people

ChatGPT
List the people the user has met with, from meeting attendance — name, email, how many meetings and the most recent one. Use it to answer "who have I been meeting" or to check when someone last came up.

list_projects

ChatGPT
List projects with their id, name, slug and whether each is archived. Archived projects are left out unless include_archived is true — set it when the user asks about old, finished or archived work. Use it to see what the user is working on, or to get the id a project tool needs.

list_recordings

ChatGPT
List recent screen recordings, newest first — id, title, date, duration, processing status and views. Use it to find the recording the user means before calling get_recording.

list_tasks

ChatGPT
List tasks, newest first — id, title, status, priority, project, parent task and due date. Use it to answer "what is on my list" or "what is left on the Acme project", and to find the task another task tool needs. Filter by project (a name, an id, or "none" for tasks filed under no project), by parent task (its subtasks, or "none" for top-level tasks only) and by status.

list_time_entries

ChatGPT
List logged time entries over a date window with their durations, descriptions and projects. Use it to answer "how much did I work on X" or to summarise a day, week or month.

timer_start

ChatGPT
Start the time tracking timer, optionally against a project. Any timer already running is stopped and logged first. Use it when the user says they are starting work on something.

timer_status

ChatGPT
Check whether a time tracking timer is running right now, and for how long. Use it before starting or stopping a timer, and whenever the user asks what they are working on.

timer_stop

ChatGPT
Stop the running timer and log the entry, reporting how long it ran. Use it when the user says they are done with what they were tracking.

update_client

ChatGPT
Change contact or billing fields on an existing client, or archive and restore it — archiving a client archives its projects with it. Pass only what changes; null clears a field. Use it when the user gives you a new address, VAT number or billing email.

update_document

ChatGPT
Rename a document or rewrite its body. The content you pass REPLACES the entire document — call get_document first, edit the markdown it hands back, and send the whole result, or everything you left out is deleted. Keep ```estimate fences and "> [!NOTE]" callouts exactly as they came unless the user actually wants them changed. Pass only what changes. Show the returned url to the user — it opens the document in Loopsii.

update_meeting

ChatGPT
Rename a meeting or file it under a project. Pass only what changes. Use it when the user says which project a call belonged to, or wants a clearer title than the generated one.

update_profile

ChatGPT
Change the signed-in user's own settings — display name, timezone, currency, hourly rate, and the business identity that appears on their documents (business name, address, VAT and registration numbers). Pass only what changes; null clears a nullable field. Email, workspace slug, avatar and bank details cannot be changed here.

update_project

ChatGPT
Change fields on an existing project — rename it, move its stage, assign a client, set dates, the estimated price or its own hourly rate, archive or restore it. Pass only what changes; null clears a nullable field. Renaming regenerates the slug.

update_recording

ChatGPT
Rename a screen recording or file it under a project. Pass only what changes. Use it when the user says which project a recording belongs to, or wants a clearer title.

update_task

ChatGPT
Change fields on an existing task — rename it, move its status or priority, refile it under another project or milestone, set or clear the due date. Completing a task IS an update: pass status "done". Pass only what changes; null clears a nullable field.

update_time_entry

ChatGPT
Change the project or description of a logged time entry — for example file an entry that was tracked with no project. Take the entry id from list_time_entries. Pass only what changes.

add_time_entry

Claude

ask_meeting

Claude

create_client

Claude

create_document

Claude

create_project

Claude

create_task

Claude

fetch

Claude

get_client

Claude

get_document

Claude

get_meeting

Claude

get_profile

Claude

get_project

Claude

get_recording

Claude

get_task

Claude

list_clients

Claude

list_documents

Claude

list_meetings

Claude

list_people

Claude

list_projects

Claude

list_recordings

Claude

list_tasks

Claude

list_time_entries

Claude

timer_start

Claude

timer_status

Claude

timer_stop

Claude

update_client

Claude

update_document

Claude

update_profile

Claude

update_project

Claude

update_task

Claude

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

Similar Apps