ΠΡΠΎΠΏΡΡΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ. ΠΠ°ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ΅ΠΌ Π·Π° 2 ΠΌΠΈΠ½ΡΡΡ.
ΠΠ°ΡΠ½ΠΈΡΠ΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π½Π° cloud.anythingmcp.com, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Oracle NetSuite ΠΎΠ΄Π½ΠΈΠΌ ΠΊΠ»ΠΈΠΊΠΎΠΌ ΠΈ Π½Π°ΠΏΡΠ°Π²ΡΡΠ΅ ΡΠ²ΠΎΠΉ ΠΠ-ΠΊΠ»ΠΈΠ΅Π½Ρ (Claude, ChatGPT, Copilot ΠΈΠ»ΠΈ Cursor) Π½Π° ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ MCP-ΡΠ½Π΄ΠΏΠΎΠΈΠ½Ρ. ΠΠ΅Π· Docker, Π±Π΅Π· git clone, Π±Π΅Π· ΠΎΠΏΡΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ΠΡΠ°ΡΠΊΠΎ
ΠΠ°ΠΉΡΠ΅ ΠΠ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Oracle NetSuite: Π²ΡΠΏΠΎΠ»Π½ΡΡΡ SuiteQL-Π·Π°ΠΏΡΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ, ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ΅, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ ΠΈ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, ΡΠΈΡΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ², ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ², Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΡ, Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΡΡΠ΅ΡΠ°, Π·Π°ΠΊΠ°Π·Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, ΡΡΠ΅ΡΠ° ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² ΠΈ Π±ΡΡ Π³Π°Π»ΡΠ΅ΡΡΠΊΠΈΠ΅ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΊΠΈ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠΈΠΏΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈ ΠΏΠΎΠ»Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΈ Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΡ ΠΎΠ΄ ΡΠ΅ΡΠ΅Π· NetSuite OAuth 2.0, ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ (sandbox) Π°ΠΊΠΊΠ°ΡΠ½Ρ.
ΠΠΎΠΏΡΠΎΠ±ΡΠΉ ΡΠΏΡΠΎΡΠΈΡΡ
ΠΡΠΈΠΌΠ΅ΡΡ ΠΏΡΠΎΠΌΠΏΡΠΎΠ² Π΄Π»Ρ Oracle NetSuite
ΠΠ»ΠΈΠΊΠ½ΠΈ ΠΏΠΎ ΠΏΡΠΎΠΌΠΏΡΡ β ΠΎΠ½ ΡΠΊΠΎΠΏΠΈΡΡΠ΅ΡΡΡ. ΠΡΡΠ°Π²Ρ Π² Claude, ChatGPT, Cursor, Gemini, Copilot ΠΈΠ»ΠΈ OpenClaw ΠΈ Π·Π°ΠΏΡΡΡΠΈ ΡΠ΅ΡΠ΅Π· ΡΡΠΎΡ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡ.
Claude β ΡΡΠΎ AI, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΈΠ±Π°ΡΡΡΡ. ΠΡΠΎΠ²Π΅ΡΡΠΉΡΠ΅ ΠΎΡΠ²Π΅ΡΡ.
π‘ ΠΠ΅Π· ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ? ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ cloud.anythingmcp.com Π½Π°ΠΏΡΡΠΌΡΡ. ΠΠΎΠΉΠ΄ΠΈΡΠ΅, Π½Π°ΠΆΠΌΠΈΡΠ΅ Connectors β Oracle NetSuite, Π²ΡΡΠ°Π²ΡΡΠ΅ ΡΡΡΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ MCP API key, ΠΈ Π³ΠΎΡΠΎΠ²ΠΎ. ΠΠ΅Π· Docker, Π±Π΅Π·
git clone, Π±Π΅Π· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°.
Oracle NetSuite
ΠΠ°ΠΉΡΠ΅ ΠΠ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Oracle NetSuite: Π²ΡΠΏΠΎΠ»Π½ΡΡΡ SuiteQL-Π·Π°ΠΏΡΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ, ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ΅, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ ΠΈ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, ΡΠΈΡΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ², ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ², Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΡ, Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΡΡΠ΅ΡΠ°, Π·Π°ΠΊΠ°Π·Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, ΡΡΠ΅ΡΠ° ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² ΠΈ Π±ΡΡ Π³Π°Π»ΡΠ΅ΡΡΠΊΠΈΠ΅ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΊΠΈ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠΈΠΏΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈ ΠΏΠΎΠ»Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΈ Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΡ ΠΎΠ΄ ΡΠ΅ΡΠ΅Π· NetSuite OAuth 2.0, ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ (sandbox) Π°ΠΊΠΊΠ°ΡΠ½Ρ.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°
ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π·Π° 20 ΠΌΠΈΠ½ΡΡ.
- ΠΠΊΠ»ΡΡΠΈΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ: Setup β Company β Enable Features. ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ SuiteCloud ΠΎΡΠΌΠ΅ΡΡΡΠ΅ REST Web Services ΠΈ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Manage Authentication OAuth 2.0. ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Analytics ΠΎΡΠΌΠ΅ΡΡΡΠ΅ SuiteAnalytics Workbook: ΠΈΠ· Π½Π΅Π³ΠΎ ΡΠΈΡΠ°Π΅Ρ SuiteQL. Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅.
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠΎΠ»Ρ Π΄Π»Ρ ΠΠ: Setup β Users/Roles β Manage Roles β New. ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ REST Web Services (Full) ΠΈ Log in using OAuth 2.0 Access Tokens (Full), View Π΄Π»Ρ ΡΠΏΠΈΡΠΊΠΎΠ² ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΠ ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΡΠ°ΡΡ (ΠΊΠ»ΠΈΠ΅Π½ΡΡ, ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΈ, Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ°, ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΈ, ΡΡΠ΅ΡΠ° ΡΡΡΡΠ°, Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΡΡΠ΅ΡΠ°, Π·Π°ΠΊΠ°Π·Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, ΡΡΠ΅ΡΠ° ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ², ΠΏΡΠΎΠ²ΠΎΠ΄ΠΊΠΈ ΠΈ Find Transaction), ΠΈ Create ΡΠ°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ (ΠΊΠ»ΠΈΠ΅Π½ΡΡ, Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²). ΠΠ°Π·Π½Π°ΡΡΡΠ΅ ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²Ρ ΠΎΠ΄ΠΈΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΡΠΎΠ»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Administrator: ΠΠ Π²ΠΈΠ΄ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎ, ΡΡΠΎ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΡΠΎΠ»Ρ.
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π·Π°ΠΏΠΈΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ: Setup β Integration β Manage Integrations β New. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Enabled, ΡΠ½ΠΈΠΌΠΈΡΠ΅ ΠΎΡΠΌΠ΅ΡΠΊΠΈ Token-Based Authentication ΠΈ TBA: Authorization Flow, ΠΎΡΠΌΠ΅ΡΡΡΠ΅ Authorization Code Grant Π² ΡΠ°Π·Π΄Π΅Π»Π΅ OAuth 2.0, ΠΎΡΡΠ°Π²ΡΡΠ΅ Public Client Π½Π΅ΠΎΡΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌ, ΡΠΊΠ°ΠΆΠΈΡΠ΅ redirect URI
https://cloud.anythingmcp.com/api/mcp-oauth/callback(Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅ΡΠ΅ AnythingMCP ΡΠ°ΠΌΠΈ:<your AnythingMCP URL>/api/mcp-oauth/callback) ΠΈ ΠΎΡΠΌΠ΅ΡΡΡΠ΅ scope REST Web Services. ΠΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ NetSuite ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Client ID ΠΈ Client Secret Π²Π½ΠΈΠ·Ρ ΡΡΡΠ°Π½ΠΈΡΡ. ΠΡΡΠ°Π²ΡΡΠ΅ ΠΈΡ Π²NETSUITE_CLIENT_IDΠΈNETSUITE_CLIENT_SECRET. - ID Π°ΠΊΠΊΠ°ΡΠ½ΡΠ°: Setup β Company β Company Information. Π
NETSUITE_ACCOUNT_IDΠ΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΎΠ½ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π² Π²Π΅Π±-Π°Π΄ΡΠ΅ΡΠ΅ NetSuite: ΡΡΡΠΎΡΠ½ΡΠΌΠΈ Π±ΡΠΊΠ²Π°ΠΌΠΈ ΠΈ Ρ Π΄Π΅ΡΠΈΡΠΎΠΌ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠΎΠ΄ΡΡΡΠΊΠΈΠ²Π°Π½ΠΈΡ, ΡΠΎ Π΅ΡΡΡ1234567_SB1ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²1234567-sb1. ΠΠ»Ρ sandbox ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π·Π°ΠΏΠΈΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π² ΡΠ°ΠΌΠΎΠΌ sandbox. - Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡ, Π½Π°ΠΆΠΌΠΈΡΠ΅ Authorize with Provider, Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² NetSuite ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠΎΠ»Ρ ΠΈΠ· ΡΠ°Π³Π° 2.
- ΠΠ°ΠΏΡΡΡΠΈΡΠ΅
netsuite_list_record_types, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΡΠ΅ΡΠ΅Π·netsuite_suiteql_query, Π½Π°ΠΏΡΠΈΠΌΠ΅ΡSELECT id, companyname FROM customer.
ΠΠ²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ ΡΠ°Π· Π² Π½Π΅Π΄Π΅Π»Ρ: NetSuite Π΄Π΅ΡΠΆΠΈΡ refresh-ΡΠΎΠΊΠ΅Π½ ΡΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ΅ΠΌΡ Π΄Π½Π΅ΠΉ ΠΈ Π½Π΅ ΠΏΡΠΎΠ΄Π»Π΅Π²Π°Π΅Ρ Π΅Π³ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΠΆΠΈΠΌΠ°ΠΉΡΠ΅ Authorize with Provider Ρ ΠΎΡΡ Π±Ρ ΡΠ°Π· Π² Π½Π΅Π΄Π΅Π»Ρ. Π ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠ΅ access-ΡΠΎΠΊΠ΅Π½Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ, ΡΠΎΠ»ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΠ°Π·Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅Ρ Π΄ΠΎΡΡΡΠΏ.
ΠΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°Π±ΠΎΡΡ Π΄Π΅Π»Π°Π΅Ρ SuiteQL: netsuite_suiteql_query Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ SQL-Π·Π°ΠΏΡΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ NetSuite: ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ, ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ΅, ΡΡΠ΅ΡΠ°ΠΌ ΡΡΡΡΠ°, Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ Ρ ΠΈΡ
ΡΡΡΠΎΠΊΠ°ΠΌΠΈ ΠΈ ΡΡΠΌΠΌΠ°ΠΌΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΎΠΊ. Π’Π°ΠΊ ΠΠ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ Π²ΡΠΎΠ΄Π΅ ΠΎΡΠΊΡΡΡΡΡ
ΡΡΠ΅ΡΠΎΠ² ΠΏΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ, ΠΏΡΠΎΠ΄Π°ΠΆ ΠΏΠΎ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°ΡΡ
ΠΎΠ΄ΠΎΠ² ΠΏΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈΡ
ΠΎΠ΄ΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌΠΈ Π΄ΠΎ 1 000 ΡΡΡΠΎΠΊ, Π° ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΏΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 100 000 ΡΡΡΠΎΠΊ Π² ΡΡΠΌΠΌΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π° ΠΊΡΡΠΏΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΠ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΠΈΡΠΎΠ³Π°ΠΌΠΈ, Π° Π½Π΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ. Π‘ΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ»ΠΈ Π½Π΅ Π²ΠΈΠ΄Π½Ρ, ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ Π±Π΅Π· ΠΎΡΠΈΠ±ΠΊΠΈ, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΡΡΡΠΎΠΉ ΠΎΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ·Π½Π°ΡΠ°ΡΡ Π½Π΅Ρ
Π²Π°ΡΠΊΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠ°ΠΏΠΈΡΠΈ: ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΈΡΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ², ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ², Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΡ, Π·Π°ΠΊΠ°Π·Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΡΡΠ΅ΡΠ°, Π·Π°ΠΊΠ°Π·Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌ, ΡΡΠ΅ΡΠ° ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² ΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΊΠΈ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ, Π° netsuite_get_record ΡΠΈΡΠ°Π΅Ρ Π·Π°ΠΏΠΈΡΡ Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. netsuite_describe_record_type ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅Ρ Π²ΡΠ΅ ΠΏΠΎΠ»Ρ ΡΠΈΠΏΠ° Π·Π°ΠΏΠΈΡΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅.
ΠΠ°ΠΏΠΈΡΡ Π΄Π°Π½Π½ΡΡ
ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ: netsuite_create_customer ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ. netsuite_create_sales_order (ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΠΊΠ°Π· Π² ΡΡΠ°ΡΡΡΠ΅ Pending Approval, ΡΠ°ΠΊ ΡΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΎΡΠ³ΡΡΠΆΠ°Π΅ΡΡΡ, ΠΏΠΎΠΊΠ° ΠΊΡΠΎ-ΡΠΎ Π΅Π³ΠΎ Π½Π΅ ΡΡΠ²Π΅ΡΠ΄ΠΈΡ) ΠΈ netsuite_update_record ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π²ΡΠΊΠ»ΡΡΠ΅Π½Ρ; Π²ΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ ΠΈΡ
ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½ΡΠΆΠ½Ρ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ²Π΅Π΄ΡΠ½Π½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π»ΠΈΡΡΡ Π½Π° Π±ΡΡ
Π³Π°Π»ΡΠ΅ΡΡΠΊΠΈΠΉ ΡΡΡΡ.
Π§Π°ΡΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ: INVALID_LOGIN ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΡΡΠ΅ΠΊΠ»Π° Π΅ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½Π°Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ, ΡΠΎΠ»Ρ Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ: Π°Π²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ. 403 ΠΈΠ»ΠΈ INSUFFICIENT_PERMISSION: ΡΠΎΠ»ΠΈ Π½Π΅ Ρ
Π²Π°ΡΠ°Π΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ. CONCURRENCY_LIMIT_EXCEEDED: ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π°ΠΊΠΊΠ°ΡΠ½ΡΡ, ΠΏΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΏΡΡΠΊΡ. ΠΠ΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ Ρ
ΠΎΡΡ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ NETSUITE_ACCOUNT_ID Π·Π°ΠΏΠΈΡΠ°Π½ Π½Π΅ Π² ΡΠΎΡΠΌΠ΅ Π²Π΅Π±-Π°Π΄ΡΠ΅ΡΠ°.
ΠΠΎΠ½Π½Π΅ΠΊΡΠΎΡ Π²Ρ ΠΎΠ΄ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· OAuth 2.0; Token-Based Authentication (TBA) Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ. ΠΠ½ Π½Π΅ ΡΠ΄Π°Π»ΡΠ΅Ρ Π·Π°ΠΏΠΈΡΠΈ, Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ½Π½ΡΠ΅ ΠΏΠΎΠΈΡΠΊΠΈ ΠΈ ΠΎΡΡΡΡΡ, Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅Ρ RESTlets ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ (file cabinet).
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ: NETSUITE_ACCOUNT_ID, NETSUITE_CLIENT_ID, NETSUITE_CLIENT_SECRET
ΠΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡΠ°
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
ΠΡΠΊΡΠΎΠΉΡΠ΅ http://localhost:3000/connectors/store, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Oracle NetSuite ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π² ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΡ
.
ΠΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
| Tool | What it does |
|---|---|
netsuite_suiteql_query | Run one read-only SuiteQL query (NetSuite's SQL over the analytics schema), e.g. "SELECT id, companyname, email FROM customer WHERE⦠|
netsuite_list_record_types | List the record types the REST record API offers in this account (standard and custom, e.g. customer, salesOrder, inventoryItem⦠|
netsuite_describe_record_type | Describe one record type as JSON Schema: every field with its type, title and whether it is read-only, the sublists and their line fields⦠|
netsuite_list_records | List the internal ids of one record type, optionally filtered with the record API's q syntax (field, operator, value), e.g. q = email⦠|
netsuite_get_record | Read any record by type and internal id (or eid:<external id>), e.g. contact, account, subsidiary, location, estimate, creditMemo⦠|
netsuite_get_customer | Read one customer by internal id (or eid:<external id>): entityId, companyName or person name, email, phone, subsidiary, currency, terms⦠|
netsuite_get_vendor | Read one vendor by internal id (or eid:<external id>): entityId, companyName, email, phone, subsidiary, currency, terms, balance, category⦠|
netsuite_get_employee | Read one employee by internal id: entityId, name, email, title, department, location, subsidiary, supervisor, hireDate, isInactive and the⦠|
netsuite_get_item | Read one item by its record type and internal id: itemId, displayName, description, prices, cost, units, quantities on hand where tracked⦠|
netsuite_get_sales_order | Read one sales order by internal id: tranId, entity (customer), tranDate, status, orderStatus, currency, subtotal, total, shipping address⦠|
netsuite_get_invoice | Read one customer invoice by internal id: tranId, entity, tranDate, dueDate, status, currency, subtotal, taxTotal, total, amountRemaining⦠|
netsuite_get_purchase_order | Read one purchase order by internal id: tranId, entity (vendor), tranDate, status, currency, total, dueDate and, expanded by default⦠|
netsuite_get_vendor_bill | Read one vendor bill by internal id: tranId, entity (vendor), tranDate, dueDate, status, currency, total, approvalStatus and, expanded by⦠|
netsuite_get_journal_entry | Read one journal entry by internal id: tranId, tranDate, postingPeriod, subsidiary, currency, approved, memo and, expanded by default⦠|
netsuite_create_customer | Create a customer, a company (company_name) or a person (is_person true with first_name and last_name) |
netsuite_create_sales_order | Create a sales order for an existing customer, by default in status Pending Approval (A) so nothing is fulfilled before someone approves it |
netsuite_update_record | Change fields of an existing record of any type (PATCH): only the fields given are changed |
ΠΡΠΈΠΌΠ΅ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²
- Β«Π£ ΠΊΠ°ΠΊΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π΅ΡΡΡ ΠΎΡΠΊΡΡΡΡΠ΅ ΡΡΠ΅ΡΠ° ΡΡΠ°ΡΡΠ΅ 60 Π΄Π½Π΅ΠΉ ΠΈ ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ ?Β»
- Β«ΠΠΎΠΊΠ°ΠΆΠΈΡΠ΅ ΠΏΡΠΎΠ΄Π°ΠΆΠΈ Π·Π° ΠΏΡΠΎΡΠ»ΡΠΉ ΠΊΠ²Π°ΡΡΠ°Π» ΠΏΠΎ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ΅, ΡΠΎΠΏ-20 ΠΏΠΎ ΡΡΠΌΠΌΠ΅.Β»
- Β«Π‘ΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΡ ΠΏΠΎΡΡΠ°ΡΠΈΠ»ΠΈ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° Π² ΡΡΠΎΠΌ Π³ΠΎΠ΄Ρ ΠΏΠΎ ΡΡΠ΅ΡΠ°ΠΌ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ²?Β»
- Β«Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Harbor Supplies Ltd. Π² Π±ΡΠΈΡΠ°Π½ΡΠΊΠΎΠΉ Π΄ΠΎΡΠ΅ΡΠ½Π΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠΈΡΠ΅ ΠΌΠ½Π΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ.Β»
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π³ΠΈ
ΠΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ?