@assemblyline-agents/attio 5.0.9 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -33,23 +33,20 @@ assembly-line add attio agent
33
33
  ```
34
34
 
35
35
  The default connection is user-scoped: each person authorizes their own Attio
36
- account, and Attio enforces that person's workspace permissions.
37
-
38
- ```ts
39
- import { defineAttioConnection } from "@assemblyline-agents/attio";
40
-
41
- export default defineAttioConnection({ access: "approval-required" });
42
- ```
36
+ account, and Attio enforces that person's workspace permissions. Gate named
37
+ write actions through `plugins.attio.connections.attio.approval`.
43
38
 
44
39
  When an agent should operate as one company service identity, authorize a
45
40
  dedicated Attio member once through the protected operator connection flow and
46
41
  store the grant at workspace scope:
47
42
 
48
- ```ts
49
- export default defineAttioConnection({
50
- subject: "workspace",
51
- access: "approval-required"
52
- });
43
+ ```yaml
44
+ capabilities:
45
+ attio:
46
+ connections:
47
+ attio:
48
+ subject: workspace
49
+ required: true
53
50
  ```
54
51
 
55
52
  Do not let an arbitrary end user establish that shared grant. Preauthorize the
@@ -0,0 +1,132 @@
1
+ {
2
+ "kind": "attio",
3
+ "role": "connection",
4
+ "packageName": "@assemblyline-agents/attio",
5
+ "helper": "defineAttioConnection",
6
+ "protocol": "mcp",
7
+ "transport": "http",
8
+ "provider": "attio",
9
+ "description": "Attio CRM records, lists, notes, tasks, comments, email and meeting intelligence, and reporting through Attio's official hosted MCP server.",
10
+ "defaultUrl": "https://mcp.attio.com/mcp",
11
+ "urlEnv": "ATTIO_MCP_URL",
12
+ "capabilities": [
13
+ "mcp",
14
+ "oauth",
15
+ "pkce",
16
+ "refresh-token",
17
+ "live-tools",
18
+ "streamable-http",
19
+ "crm",
20
+ "semantic-search",
21
+ "reporting"
22
+ ],
23
+ "scopes": [
24
+ "mcp",
25
+ "offline_access",
26
+ "openid"
27
+ ],
28
+ "subject": "user",
29
+ "tools": {
30
+ "allow": [
31
+ "search-records",
32
+ "list-records",
33
+ "get-records-by-ids",
34
+ "create-record",
35
+ "upsert-record",
36
+ "update-record",
37
+ "merge-records",
38
+ "list-attribute-definitions",
39
+ "list-lists",
40
+ "list-list-attribute-definitions",
41
+ "list-records-in-list",
42
+ "add-record-to-list",
43
+ "update-list",
44
+ "update-list-entry-by-id",
45
+ "update-list-entry-by-record-id",
46
+ "create-comment",
47
+ "list-comments",
48
+ "list-comment-replies",
49
+ "delete-comment",
50
+ "create-note",
51
+ "search-notes-by-metadata",
52
+ "semantic-search-notes",
53
+ "get-note-body",
54
+ "update-note",
55
+ "list-tasks",
56
+ "create-task",
57
+ "update-task",
58
+ "search-meetings",
59
+ "search-call-recordings-by-metadata",
60
+ "semantic-search-call-recordings",
61
+ "get-call-recording",
62
+ "search-emails-by-metadata",
63
+ "semantic-search-emails",
64
+ "get-email-content",
65
+ "list-workspace-members",
66
+ "list-workspace-teams",
67
+ "whoami",
68
+ "run-basic-report",
69
+ "query-particle-sql"
70
+ ]
71
+ },
72
+ "readToolPatterns": [
73
+ "search-records",
74
+ "list-records",
75
+ "get-records-by-ids",
76
+ "list-attribute-definitions",
77
+ "list-lists",
78
+ "list-list-attribute-definitions",
79
+ "list-records-in-list",
80
+ "list-comments",
81
+ "list-comment-replies",
82
+ "search-notes-by-metadata",
83
+ "semantic-search-notes",
84
+ "get-note-body",
85
+ "list-tasks",
86
+ "search-meetings",
87
+ "search-call-recordings-by-metadata",
88
+ "semantic-search-call-recordings",
89
+ "get-call-recording",
90
+ "search-emails-by-metadata",
91
+ "semantic-search-emails",
92
+ "get-email-content",
93
+ "list-workspace-members",
94
+ "list-workspace-teams",
95
+ "whoami",
96
+ "run-basic-report",
97
+ "query-particle-sql"
98
+ ],
99
+ "writeToolPatterns": [
100
+ "create-record",
101
+ "upsert-record",
102
+ "update-record",
103
+ "merge-records",
104
+ "add-record-to-list",
105
+ "update-list",
106
+ "update-list-entry-by-id",
107
+ "update-list-entry-by-record-id",
108
+ "create-comment",
109
+ "delete-comment",
110
+ "create-note",
111
+ "update-note",
112
+ "create-task",
113
+ "update-task"
114
+ ],
115
+ "setup": [
116
+ {
117
+ "kind": "connection",
118
+ "name": "attio-mcp-oauth",
119
+ "required": true,
120
+ "message": "Register a public OAuth client at https://app.attio.com/oauth/register for the Assembly Line connection callback, set ATTIO_MCP_CLIENT_ID, then let each user authorize Attio. For a shared company agent, explicitly set subject: \"workspace\" and preauthorize a dedicated Attio member through the protected operator connection flow."
121
+ }
122
+ ],
123
+ "requiredConfig": [
124
+ "ATTIO_MCP_CLIENT_ID"
125
+ ],
126
+ "optionalConfig": [
127
+ "ATTIO_MCP_URL",
128
+ "ATTIO_MCP_REDIRECT_URI"
129
+ ],
130
+ "requiredCredentials": [],
131
+ "optionalCredentials": []
132
+ }
@@ -0,0 +1,9 @@
1
+ module.exports = {
2
+ "connections": {
3
+ "attio": {
4
+ "contract": "./ai.assemblyline/connections/attio.json",
5
+ "definition": "@assemblyline-agents/attio",
6
+ "factory": "defineAttioConnection"
7
+ }
8
+ }
9
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAChC,MAAM,2BAA2B,CAAC;AAInC,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC;IACtF,IAAI,CAAC,EAAE,wBAAwB,GAAG,KAAK,CAAC;IACxC,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,sBAA2B,0IAYzE;AAED,eAAO,MAAM,kBAAkB,kDAA0C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAChC,MAAM,2BAA2B,CAAC;AAInC,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC;IACtF,IAAI,CAAC,EAAE,wBAAwB,GAAG,KAAK,CAAC;IACxC,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,sBAA2B,0IAYzE;AAED,eAAO,MAAM,kBAAkB,kDAA0C,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
- import { connectionPluginMetadata, defineMcpPluginConnection, defineOAuthAuthorization, definePlugin } from "@assemblyline-agents/core";
2
- const PLUGIN = connectionPluginMetadata("attio");
1
+ import connectionContract_attio from "../ai.assemblyline/connections/attio.json" with { type: "json" };
2
+ import { defineMcpPluginConnection, defineOAuthAuthorization, definePlugin } from "@assemblyline-agents/core";
3
+ const PLUGIN = connectionContract_attio;
3
4
  export function defineAttioConnection(options = {}) {
4
5
  const { auth, clientId, redirectUri, ...connection } = options;
5
6
  return defineMcpPluginConnection(PLUGIN, {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,YAAY,EAGb,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,CAAE,CAAC;AAUlD,MAAM,UAAU,qBAAqB,CAAC,UAAkC,EAAE;IACxE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,CAAC;IAC/D,OAAO,yBAAyB,CAAC,MAAM,EAAE;QACvC,GAAG,UAAU;QACb,IAAI,EAAE,IAAI,KAAK,KAAK;YAClB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC;gBACjB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtD,CAAC;KACP,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE1E,SAAS,UAAU,CAAC,KAInB;IACC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;QAC9E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC;QACvF,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,UAAW,CAAC;QAC5F,OAAO,wBAAwB,CAAC;YAC9B,WAAW,EAAE,OAAO;YACpB,YAAY,EAAE,sCAAsC;YACpD,QAAQ,EAAE,kCAAkC;YAC5C,QAAQ;YACR,MAAM,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,CAAC;YAC3C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,mBAAmB,EAAE,EAAE,QAAQ,EAAE;YACjC,WAAW,EAAE,EAAE,QAAQ,EAAE;YACzB,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,wBAAwB,MAAM,2CAA2C,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACvG,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,YAAY,EAGb,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,GAAG,wBAA+D,CAAC;AAU/E,MAAM,UAAU,qBAAqB,CAAC,UAAkC,EAAE;IACxE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,CAAC;IAC/D,OAAO,yBAAyB,CAAC,MAAM,EAAE;QACvC,GAAG,UAAU;QACb,IAAI,EAAE,IAAI,KAAK,KAAK;YAClB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC;gBACjB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtD,CAAC;KACP,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE1E,SAAS,UAAU,CAAC,KAInB;IACC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;QAC9E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC;QACvF,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,UAAW,CAAC;QAC5F,OAAO,wBAAwB,CAAC;YAC9B,WAAW,EAAE,OAAO;YACpB,YAAY,EAAE,sCAAsC;YACpD,QAAQ,EAAE,kCAAkC;YAC5C,QAAQ;YACR,MAAM,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,CAAC;YAC3C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,mBAAmB,EAAE,EAAE,QAAQ,EAAE;YACjC,WAAW,EAAE,EAAE,QAAQ,EAAE;YACzB,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@assemblyline-agents/attio",
3
- "version": "5.0.9",
3
+ "version": "6.0.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -9,11 +9,13 @@
9
9
  }
10
10
  },
11
11
  "dependencies": {
12
- "@assemblyline-agents/core": "5.0.9"
12
+ "@assemblyline-agents/core": "6.0.0"
13
13
  },
14
14
  "description": "Official Assembly Line connection plugin for Attio's hosted MCP server.",
15
15
  "files": [
16
- "dist"
16
+ "dist",
17
+ "plugin.json",
18
+ "ai.assemblyline"
17
19
  ],
18
20
  "engines": {
19
21
  "node": ">=22.19.0"
package/plugin.json ADDED
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
+ "name": "attio",
4
+ "version": "6.0.0",
5
+ "description": "Official Assembly Line connection plugin for Attio's hosted MCP server.",
6
+ "extensions": {
7
+ "ai.assemblyline": {
8
+ "entry": "./ai.assemblyline/index.cjs"
9
+ }
10
+ }
11
+ }