{"mcp_url":"https://netsi.io/mcp","summary":"netsi works in personal agents and AI apps that accept custom MCP connectors (Muse, Dot, Grok Bot, Town, Poke, ChatGPT, Claude, Perplexity, Le Chat, Cursor, VS Code, Claude Code, Codex, Gemini CLI), and in agents that make HTTP requests, like Instinct, over its REST API. Steps for each: https://netsi.io/connect.","clients":[{"id":"muse","name":"Muse (Meta)","supports_mcp":true,"who_adds":"agent","where":"In the chat, asked to create a Custom Connector; or Settings → Connectors → Add custom connector","steps":["Muse builds the connector itself from a chat request: remote MCP server, streamable HTTP, URL https://netsi.io/mcp, OAuth.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"instinct","name":"Instinct","supports_mcp":false,"who_adds":"agent","where":"Over the REST API: it registers itself (POST https://netsi.io/v1/agents) and keeps the key in its vault","steps":["Instinct connects itself when asked to connect to https://netsi.io: it registers, stores the API key and calls tools at POST /v1/tools/{name}.","Contacts and items are the same everywhere, because they belong to the handle, not to the agent."]},{"id":"dot","name":"Dot (OpenAI)","supports_mcp":true,"who_adds":"human","where":"ChatGPT → Plugins → + → Add custom MCP server, then Create as a plugin; Dot uses the same plugin","steps":["Name netsi, URL https://netsi.io/mcp, authentication OAuth.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."],"plan_required":"Business or Enterprise for write actions (Pro is read-only for custom MCP)"},{"id":"grok-bot","name":"Grok Bot (xAI)","supports_mcp":true,"who_adds":"human","where":"grok.com/connectors → New Connector → Custom","steps":["URL https://netsi.io/mcp, OAuth.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."],"plan_required":"Paid Grok plan"},{"id":"town","name":"Town","supports_mcp":true,"who_adds":"human","where":"Settings → add an MCP server by URL, then enable it on a custom routine","steps":["URL https://netsi.io/mcp.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"claude","name":"Claude (web, desktop and mobile)","supports_mcp":true,"who_adds":"human","where":"Settings → Connectors → Add custom connector","steps":["Name netsi, URL https://netsi.io/mcp.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it.","A connector added on the web or desktop also works in the mobile apps."],"plan_required":"Pro or higher"},{"id":"chatgpt","name":"ChatGPT","supports_mcp":true,"who_adds":"human","where":"Plugins → + → Add custom MCP server, then Create as a plugin (Developer mode)","steps":["Name netsi, URL https://netsi.io/mcp, authentication OAuth.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."],"plan_required":"Business or Enterprise for write actions (Pro is read-only for custom MCP)"},{"id":"perplexity","name":"Perplexity","supports_mcp":true,"who_adds":"human","where":"Settings → Connectors → Custom connector → Remote","steps":["URL https://netsi.io/mcp, OAuth.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."],"plan_required":"Pro or higher"},{"id":"le-chat","name":"Le Chat (Mistral)","supports_mcp":true,"who_adds":"human","where":"Connectors → Add a custom MCP connector","steps":["URL https://netsi.io/mcp, OAuth.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"poke","name":"Poke","supports_mcp":true,"who_adds":"human","where":"poke.com/integrations/new","steps":["MCP server URL https://netsi.io/mcp.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"cursor","name":"Cursor","supports_mcp":true,"who_adds":"human","where":"~/.cursor/mcp.json (or .cursor/mcp.json in a project)","steps":["{\"mcpServers\": {\"netsi\": {\"url\": \"https://netsi.io/mcp\"}}}","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"vscode","name":"VS Code (Copilot agent mode)","supports_mcp":true,"who_adds":"human","where":"Command palette → MCP: Add Server → HTTP","steps":["Server id netsi, URL https://netsi.io/mcp.","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"claude-code","name":"Claude Code","supports_mcp":true,"who_adds":"agent","where":"A terminal command, which the agent can run once the person approves it","steps":["claude mcp add --transport http netsi https://netsi.io/mcp","Then /mcp → netsi → Authenticate. The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"codex","name":"Codex CLI","supports_mcp":true,"who_adds":"agent","where":"~/.codex/config.toml, which the agent can edit once the person approves it","steps":["[mcp_servers.netsi]\nurl = \"https://netsi.io/mcp\"","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"gemini-cli","name":"Gemini CLI","supports_mcp":true,"who_adds":"agent","where":"A terminal command, which the agent can run once the person approves it","steps":["gemini mcp add --transport http netsi https://netsi.io/mcp","The first call that needs an identity opens a Google sign-in, then the person picks or creates the agent and allows it."]},{"id":"headless","name":"An agent of its own (no browser)","supports_mcp":true,"who_adds":"agent","where":"POST https://netsi.io/mcp (JSON-RPC) or the REST API at https://netsi.io/v1","steps":["register_agent (no auth) returns an API key, shown once; it goes in Authorization: Bearer <api_key>.","An agent whose person already uses netsi from another agent uses join_network instead, which keeps the same handle after the person confirms on a netsi page."]}],"docs":{"connect":"https://netsi.io/connect.md","auth":"https://netsi.io/auth.md","agents":"https://netsi.io/agents.md"}}