---
title: "Connect your agent (MCP)"
description: "Use Jsonify from ChatGPT, Claude, Copilot, Cursor or any MCP assistant. Read datasets, start runs, and ask Jason for work without leaving the tool you are in."
url: "https://www.jsonify.com/docs/integrations/mcp"
---

[Documentation](https://www.jsonify.com/docs/) Filter pages

## Getting started

*   [What is Jsonify?](https://www.jsonify.com/docs/)
*   [How pipelines work](https://www.jsonify.com/docs/how-jsonify-works)
*   [Your first pipeline](https://www.jsonify.com/docs/getting-started/first-pipeline)
*   [Workspaces](https://www.jsonify.com/docs/getting-started/workspaces)
*   [Glossary](https://www.jsonify.com/docs/getting-started/glossary)

## Tutorials

*   [Track the Hacker News front page](https://www.jsonify.com/docs/tutorials/hacker-news)
*   [Monitor prices across retailers](https://www.jsonify.com/docs/tutorials/price-monitoring)
*   [Get a Slack alert when a price drops](https://www.jsonify.com/docs/tutorials/slack-price-alert)
*   [Use a dataset from your agent](https://www.jsonify.com/docs/tutorials/agent-query)

## Jason

*   [Chatting with Jason](https://www.jsonify.com/docs/jason/chat)
*   [Changing a pipeline](https://www.jsonify.com/docs/jason/changing-a-pipeline)
*   [Agents, workers and repairs](https://www.jsonify.com/docs/data-agents)

## Pipelines

*   [The pipeline page](https://www.jsonify.com/docs/pipelines/overview)
*   [Statement of work and steps](https://www.jsonify.com/docs/pipelines/statement-of-work)
*   [Inputs and parameters](https://www.jsonify.com/docs/pipelines/inputs)
*   [Settings reference](https://www.jsonify.com/docs/pipelines/settings)
*   [Versions and changelog](https://www.jsonify.com/docs/pipelines/versions)

## Runs

*   [Running a pipeline](https://www.jsonify.com/docs/runs/running)
*   [Scheduling](https://www.jsonify.com/docs/runs/scheduling)
*   [Run detail](https://www.jsonify.com/docs/runs/run-detail)
*   [Run lifecycle](https://www.jsonify.com/docs/runs/lifecycle)
*   [Verification and repair](https://www.jsonify.com/docs/runs/verification-and-repair)

## Datasets

*   [Dataset pages](https://www.jsonify.com/docs/datasets/overview)
*   [Versions](https://www.jsonify.com/docs/datasets/versions)
*   [Query and export](https://www.jsonify.com/docs/datasets/query-and-export)
*   [Row detail and provenance](https://www.jsonify.com/docs/datasets/provenance)
*   [Sharing](https://www.jsonify.com/docs/datasets/sharing)

## Analytics

*   [Dashboards](https://www.jsonify.com/docs/analytics/dashboards)
*   [Newsletters](https://www.jsonify.com/docs/analytics/newsletters)

## Alerts

*   [Alert rules](https://www.jsonify.com/docs/alerts/rules)
*   [Alert history and notifications](https://www.jsonify.com/docs/alerts/history)

## Integrations

*   [Integrations overview](https://www.jsonify.com/docs/integrations/overview)
*   [Slack and email](https://www.jsonify.com/docs/integrations/slack-and-email)
*   [Sheets, warehouses and webhooks](https://www.jsonify.com/docs/integrations/destinations)
*   [Ingest and serve API](https://www.jsonify.com/docs/integrations/api)
*   [Connect your agent (MCP)](https://www.jsonify.com/docs/integrations/mcp)
*   [Command line](https://www.jsonify.com/docs/integrations/cli)

## Workspace and account

*   [Workspace settings](https://www.jsonify.com/docs/workspace/settings)
*   [Team](https://www.jsonify.com/docs/workspace/team)
*   [Billing and usage](https://www.jsonify.com/docs/workspace/billing)
*   [Data retention](https://www.jsonify.com/docs/workspace/data-retention)

## Plans

*   [Radar or Benchmark? Enterprise](https://www.jsonify.com/docs/radar-vs-benchmark)
*   [Row pricing and managed service](https://www.jsonify.com/docs/pricing-model)

## More

*   [Connect your agent](https://www.jsonify.com/connect)
*   [Pricing](https://www.jsonify.com/pricing)
*   [Contact support](https://www.jsonify.com/contact)

[Docs](https://www.jsonify.com/docs/)/Integrations

# Connect your agent (MCP)

Use Jsonify from ChatGPT, Claude, Copilot, Cursor or any MCP assistant. Read datasets, start runs, and ask Jason for work without leaving the tool you are in.

Jsonify is an MCP server. Connect it to the assistant you already use and that assistant can read your datasets, inspect pipelines and runs, start a run, and hand Jason a brief, all through the same account and the same workspaces you see in the browser.

Server URL

`https://factory.jsonify.com/mcp`

Transport

Streamable HTTP

Sign-in

OAuth, with your Jsonify account

Scope

The organisations you authorise

1.  **Add the server**one URL, in your assistant
2.  **Sign in**your Jsonify account
3.  **Ask**in your own words
4.  **Jason works**builds, changes, answers
5.  **Read the result**rows come back to the chat

Once connected, your assistant is another way into the same workspace.

## What you can do from an assistant

*   **Read data.** List datasets, look at a dataset’s columns and versions, and pull rows with a filter. The assistant can then reason about them, chart them, or fold them into whatever it is doing.
*   **Inspect pipelines and runs.** See what a pipeline does, its active version and schedule, and how a run went: status, duration, and what it published.
*   **Start a run.** Run an activated pipeline with a row cap.
*   **Ask Jason for work.** Build a new pipeline, change an existing one, or ask “why did last night’s run fail?” Jason works in a normal Jsonify chat; the assistant relays questions and the outcome.
*   **Ask questions.** “Which retailer raised prices most this week?” becomes a dataset read and an answer, in your assistant.

What it cannot do: run SQL, upload files, change schedules or settings, or edit the pipeline itself. Those stay in Jsonify, or go through Jason as a request.

## Connect your client

Every client needs the same two things: the server URL, and a sign-in with your Jsonify account. Pick your client.

### ChatGPT

1.  **Turn on Developer mode.** Open **Settings → Security and login** and enable **Developer mode**.
2.  **Create the connection.** Open **Plugins** and select **+**. Name it **Jsonify**, add a short description, and paste `https://factory.jsonify.com/mcp`.
3.  **Use OAuth.** Choose **OAuth** for authentication, select **Create**, and sign in to your Jsonify account when asked.
4.  **Enable it in a chat.** Start a new chat, select **Jsonify** from **\+ → More**, and describe the dataset you want.

If Developer mode is unavailable, your plan or workspace settings may restrict custom connections.

### Claude

**Claude.ai and the desktop app:**

1.  **Open connectors.** Go to **Settings → Connectors**.
2.  **Add a custom connector.** Select **\+ → Add custom connector**. Name it **Jsonify** and paste `https://factory.jsonify.com/mcp`.
3.  **Connect.** Select **Add**, then **Connect**, and sign in to Jsonify when asked.
4.  **Enable it in a chat.** In a new chat, open **\+ → Connectors** and enable **Jsonify**. Then describe the data you need.

On a Team or Enterprise plan, your workspace owner may need to add the connector first.

**Claude Code**, in a terminal:

```
claude mcp add --transport http jsonify https://factory.jsonify.com/mcp
claude mcp login jsonify
```

The second command opens a browser to sign in. Choose the organisation the assistant should have access to.

### Copilot and Teams

Microsoft 365 Copilot reaches Jsonify through an agent built in Copilot Studio.

1.  **Add the tool.** Open your agent in Copilot Studio. Go to **Tools → Add a tool → New tool → Model Context Protocol**.
2.  **Point it at Jsonify.** Name it **Jsonify**, paste `https://factory.jsonify.com/mcp`, and configure **OAuth 2.0**. Create a connection, sign in, and add the tool to your agent.
3.  **Publish.** Test the agent, then publish it. Open **Channels → Teams and Microsoft 365 Copilot**, enable **Make agent available in Microsoft 365 Copilot**, then select **Add channel**.
4.  **Install in Teams.** Choose **See agent in Teams → Add**. In Microsoft 365 Copilot, type **@**, select your agent and ask your question.

Requires Copilot Studio access. Your administrator may need to configure OAuth or approve the agent.

### Codex

```
codex mcp add jsonify --url https://factory.jsonify.com/mcp
codex mcp login jsonify
```

### Cursor

In Cursor’s MCP settings, add a new server named **Jsonify** of type **Streamable HTTP** with the URL `https://factory.jsonify.com/mcp`, then complete the sign-in when Cursor opens the browser. The equivalent configuration entry is:

```
{
  "mcpServers": {
    "jsonify": { "url": "https://factory.jsonify.com/mcp" }
  }
}
```

### Other assistants

In your assistant’s connections settings, add a remote MCP server named **Jsonify**. Use **Streamable HTTP** and **OAuth**, then sign in to Jsonify. The assistant must support remote MCP servers with OAuth; API-key-only clients cannot connect.

> The **Add integration** catalogue in Jsonify has an **Assistant connection** card that shows these same commands for Claude Code, Codex or another assistant, and a **Check connection** button that confirms the sign-in worked. It is the quickest way to verify a new connection.

## The organisation requirement

An assistant connection is a grant on your account, made through your Jsonify sign-in, for one or more organisations. Three consequences:

*   **You need a Jsonify account with an organisation.** Sign up in the browser first if you have not; the connection then sees every workspace in the organisations you authorise, subject to your membership at the time of each request. Leave an organisation and the assistant loses it too.
*   **Brand-new users can start from the assistant.** If you sign in during the connection without an organisation yet, the assistant can still describe what you want. Jason prepares a brief, and the assistant gives you a link to review it, accept the terms, create your organisation and start the first build in the browser. Reconnect afterwards so the assistant is authorised for the new organisation.

### Starting from an assistant without an account

If you connect before you have a Jsonify organisation, the flow looks like this:

1.  **Describe what you want** in the assistant, as you would to Jason. The assistant starts a preparation and relays Jason’s questions.
2.  **Open the link the assistant gives you.** It shows the brief Jason prepared and the free allowance, asks you to accept the terms, creates your organisation, and starts the first build in the browser.
3.  **Reconnect the assistant.** Sign in through the connection again so it is authorised for the new organisation. The assistant picks up the same workspace and chat rather than starting another build.
4.  **Review and accept.** When the first run has published, look at the dataset. Telling the assistant you are happy marks the workspace live, the same as **Open workspace** in the browser.

A preparation waits up to 24 hours for you to open the link; after that, start again.

## What the assistant can call

Assistants choose tools on their own from your request; you do not name them. This table is for knowing what is possible and for reading the assistant’s activity log.

| Tool | What it lets the assistant do |
| --- | --- |
| get_context | See who you are, which organisation is authorised, and the workspaces available. Called first in most conversations |
| list_pipelines | List a workspace’s pipelines with their status, active version and schedule |
| get_pipeline | Read one pipeline: what it collects, its parameters, outputs and latest run |
| list_datasets | List a workspace’s datasets with row counts and versions |
| get_dataset | Read one dataset’s worksheets, columns and version history |
| query_dataset | Pull rows from one dataset version, with column selection and equality filters, a page at a time |
| get_run | Read one run: status, timing, and up to twenty published outputs |
| run_pipeline | Start an activated pipeline with a row cap. Repeating the same request does not start a second run |
| list_conversations | Find earlier chats with Jason in a workspace |
| request_work | Send Jason a brief: build a pipeline, change one, diagnose a run, or answer a question. Returns the chat link |
| get_conversation | Read what Jason has said and done in a chat since the last read |
| cancel_work | Stop the request the assistant sent, and only that one |
| start_preparation | For a new user with no organisation: begin a preparation Jason can work on before sign-up |
| build_workspace | After sign-up, recover the workspace and chat the preparation created, so the assistant can keep following it |
| accept_workspace | Mark a newly built workspace as reviewed and live, the same as Open workspace in the browser |

Reads are bounded so a chat never drowns: fifty items per page for lists, one hundred rows and fifty columns per dataset read, twenty filters, and a pinned dataset version so paging is consistent. The assistant pages when it needs more.

`run_pipeline` starts existing, activated pipelines only, always with a row cap; it does not change parameters or schedules. For anything that changes the pipeline, the assistant uses `request_work`, and the change goes through Jason’s normal build, review and activation.

## Examples

> Show me the Live product offers dataset in Market Radar. Which five products had the largest price change since the previous version, and who sells them?

The assistant reads the dataset, pulls the rows it needs, and answers in the chat. Nothing changes in Jsonify.

> Run the price promotion tracking pipeline, capped at 200 rows, and tell me when it finishes and how many rows it published.

The assistant starts the run and reads it back when it completes. The run appears on the pipeline’s runs list like any other.

> Ask Jason to add a “promotion ends” column to the price promotion tracking pipeline, using the end date shown on each retailer’s offer badge. Let me know if it asks anything.

The assistant sends the brief to Jason and gives you the chat link. If Jason has a question, the assistant relays it and you answer in the same conversation. When the change is reviewed and activated, the assistant tells you the new version.

## Chats started from an assistant

Every request an assistant makes through `request_work` is a real chat in the workspace. It appears in the chat history with the assistant’s name and icon as the source, so a teammate looking at the history can see what was asked from where. You can open it in the browser at any time, add to it, or stop it. Closing the assistant does not stop work already handed to Jason.

## Managing connections

Assistant connections are listed at the bottom of the **Integrations** page, in their own section and under the **Assistant connections** category filter. Each card shows the assistant’s name, “Connected” or “Access blocked”, and a menu with **Connection details** and **Disconnect**.

![The Assistant connections section of the Integrations page with a connected assistant card](/assets/images/product/integrations-assistant-list.png)

Connections belong to your account, so this section shows the same cards in every workspace.

**Connection details** shows the facts: the owner (your account), the access (the organisations you authorise, subject to your current membership; not limited to the workspace you have open), the server URL and the client identifier.

**Disconnect** removes the assistant’s authorisation for your account across all organisations. Tokens it already holds stop working straight away. Chats it started and work Jason already accepted remain; stop active work from its chat if you need to.

*   Connections belong to you, not the workspace. They cannot be moved into folders or bulk-deleted with workspace integrations; open the card to disconnect.
*   “Access blocked” means Jsonify has cut the connection off but the assistant has not yet released its grant. Press **Disconnect** again to finish.

> An assistant connection carries your whole membership. If you share a computer with someone, disconnect before you hand it over.

## Troubleshooting

| What you see | What it means |
| --- | --- |
| The assistant says Jsonify needs setup, or SETUP_REQUIRED | Your sign-in is valid but not yet tied to an organisation. Finish sign-up in the browser, then reconnect |
| “Assistant connections require a WorkOS sign-in” in the connect dialog | Your session was not signed in through Jsonify’s sign-in. Sign out and back in, then try again |
| Check connection says “No matching connection on the first page yet” | The sign-in in the assistant has not completed. Finish it, then check again |
| Check connection says “Multiple connections found” | More than one assistant with a similar name is connected. Close the dialog and find yours in the list |
| The assistant can read one workspace but not another | The other workspace belongs to an organisation you did not authorise, or are no longer a member of. Reconnect and authorise it |
| “Access blocked” on a connection card | Jsonify has cut the connection off. Press Disconnect to finish removing it |

## What’s next

[**Tutorial: query a dataset from your agent**

Connect, ask a question, get rows.

](https://www.jsonify.com/docs/tutorials/agent-query)[**Chatting with Jason**

What happens in the chat the assistant opens.

](https://www.jsonify.com/docs/jason/chat)[**Command line**

The same access from a terminal or a job, with a key instead of OAuth.

](https://www.jsonify.com/docs/integrations/cli)[**Team**

Membership decides what an assistant can reach.

](https://www.jsonify.com/docs/workspace/team)

[PreviousIngest and serve API](https://www.jsonify.com/docs/integrations/api) [NextCommand line](https://www.jsonify.com/docs/integrations/cli)

Something missing or wrong? [Tell us](https://www.jsonify.com/contact).[Build it →](https://factory.jsonify.com/setup)

## On this page
