CompanyCam for AI agents

CompanyCam documents job sites with photos, letting field service teams track project progress and share updates with customers and coworkers. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

Project managementAPI keyMCP + RESTcompanycam.com
AUDIT LOG · COMPANYCAMPOLICY: acme-support
09:41:07 · claude · u_8f2read
companycam.list_tags
List Photo Tags✓ allowed · 212ms
09:41:08 · claude · u_8f2read
companycam.get_photo
Get Photo✓ allowed · 164ms
09:41:09 · claude · u_8f2write
companycam.create_tag
Create Photo Tag✓ approved · approved by user
EVERY COMPANYCAM CALL, ON THE RECORD
01 · USE CASES

What agents do in CompanyCam.

01

Add a photo to a project

Add a photo from a job site to a project, tagged so the team can find it later.

02

Check a project's photo history

List a project's photos to review progress before sending a customer an update.

03

Create a project task

Create a task on a project so a crew member knows what's left to do.

02 · ACTIONS

24 CompanyCam actions, graded by risk.

Every CompanyCam action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

12

Look things up. Allowed by default.

  • companycam.get_photo
    Get Photo
  • companycam.list_tags
    List Photo Tags
  • companycam.list_users
    List Users
  • companycam.get_project
    Get Project
  • companycam.list_labels
    List Project Labels
  • companycam.list_comments
    List Comments
  • companycam.list_projects
    List Projects
  • companycam.list_customers
    List Customers
  • companycam.search_projects
    Search Projects
  • companycam.list_project_tasks
    List Project Tasks
  • companycam.get_account_context
    Get Account Context
  • companycam.list_project_photos
    List Project Photos

write

12

Create and change things. Allow, or ask the user first.

  • companycam.create_tag
    Create Photo Tag
  • companycam.add_comment
    Add Comment
  • companycam.add_photo_tags
    Add Photo Tags
  • companycam.create_project
    Create Project
  • companycam.update_project
    Update Project
  • companycam.create_customer
    Create Customer
  • companycam.update_customer
    Update Customer
  • companycam.add_project_labels
    Add Project Labels
  • companycam.create_project_task
    Create Project Task
  • companycam.update_project_task
    Update Project Task
  • companycam.add_project_photo_from_url
    Add Project Photo From URL
  • companycam.set_photo_description
    Set Photo Description

destructive

0

Delete, cancel or archive. Ask first, or deny outright.

  • No destructive actions.
03 · HOW IT WORKS

CompanyCam in three steps.

  1. 01Your users connect CompanyCamThey add their CompanyCam api key on Arc0 Connect, under your brand. It goes straight into the vault.
  2. 02You set the rulesReads run, and writes like “create Photo Tag” can wait for the user to approve.
  3. 03Any agent can actYour agent calls CompanyCam through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('companycam', {
  read: 'allow',
  write: 'ask',        // create_tag
  destructive: 'deny',  
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How CompanyCam connects.

Users add their CompanyCam api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.

The same CompanyCam connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
API key
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use CompanyCam from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

CompanyCam and Arc0, answered.

Q01

Can I use CompanyCam with Claude, ChatGPT or Cursor?

Yes. Connect CompanyCam to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the CompanyCam actions you allow.

Q02

How do users connect CompanyCam?

Users add their CompanyCam api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.

Q03

Which CompanyCam actions can my agent take?

24 in total: 12 read, 12 write and 0 destructive, such as “create Photo Tag”. Your policies decide which of them each agent may call.

Q04

Can I make my agent read-only in CompanyCam?

Yes. Allow read actions and deny writes in the CompanyCam policy. Your agent can still look things up, and any write it attempts is blocked and logged.

Q05

Can my own backend call CompanyCam too?

Yes. The same CompanyCam connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug CompanyCam into your agent.

Your users connect CompanyCam once, under your brand. Your agent gets 24 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan