This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
Podio MCP Server — Integration Guide
The Podio MCP (Model Context Protocol) Server connects AI assistants — ChatGPT, Microsoft Copilot Studio, Claude Desktop, and any other MCP-compatible platform — directly to your Podio data. Once connected, your AI assistant can read and write your Podio workspaces, apps, and items using plain natural language.
No coding required to get started. The server is live at https://mcp.podio.com — just point your AI platform at it and log in with your Podio account.
What You Can Do
The Podio MCP Server gives your AI assistant 22 tools covering both reading and writing your Podio data:
| Category | Examples |
|---|---|
| Browse | List organizations, workspaces, apps, and members |
| Read data | Fetch items with full field values, filter and search across your account |
| Write data | Create and update items, post comments |
| Tasks | Create, update, reassign, and complete tasks |
| Notifications | Read recent activity and notifications |
Examples of queries for your AI assistant
- “Show me all open deals in my Sales Pipeline app worth more than $10,000. “
- “Create a follow-up task for item 123456, due next Friday.”
- “What tasks are assigned to me this week?”
- “Find everything related to Acme Corp across my Podio account.”
- “Update the status of item 987654 to ‘In Review’.”
Quick Start to try it — Connect in a Minute
The server uses shared default credentials so you can connect immediately without creating a Podio API key. You simply log in with your Podio account when prompted.
Recommended for: VSCode / GitHub Copilot and any platform where you cannot enter your own API credentials. Also fine for trying the integration before committing to your own API key.
The setup depends on your AI platform — jump to the Connect Your AI Platform section for step-by-step instructions. The key things to know:
- MCP Server URL: https://mcp.podio.com/mcp
- Authorization URL: https://mcp.podio.com/oauth/authorize
- Token URL: https://mcp.podio.com/oauth/token
- No client ID or secret needed when using default credentials.
The first time you connect, your AI platform will open a browser window where you log into Podio and click Allow access. After that, your AI assistant is ready to use.
Note:
This case is meant for testing, with some limits added - approximately 30-40 requests to the MCP server. For production use, we recommend connecting with your API key.
Using Your Own Podio API Key
For platforms that support it (ChatGPT, Copilot Studio), we strongly recommend creating your own Podio API key instead of relying on the shared default credentials.
Benefits
- API calls are made under your own application identity, not a shared one
- Better audit trail — Podio activity logs show your app name
- More control — you can revoke the key at any time from Podio Settings
- Higher reliability — your usage is independent of other users on the shared credentials
- Higher API limits - the default client has more restricted call limits
Step 1 — Create an API Key in Podio
- Log in to Podio and go to Account Settings -> API Keys (direct link: https://podio.com/settings/api)
- Click on Generate API Key
- Fill in the form:
- Name: something descriptive, e.g. “My ChatGPT Integration”
- Redirect URL: https://mcp.podio.com <- this exact value is required.
- Select Generate
- Copy your Client ID and Client Secret — you will need them in the next step

Important Note:
Keep your Client Secret private. Do not share it or post it anywhere.
Step 2 — Use Your Key When Connecting
Once you have your Client ID and Client Secret, enter them in your AI platform’s OAuth configuration.
Connect Your AI Platform
ChatGPT / OpenAI
ChatGPT supports MCP servers with full OAuth configuration, so you can choose between using the shared default credentials or your own Podio API key.
Option A — Without your own API key (quick setup)
-
In ChatGPT Settings, go to Connectors (or MCP Servers, depending on your plan).
-
Add a new MCP Server connection.
- Fill in Field Values:
- MCP Server URL: https://mcp.podio.com/mcp
- Authorization URL: https://mcp.podio.com/oauth/authorize
- Token URL: https://mcp.podio.com/oauth/token
- Client ID: Leave blank or enter any placeholder
- Client Secret: Leave blank
- Click on Connect and log into Podio when prompted.
Option B — With your own Podio API key (recommended)
-
In ChatGPT, add a new MCP Server connection.
- Fill in Field Values:
- MCP Server URL: https://mcp.podio.com/mcp
- Authorization URL: https://mcp.podio.com/oauth/authorize
- Token URL: https://mcp.podio.com/oauth/token
- Client ID: Your Podio Client ID
- Client Secret: Your Podio Client Secret
- Click on Connect and log into Podio when prompted.
Microsoft Copilot Studio
Copilot Studio supports MCP connections through Actions, with the same two credential options as ChatGPT.
Option A — Without your own API key
-
In your Copilot Studio agent, go to Actions -> Add an action -> MCP Server.
-
Set the MCP Server URL to https://mcp.podio.com/mcp .
- For authentication, choose OAuth 2.0 and fill in Field Values:
- Authorization URL: https://mcp.podio.com/oauth/authorize
- Token URL: https://mcp.podio.com/oauth/token
- Client ID: Leave blank or enter any placeholder
- Client Secret: Leave blank
- Save and test the connection.
Option B — With your own Podio API key (recommended)
Follow the steps above for “Using your Own API Key” first, then use your Client ID and Client Secret in the fields below.
- Create Blank Agent
- Go to the tools section
- Add a new Model Context Protocol tool
- Enter Name, Description
- For Server URL, use https://mcp.podio.com
- Select OAuth 2.0 with Manual Type
- Enter your Client ID and Client Secret you created in Podio.
- Enter the following details for mandatory Fields Values:
- MCP Server URL: https://mcp.podio.com/mcp
- Authorization URL: https://mcp.podio.com/oauth/authorize
- Token URL: https://mcp.podio.com/oauth/token
- Refresh URL: https://mcp.podio.com/oauth/authorize
Troubleshooting
In case you see that the Copilot cannot connect to the MCP in your chat session, you need to go to the Manage your connections view and connect the tool. If you continue to encounter the following message or a similar error:
Example Message: “It looks like I couldn’t retrieve your organization because the Podio authentication token has expired. To proceed, you’ll need to re-authenticate your Podio account so I can access your data. Once that’s done, I can list all your organizations”.
Open your agent in Copilot Studio, then go to Tools to reconnect. Expand the Connection section and select Reconnect.

Health Check
Before configuring your AI platform, you can verify the server is reachable:
curl https://mcp.podio.com/health
Important:
A 200 OK response with “status”: “healthy” confirms the server is running.
Available Tools
The Podio MCP Server exposes 22 tools which are grouped by category. All tools depend on a valid Podio session obtained automatically via the OAuth authentication flow.
Items
| Tool | Type | Description |
|---|---|---|
| get_item | Read | Fetch a single item by ID. Returns full field values, metadata, and dates. |
| get_item | Read | Retrieve items from an app with optional filters, sorting, and pagination (up to 500 per request). |
| get_app_summary | Read | Get a human-readable summary of an app’s schema and items in one call — ideal for giving your AI assistant context about your data. |
| create_item | Write | Create a new item in an app. Requires a field-value map keyed by external_id. |
| update_item | Write | Update one or more fields on an existing item. Only the fields you specify are changed. |
Filtering items
Pass a filters object to get_items keyed by field external_id:
| Field Type | Filter Format |
|---|---|
| Text | {“from”: “search text”} |
| Category | [option_id_1, option_id_2] |
| Date | {“from”: “2025-01-01”, “to”: “2025-12-31”} |
| Number/Money | {“from”: 10, “to”: 100} |
| App reference | [item_id_1, item_id_2] |
Apps & Workspaces
| Tool | Type | Description |
|---|---|---|
| get_app | Read | Get an app’s configuration and full field definitions (types, labels, category options). |
| get_apps_in_space | Read | List all apps inside a workspace. |
| get_space | Read | Get workspace details including name and privacy settings. |
| get_space_members | Read | List members of a workspace with their roles and join dates. |
| list-views | Read | List saved views (filters) for an app. |
Organizations
| Tool | Type | Description |
|---|---|---|
| get_organizations | Read | Get all Podio organizations the authenticated user belongs to. |
| get_spaces_in_organization | Read | List all workspaces in an organization. |
| get_org_members | Read | List members of an organization with optional search and pagination. |
Search
| Tool | Type | Description |
|---|---|---|
| search_globally | Read | Search across your entire Podio account (or scoped to an app or workspace). Supports filtering by object type: item, app, space, task, file, conversation. Item results are automatically enriched with decoded field values. |
Tasks
| Tool | Type | Description |
|---|---|---|
| get_tasks | Read | Get tasks for the authenticated user. Filter by app, workspace, organization, or completion status. |
| get_task | Read | Fetch the full details of a single task (text, status, assignee, due date, labels). |
| create_task | Write | Create a new task, optionally attached to an item, space, or app. |
| update_task | Write | Update a task’s text, description, due date, assignee, or labels. |
| complete_task | Write | Mark a task as completed. |
Comments & Notifications
| Tool | Type | Description |
|---|---|---|
| get_item_comments | Read | Get all comments on an item, including author info and timestamps. |
| add_comment | Write | Post a comment on a Podio item. |
| get_notifications | Read | Retrieve recent notifications for the authenticated user. Filter by viewed/unviewed status. |
How-To Guides
How to browse your Podio data with an AI assistant
Once connected, just ask questions in plain language:
- “What workspaces do I have access to?”
- “Show me all open items in the Sales Pipeline app.”
- “Find all tasks assigned to me that are due this week.”
- “Who are the members of my CRM workspace?”
Your AI assistant will automatically call the right tools in sequence — you don’t need to know which tools exist or how to call them.
How to find an item’s field values
Use get_app first to discover the app’s field external_ids and types, then use get_item or get_items to retrieve the actual data.
Example sequence your AI assistant follows automatically:
- get_organizations -> find your org_id
- get_spaces_in_organization -> find your space_id
- get_apps_in_space -> find your app_id
- get_app (app_id) -> inspect field definitions and external_ids
- get_items (app_id, filters, limit) -> retrieve items with decoded field values
How to create an item
Ask your AI assistant: “Create a new lead in the Sales Pipeline app for Acme Corp, status ‘New’, deal value $4,999.”
The assistant will call get_app to find the field IDs, then create_item with the correct field values:
{
"app_id": 12345678,
"fields": {
"title": "Acme Corp",
"status": [1],
"value": {"currency": "USD", "value": 4999.00},
"close_date": {"start": "2026-06-30 00:00:00"}
}
}
<!--NeedCopy-->
Field value formats (for reference)
- Text -> “string”
- Number -> 42
- Money -> {“currency”: “USD”, “value”: 4999.99}
- Category -> [option_id] (array of IDs)
- Date -> {“start”: “YYYY-MM-DD HH:MM:SS”} or with end date for a range
- App reference -> [{“app_item_id”: item_id}]
How to search across Podio
Ask your AI: “Find everything related to Acme Corp in my account.”
The assistant uses search_globally and automatically enriches item results with their full field values.
You can also scope searches: “Search for ‘quarterly report’ in the Finance workspace.”
How to manage tasks from your AI assistant
- “Create a task to follow up with Acme Corp by Friday, attached to item 123456”
- create_task { text: “Follow up with Acme Corp”, due_on: “2026-04-04”, ref_type: “item”, ref_id: 123456 }
- “Show me all my open tasks in the CRM workspace”
- get_tasks { space_id: 98765, completed: false }
- “Mark task 654321 as done”
- complete_task { task_id: 654321 }
Technical Reference
This section is for developers and integrators building custom applications on top of the Podio MCP Server.
OAuth 2.0 Endpoints
| Endpoint | Method | Purpose |
|---|---|---|
| /oauth/authorize | GET | Start the authorization flow — redirects user to Podio login |
| /oauth/token | POST | Exchange authorization code for access token, or refresh a token |
| /oauth/callback | GET | Redirect URI — Podio posts the auth code here after user grants access |
| /oauth/register | POST | Dynamic client registration (RFC 7591) — pre-register an app with custom Podio credentials |
| /.well-known/oauth-authorization-server | GET | OAuth 2.0 Authorization Server Metadata (RFC 8414) |
| /.well-known/oauth-protected-resource/mcp | GET | OAuth Protected Resource Metadata (RFC 9728) |
Three Credential Modes
The server supports three ways to authenticate, selected automatically based on what the AI platform sends:
| Mode | How it’s triggered | Podio credentials used |
|---|---|---|
| Default | No client_id sent, or client_id not recognized | Server’s shared default key |
| Direct | client_id sent = your Podio client_id (not a registered MCP client) | Your own key (secret provided at token exchange) |
| Registered | client_id is a pre-registered MCP client ID (from /oauth/register) | Your own key (stored server-side at registration) |
Dynamic Client Registration
If your platform does not support sending client_secret at the token exchange step, pre-register your application to associate your Podio credentials server-side:
curl -X POST https://mcp.podio.com/oauth/register \
-H "Content-Type: application/json" \
-d '{
"client_name": "My App",
"redirect_uris": ["https://mcp.podio.com/oauth/callback"],
"podio_client_id": "<YOUR_PODIO_CLIENT_ID>",
"podio_client_secret": "<YOUR_PODIO_CLIENT_SECRET>"
}'
<!--NeedCopy-->
The response includes a client_id (in the form mcp-client-xxxxxxxx) to use in all subsequent OAuth requests:
{
"client_id": "mcp-client-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"client_name": "My App",
"redirect_uris": ["https://mcp.podio.com/oauth/callback"],
"grant_types": ["authorization_code", "refresh_token"],
"podio_credentials_provided": true
}
<!--NeedCopy-->
MCP Transport
-
Protocol: Model Context Protocol over Streamable HTTP
-
MCP endpoint: https://mcp.podio.com/mcp (also responds at https://mcp.podio.com/)
-
Authentication: Bearer token in Authorization header with each request
Health Check
curl https://mcp.podio.com/health
{
"status": "healthy",
"service": "Podio External MCP Server",
"version": "2.0.0",
"transport": "streamable-http",
"auth": "oauth2_authorization_code"
}
<!--NeedCopy-->
Further Reading
This Preview product documentation is Citrix Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Citrix Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Citrix product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.