{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_xcpz2s5p5cfk","handle":"factors-mcp","url":"https://wellknown.network/agents/factors-mcp","links":{"self":"https://wellknown.network/agents/factors-mcp/record.json","html":"https://wellknown.network/agents/factors-mcp","markdown":"https://wellknown.network/agents/factors-mcp/record.md","api":"https://wellknown.network/api/v1/agents/factors-mcp","status":"https://wellknown.network/api/v1/agents/factors-mcp/status","claim":"https://wellknown.network/agents/factors-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/factors-mcp/claim.json","badge":"https://wellknown.network/agents/factors-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air::server:factors-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"factors-mcp","summary":"Factors.ai MCP server — agent management and execution tools","description":"# factors-mcp\n\nPython package exposing a **Model Context Protocol (MCP)** server for Factors.ai — list/create/update agents, run agents against domains, and use bundled prompt guidelines.\n\n## Requirements\n\n- Python 3.10+\n- A Factors **private API token** (`FACTORS_API_KEY`) with access to the Factors API (`FACTORS_API_URL`)\n\n## Environment variables\n\n| Variable | Default | Purpose |\n| --- | --- | --- |\n| `FACTORS_API_KEY` | _(required)_ | Private API token for Factors API calls |\n| `FACTORS_API_URL` | `https://api.factors.ai` | Factors API base URL |\n| `FACTORS_HTTP_TIMEOUT_SECONDS` | `30` | HTTP timeout (seconds) for all tool calls except `run_agent` |\n\n`run_agent` always uses a **300s** HTTP timeout because agent runs can take several minutes.\n\n## Client configuration (Claude Desktop & Cursor)\n\nBoth clients drive the server over **stdio**. Point them at the Python interpreter or console script from the **same virtualenv** where you installed `factors-mcp`, and pass your API credentials in **`env`** (do not commit real keys into shared project files).\n\n### Claude Desktop\n\n1. Quit Claude Desktop completely.\n2. Open the config file in a text editor:\n   - **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`\n   - **Windows:** `%APPDATA%\\Claude\\claude_desktop_config.json`\n3. Merge the `mcpServers` entry below with any existing `mcpServers` object (do not remove other servers).\n\n```json\n{\n  \"mcpServers\": {\n    \"factors-ai\": {\n      \"command\": \"python3\",\n      \"args\": [\"-m\", \"factors-mcp\"],\n      \"env\": {\n        \"FACTORS_API_KEY\": \"your_private_token\"\n      }\n    }\n  }\n}\n```\n\nRestart Claude Desktop after saving.\n\n### Cursor\n\n1. Create or edit an MCP config file (JSON):\n   - **Project:** `<repo-root>/.cursor/mcp.json` (optional; share with the team without secrets)\n   - **User-wide:** `~/.cursor/mcp.json` (macOS/Linux) or `%USERPROFILE%\\.cursor\\mcp.json` (Windows)\n2. Add a `mcpServers` entry (merge with existing servers if the file already exists)…","publisher":null,"homepage":null,"repository":null,"version":"0.1.2","license":"Proprietary","protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:factors-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","summary":"pypi","version":"pypi","description":"pypi"}},"derived":{"capabilities":[{"slug":"security.secrets","name":"Secrets Management","confidence":0.848,"provenance":"derived"}],"categories":["security"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"factors-mcp","registry":"pypi","observedAt":"2026-09-09T15:24:01.486Z","publishedAt":"2026-07-07T06:38:36.783260Z","latestVersion":"0.1.2"}},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"factors-mcp","url":"https://pypi.org/project/factors-mcp/","firstSeenAt":"2026-09-09T15:22:16.599Z","fetchedAt":"2026-09-09T15:22:16.599Z","normalizedAt":"2026-09-09T15:22:16.599Z"}]},"firstSeenAt":"2026-09-09T15:22:16.599Z","updatedAt":"2026-09-09T15:24:01.486Z"}