Trust Center
Connector & Integration Technical Specification
How the Magif MCP connector works, what each tool can do, and the current status of API and LMS integration.
Last updated: Version 1.0 - 21 September 2026
Overview
Magif exposes a Model Context Protocol (MCP) connector so a customer can build and manage their own agents from an MCP client such as ChatGPT. This specification documents the connector exactly as implemented today, and the current status of broader API and LMS integration. Where a capability does not exist, it is stated as Not currently supported rather than omitted.
Section A: ChatGPT / MCP connector
Endpoint
- Path
- /api/connector/mcp
- Transport
- Streamable HTTP, stateless, JSON-RPC 2.0
- Protocol version
- 2025-06-18
- Server identity
- magify-connector, version 1.0.0
- Methods
- JSON-RPC methods: initialize, tools/list, tools/call, ping. The endpoint is client-agnostic and works with any MCP client.
- Note
- The base URL is the customer-facing Magif application host. An unauthenticated request returns 401 with a WWW-Authenticate header so the client can discover the OAuth configuration automatically.
Authentication
OAuth 2.1 with PKCE (S256 recommended). Clients are public (no client secret). The access token is a signed bearer token (JWT).
- Register: the client performs dynamic client registration and receives a client_id. Public client, no secret.
- Authorize: the user grants consent; Magif issues a short-lived, single-use authorization code (5 minutes) bound to the PKCE challenge.
- Token: the client exchanges the code (with the PKCE verifier) for an access token and a refresh token.
Discovery: OAuth configuration is published at the standard discovery endpoints (/.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server).
Token lifetimes: Access token lifetime is 90 days and the refresh token lifetime is 180 days by default (configurable). Access is isolated per connector account.
Scopes: One scope is defined and used: connector. There is no finer-grained scope model. Access control is enforced by per-account isolation (each token maps to a single account) and by paid-feature gating, not by scopes.
Tools
The connector exposes 19 tools. Read tools return information; write tools change the customer's own workspace. No tool can read end-user conversation transcripts, and no tool can read information about other accounts. Three tools are advertised but not yet functional (marked below).
| Tool | Class | What it does |
|---|---|---|
| whoami | Read | Read the connector's own account: id, status, agent count, token balance. |
| link_my_account | Read | Return the account claim link or linked email. |
| pair_account | Write | Link the connector workspace to a Magif account using a pairing code. |
| magifai_instructions | Read | Return static reference text. No database or account access. |
| create_agent | Write (create) | Create an agent, with an auto trial offer and an auto image. |
| list_my_agents | Read | List the connector's own agents with their chat URLs. |
| get_agent | Read | Read the configuration of one of the connector's own agents. |
| set_agent_prompt | Write (modify) | Update an agent's name, description, prompt, intro and token limit. |
| set_agent_steps | Write (modify) | Replace an agent's structured steps. |
| add_knowledge | Write (ingest knowledge) | Ingest a knowledge-base document (text, markdown or URL); it is chunked, embedded and indexed. |
| set_agent_style | Write (modify) | Set chat appearance: colour, greeting, hook, examples, position, radius, tone. |
| set_agent_image | Write (modify) | Set an agent's profile or cover image from a URL. |
| generate_image | Write (modify) | Generate an image and set it as the agent profile or cover. Spends account tokens. |
| create_offer | Write (create, pricing) - paid | Create an offer and set its price and token budget. |
| update_offer | Write (modify, pricing, publish/unpublish) - paid | Change price, billing, offer type or the active toggle. Activating an offer makes access sellable; deactivating removes it. |
| delete_agent | Write (delete) - paid | Permanently delete an agent with its offers, steps, knowledge and data. |
| run_automated_test | Write - paid | Persona test. Advertised but currently a non-functional placeholder. |
| generate_kb_from_web_research | Write (ingest) - paid | Web research into a knowledge base. Advertised but currently a non-functional placeholder. |
| get_analytics | Read (analytics) - paid | Usage and conversion analytics. Advertised but currently a non-functional placeholder; no data is returned. |
whoami
Read
Read the connector's own account: id, status, agent count, token balance.
link_my_account
Read
Return the account claim link or linked email.
pair_account
Write
Link the connector workspace to a Magif account using a pairing code.
magifai_instructions
Read
Return static reference text. No database or account access.
create_agent
Write (create)
Create an agent, with an auto trial offer and an auto image.
list_my_agents
Read
List the connector's own agents with their chat URLs.
get_agent
Read
Read the configuration of one of the connector's own agents.
set_agent_prompt
Write (modify)
Update an agent's name, description, prompt, intro and token limit.
set_agent_steps
Write (modify)
Replace an agent's structured steps.
add_knowledge
Write (ingest knowledge)
Ingest a knowledge-base document (text, markdown or URL); it is chunked, embedded and indexed.
set_agent_style
Write (modify)
Set chat appearance: colour, greeting, hook, examples, position, radius, tone.
set_agent_image
Write (modify)
Set an agent's profile or cover image from a URL.
generate_image
Write (modify)
Generate an image and set it as the agent profile or cover. Spends account tokens.
create_offer
Write (create, pricing) - paid
Create an offer and set its price and token budget.
update_offer
Write (modify, pricing, publish/unpublish) - paid
Change price, billing, offer type or the active toggle. Activating an offer makes access sellable; deactivating removes it.
delete_agent
Write (delete) - paid
Permanently delete an agent with its offers, steps, knowledge and data.
run_automated_test
Write - paid
Persona test. Advertised but currently a non-functional placeholder.
generate_kb_from_web_research
Write (ingest) - paid
Web research into a knowledge base. Advertised but currently a non-functional placeholder.
get_analytics
Read (analytics) - paid
Usage and conversion analytics. Advertised but currently a non-functional placeholder; no data is returned.
Capability summary
- Create agents
- Yes (create_agent).
- Modify agents
- Yes (set_agent_prompt, set_agent_steps, set_agent_style, set_agent_image, generate_image).
- Publish / unpublish
- Yes, indirectly. Activating an offer makes access sellable; deactivating it removes access (create_offer, update_offer).
- Delete
- Yes (delete_agent, paid). This permanently deletes the agent and its data.
- Change pricing
- Yes (create_offer, update_offer, paid): price, token budget, billing frequency and trial parameters.
- Ingest knowledge
- Yes (add_knowledge). generate_kb_from_web_research is advertised but not yet functional.
- Access conversations
- No. No connector tool reads end-user or client conversation content.
- Access user information
- Only the connector's own account (whoami, link_my_account). No lookup of other users or end users.
- Access analytics
- Not currently available. The get_analytics tool is advertised but returns no data yet.
Conversation data and payloads
- What Magif receives
- Magif receives only the tool name and the structured arguments the MCP client chooses to send, plus the caller's User-Agent. Magif does not receive the surrounding ChatGPT or other client conversation transcript.
- What is stored
- Each connector tool call is logged to an internal record (the ConnectorToolCall collection) for operational and support purposes. The record holds the tool name, the arguments (with secret-looking values redacted and a size cap), a short result summary, timing and account status.
- Where
- Primary database, in the European Union, alongside other platform records.
- Retention
- An automatic expiry for these tool-call logs is not currently configured in code. A defined retention window for connector tool-call logs is an open item (see the Trust Center confirmation list).
- Who can access
- Access to the stored tool-call records is restricted to Magif superadministrators, precisely because the arguments can contain personal data. No connector tool can read these records back.
Section B: API / LMS integration capability matrix
Current status of broader API and LMS integration. Where a capability does not exist it is stated explicitly.
| Item | Status | Notes |
|---|---|---|
| API reference availability | Partial | The MCP connector (Section A) is the current programmatic interface, with a documented tool catalogue. A separate general-purpose REST API reference is Not currently available. |
| Authentication | Available | OAuth 2.1 with PKCE and bearer tokens, for the MCP connector (Section A). |
| Rate limits | Partial | Pairing attempts are rate-limited and paid features are gated. Published per-tool rate limits are Not currently available. |
| User provisioning | Not currently supported | The connector provisions its own workspace account. Bulk or directory-based user provisioning (for example SCIM) is Not currently supported. |
| Roles and permissions | Not currently supported | Access is per-account isolation plus paid gating under a single connector scope. A fine-grained roles and permissions API is Not currently supported. |
| SSO | Not currently supported | |
| Learner-level data read / export | Not currently available | The connector cannot read end-user conversations, and the analytics tool is not yet functional. Learner-level export is Not currently available. |
| Conversation count (per learner) | Not currently available | |
| Conversation duration | Not currently available | |
| Agent / topic per learner | Not currently available | The connector exposes the customer's own agent configuration, not per-learner activity. |
| Assessment / check result | Not currently available | |
| Webhooks | Not currently supported | |
| Polling | Not currently available | There is no learner-data polling endpoint. |
| Expected event latency | Not applicable | No event stream is exposed today. |
| Available event payloads | Not applicable | No event payloads are exposed today. |
| xAPI | Not currently supported | |
| LTI 1.3 | Not currently supported | |
| Grade passback | Not currently supported | |
| Export formats | Not currently available | No structured learner-data export is offered today. |
| Audit logs | Partial | Connector tool calls are logged internally and are accessible to Magif superadministrators. A customer-facing audit-log export is Not currently available. |
| Moodle integration | Not currently supported | |
| Other LMS integration experience | Not applicable | There is no prior LMS integration deployment to report. |
API reference availability
PartialThe MCP connector (Section A) is the current programmatic interface, with a documented tool catalogue. A separate general-purpose REST API reference is Not currently available.
Authentication
AvailableOAuth 2.1 with PKCE and bearer tokens, for the MCP connector (Section A).
Rate limits
PartialPairing attempts are rate-limited and paid features are gated. Published per-tool rate limits are Not currently available.
User provisioning
Not currently supportedThe connector provisions its own workspace account. Bulk or directory-based user provisioning (for example SCIM) is Not currently supported.
Roles and permissions
Not currently supportedAccess is per-account isolation plus paid gating under a single connector scope. A fine-grained roles and permissions API is Not currently supported.
SSO
Not currently supportedLearner-level data read / export
Not currently availableThe connector cannot read end-user conversations, and the analytics tool is not yet functional. Learner-level export is Not currently available.
Conversation count (per learner)
Not currently availableConversation duration
Not currently availableAgent / topic per learner
Not currently availableThe connector exposes the customer's own agent configuration, not per-learner activity.
Assessment / check result
Not currently availableWebhooks
Not currently supportedPolling
Not currently availableThere is no learner-data polling endpoint.
Expected event latency
Not applicableNo event stream is exposed today.
Available event payloads
Not applicableNo event payloads are exposed today.
xAPI
Not currently supportedLTI 1.3
Not currently supportedGrade passback
Not currently supportedExport formats
Not currently availableNo structured learner-data export is offered today.
Audit logs
PartialConnector tool calls are logged internally and are accessible to Magif superadministrators. A customer-facing audit-log export is Not currently available.
Moodle integration
Not currently supportedOther LMS integration experience
Not applicableThere is no prior LMS integration deployment to report.