fa-mcp-sdk 0.3.16 → 0.3.18

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.
Files changed (50) hide show
  1. package/README.md +1 -1
  2. package/cli-template/.claude/agents/architect.md +99 -99
  3. package/cli-template/.claude/agents/auditor.md +92 -92
  4. package/cli-template/.claude/agents/fa-mcp-sdk.md +1 -1
  5. package/cli-template/.claude/agents/planner.md +122 -122
  6. package/cli-template/.claude/agents/prd-writer.md +88 -88
  7. package/cli-template/.claude/agents/refactor.md +74 -74
  8. package/cli-template/.claude/agents/worker.md +132 -132
  9. package/cli-template/CLAUDE.md +1 -1
  10. package/cli-template/FA-MCP-SDK-DOC/01-getting-started.md +1 -1
  11. package/cli-template/FA-MCP-SDK-DOC/03-configuration.md +3 -0
  12. package/cli-template/FA-MCP-SDK-DOC/04-authentication.md +77 -4
  13. package/cli-template/FA-MCP-SDK-DOC/05-ad-authorization.md +35 -16
  14. package/cli-template/README.md +105 -105
  15. package/cli-template/package.json +2 -2
  16. package/cli-template/prompt-example-new-MCP.md +2 -1
  17. package/cli-template/prompt_2026-03-17_13-53.md +15 -0
  18. package/cli-template/r/TEST HTTP.xml +9 -9
  19. package/cli-template/r/TEST SSE.xml +5 -5
  20. package/cli-template/r/TEST STDIO.xml +5 -5
  21. package/cli-template/r/generate-token.xml +13 -13
  22. package/cli-template/r/lint-fix-build.xml +12 -12
  23. package/cli-template/r/remove-nul.xml +11 -11
  24. package/config/custom-environment-variables.yaml +1 -0
  25. package/config/default.yaml +3 -0
  26. package/config/development.yaml +4 -4
  27. package/config/production.yaml +4 -4
  28. package/dist/core/_types_/config.d.ts +1 -0
  29. package/dist/core/_types_/config.d.ts.map +1 -1
  30. package/dist/core/auth/ip-check.d.ts +18 -0
  31. package/dist/core/auth/ip-check.d.ts.map +1 -0
  32. package/dist/core/auth/ip-check.js +148 -0
  33. package/dist/core/auth/ip-check.js.map +1 -0
  34. package/dist/core/auth/jwt.d.ts +1 -0
  35. package/dist/core/auth/jwt.d.ts.map +1 -1
  36. package/dist/core/auth/jwt.js +15 -1
  37. package/dist/core/auth/jwt.js.map +1 -1
  38. package/dist/core/auth/multi-auth.d.ts.map +1 -1
  39. package/dist/core/auth/multi-auth.js +19 -14
  40. package/dist/core/auth/multi-auth.js.map +1 -1
  41. package/dist/core/auth/token-generator/ntlm/ntlm-templates.js +221 -221
  42. package/dist/core/web/static/token-gen/index.html +9 -0
  43. package/dist/core/web/static/token-gen/logout.svg +4 -4
  44. package/dist/core/web/static/token-gen/script.js +7 -1
  45. package/dist/core/web/static/token-gen/user.svg +4 -4
  46. package/package.json +1 -1
  47. package/scripts/publish.sh +78 -78
  48. package/scripts/update-doc.js +18 -18
  49. package/config/local-2.yaml +0 -20
  50. package/config/local.yaml +0 -101
@@ -1,78 +1,78 @@
1
- #!/bin/bash
2
-
3
- expected_branch="master"
4
-
5
- c='\033[0;35m'
6
- y='\033[0;33m'
7
- r='\033[0;31m'
8
- c0='\033[0;0m'
9
- g='\033[0;32m'
10
-
11
- echo_r() { /bin/echo -e ${r}"$1"${c0}; };
12
-
13
- # shellcheck disable=SC2120
14
- exit_on_error(){
15
- if [[ $? -ne 0 ]] ; then
16
- if [[ -n "$1" ]]; then
17
- echo_r "$1";
18
- else
19
- echo -e "${r}**** ERROR ****${c0}"
20
- fi;
21
- read -p "Press any key to resume ..."
22
- exit 0
23
- fi
24
- }
25
-
26
- set +e
27
-
28
- branch_name=$(git symbolic-ref --short HEAD)
29
- exit_on_error "$y**** Version will not be bumped since retcode is not equals 0 ****$c0"
30
-
31
- if [[ "$branch_name" != "$expected_branch" ]] ; then
32
- echo -e "${y}**** git branch should be ${c}{$expected_branch}${y}, current: ${c}${branch_name}${y} ****$c0"
33
- read -p "Press any key to resume ..."
34
- exit 0
35
- fi
36
-
37
- npm run cb
38
- exit_on_error "$y**** Typescript build failed ****$c0"
39
-
40
- old_version=''
41
- new_version=''
42
-
43
- update_version(){
44
- old_version=`cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]'`
45
- echo -e "$c**** Old version is $g$old_version$c ****$c0"
46
- version_split=( ${old_version//./ } )
47
- major=${version_split[0]:-0}
48
- minor=${version_split[1]:-0}
49
- patch=${version_split[2]:-0}
50
- let "patch=patch+1"
51
- new_version="${major}.${minor}.${patch}"
52
-
53
- repo=`cat package.json | grep name | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]'`
54
- echo -e "$c**** Bumping version of $g$repo$c: $y$old_version$c -> $g$new_version$c ****$c0"
55
- sed -i -e "0,/$old_version/s/$old_version/$new_version/" package.json
56
- # Update the dependency version in cli-template/package.json: "fa-mcp-sdk": "^<new_version>"
57
- # Version match is built on a regular expression that allows any current version (with an optional ^)
58
- sed -i -E "s/(\"fa-mcp-sdk\":\s*\")\^?[^\"]+(\"[,\r\n\s]*)/\1^${new_version}\2/" cli-template/package.json
59
- echo -e "$g"
60
- npm version 2>&1 | head -2 | tail -1
61
- echo -e "$c0"
62
- }
63
-
64
-
65
- update_version
66
- exit_on_error
67
-
68
- git add --all
69
- exit_on_error
70
-
71
- git commit --no-verify -m "$new_version"
72
- exit_on_error
73
-
74
- git push origin refs/heads/${expected_branch}:${expected_branch}
75
- exit_on_error
76
- # npm pack --dry-run
77
- npm publish
78
- read -p "Press any key to resume ..."
1
+ #!/bin/bash
2
+
3
+ expected_branch="master"
4
+
5
+ c='\033[0;35m'
6
+ y='\033[0;33m'
7
+ r='\033[0;31m'
8
+ c0='\033[0;0m'
9
+ g='\033[0;32m'
10
+
11
+ echo_r() { /bin/echo -e ${r}"$1"${c0}; };
12
+
13
+ # shellcheck disable=SC2120
14
+ exit_on_error(){
15
+ if [[ $? -ne 0 ]] ; then
16
+ if [[ -n "$1" ]]; then
17
+ echo_r "$1";
18
+ else
19
+ echo -e "${r}**** ERROR ****${c0}"
20
+ fi;
21
+ read -p "Press any key to resume ..."
22
+ exit 0
23
+ fi
24
+ }
25
+
26
+ set +e
27
+
28
+ branch_name=$(git symbolic-ref --short HEAD)
29
+ exit_on_error "$y**** Version will not be bumped since retcode is not equals 0 ****$c0"
30
+
31
+ if [[ "$branch_name" != "$expected_branch" ]] ; then
32
+ echo -e "${y}**** git branch should be ${c}{$expected_branch}${y}, current: ${c}${branch_name}${y} ****$c0"
33
+ read -p "Press any key to resume ..."
34
+ exit 0
35
+ fi
36
+
37
+ npm run cb
38
+ exit_on_error "$y**** Typescript build failed ****$c0"
39
+
40
+ old_version=''
41
+ new_version=''
42
+
43
+ update_version(){
44
+ old_version=`cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]'`
45
+ echo -e "$c**** Old version is $g$old_version$c ****$c0"
46
+ version_split=( ${old_version//./ } )
47
+ major=${version_split[0]:-0}
48
+ minor=${version_split[1]:-0}
49
+ patch=${version_split[2]:-0}
50
+ let "patch=patch+1"
51
+ new_version="${major}.${minor}.${patch}"
52
+
53
+ repo=`cat package.json | grep name | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]'`
54
+ echo -e "$c**** Bumping version of $g$repo$c: $y$old_version$c -> $g$new_version$c ****$c0"
55
+ sed -i -e "0,/$old_version/s/$old_version/$new_version/" package.json
56
+ # Update the dependency version in cli-template/package.json: "fa-mcp-sdk": "^<new_version>"
57
+ # Version match is built on a regular expression that allows any current version (with an optional ^)
58
+ sed -i -E "s/(\"fa-mcp-sdk\":\s*\")\^?[^\"]+(\"[,\r\n\s]*)/\1^${new_version}\2/" cli-template/package.json
59
+ echo -e "$g"
60
+ npm version 2>&1 | head -2 | tail -1
61
+ echo -e "$c0"
62
+ }
63
+
64
+
65
+ update_version
66
+ exit_on_error
67
+
68
+ git add --all
69
+ exit_on_error
70
+
71
+ git commit --no-verify -m "$new_version"
72
+ exit_on_error
73
+
74
+ git push origin refs/heads/${expected_branch}:${expected_branch}
75
+ exit_on_error
76
+ # npm pack --dry-run
77
+ npm publish
78
+ read -p "Press any key to resume ..."
@@ -1,18 +1,18 @@
1
- #!/usr/bin/env node
2
- import { cpSync, existsSync, rmSync } from 'fs';
3
- import { join } from 'path';
4
-
5
- const src = join(process.cwd(), './node_modules/fa-mcp-sdk/cli-template/FA-MCP-SDK-DOC');
6
- const dest = join(process.cwd(), 'FA-MCP-SDK-DOC');
7
-
8
- if (!existsSync(src)) {
9
- console.error('Source not found:', src);
10
- process.exit(1);
11
- }
12
-
13
- if (existsSync(dest)) {
14
- rmSync(dest, { recursive: true });
15
- }
16
-
17
- cpSync(src, dest, { recursive: true });
18
- console.log('FA-MCP-SDK-DOC updated');
1
+ #!/usr/bin/env node
2
+ import { cpSync, existsSync, rmSync } from 'fs';
3
+ import { join } from 'path';
4
+
5
+ const src = join(process.cwd(), './node_modules/fa-mcp-sdk/cli-template/FA-MCP-SDK-DOC');
6
+ const dest = join(process.cwd(), 'FA-MCP-SDK-DOC');
7
+
8
+ if (!existsSync(src)) {
9
+ console.error('Source not found:', src);
10
+ process.exit(1);
11
+ }
12
+
13
+ if (existsSync(dest)) {
14
+ rmSync(dest, { recursive: true });
15
+ }
16
+
17
+ cpSync(src, dest, { recursive: true });
18
+ console.log('FA-MCP-SDK-DOC updated');
@@ -1,20 +0,0 @@
1
- consul:
2
- agent:
3
- dev:
4
- dc: 'dc-dev'
5
- host: 'consul.entapp.work'
6
- token: db56c39b-4b3f-f995-f2e6-6b7c5ab76fa8
7
- prd:
8
- dc: 'dc-prd'
9
- host: 'consul.entapp.work'
10
- token: 4701c873-9af3-e9a5-cd81-3a0184a5d898
11
- reg:
12
- host: MSK-AITE01-AP01.office.finam.ru
13
- # host: MSK-AITR01-AP01.office.finam.ru
14
- token: db56c39b-4b3f-f995-f2e6-6b7c5ab76fa8
15
- service:
16
- enable: true
17
- instance: ws1170
18
- envCode: # Used to generate the service ID
19
- prod: aitr01
20
- dev: aite01
package/config/local.yaml DELETED
@@ -1,101 +0,0 @@
1
- agentTester:
2
- enabled: true
3
- useAuth: false
4
- openAi:
5
- # apiKeyName: aite-ktalk-s
6
- # apiKey: sk-vkB8ptp1G5b1UKaSZwsFeQ
7
- apiKeyName: aitr-ktalk-s
8
- apiKey: sk-iZDpZ_zyxaeUpSVkxVJQWg
9
- # apiKeyName: aitech-vvmakarov
10
- # apiKey: sk-KggHAQhePqIHesTvgSRLZg
11
- baseURL: https://litellm.finam.ru/v1
12
- # baseURL: http://NYX-AITE01-PR01.corp.whotrades.eu/v1
13
- ad:
14
- domains:
15
- OFFICE:
16
- controllers:
17
- - 'ldap://prdc1.office.finam.ru'
18
- - 'ldap://prdc2.office.finam.ru'
19
- default: true
20
- password: International2025%
21
- username: aite01-ldap-s
22
- WTE:
23
- controllers:
24
- - 'ldap://prdc1.corp.whotrades.eu'
25
- - 'ldap://prdc2.corp.whotrades.eu'
26
- password: International2025%
27
- username: aite01-ldap-s
28
-
29
- consul:
30
- agent:
31
- dev:
32
- dc: 'dc-dev'
33
- host: 'consul.entapp.work'
34
- token: db56c39b-4b3f-f995-f2e6-6b7c5ab76fa8
35
- prd:
36
- dc: 'dc-prd'
37
- host: 'consul.entapp.work'
38
- token: 4701c873-9af3-e9a5-cd81-3a0184a5d898
39
- reg:
40
- host: MSK-AITE01-AP01.office.finam.ru
41
- # host: MSK-AITR01-AP01.office.finam.ru
42
- token: db56c39b-4b3f-f995-f2e6-6b7c5ab76fa8
43
- service:
44
- enable: true
45
- instance: ws1170
46
- envCode: # Used to generate the service ID
47
- prod: aitr01
48
- dev: aite01
49
-
50
- db:
51
- postgres:
52
- dbs:
53
- main:
54
- database: slava
55
- host: msk-aite01-ap01
56
- port: 5432
57
- user: csbot
58
- password: yxxfdZwTAkpz
59
- usedExtensions:
60
- - pgvector
61
-
62
- logger:
63
- level: info
64
- useFileLogger: false # To use or not to use logging to a file
65
- dir: ''
66
-
67
- mcp:
68
- transportType: http # 'stdio' or 'http'
69
- toolAnswerAs: text # text | structuredContent
70
-
71
- swagger:
72
- servers: # An array of servers that will be added to swagger docs
73
- - url: http://localhost:9876
74
- description: "Local server"
75
-
76
- webServer:
77
- port: 9876
78
- auth:
79
- enabled: true
80
- # An array of fixed tokens that pass to the MCP (use only for MCPs with green data or for development)
81
- permanentServerTokens: ['test-perm-token']
82
- jwtToken:
83
- # Symmetric encryption key to generate a token for this MCP
84
- encryptKey: '66666666-7777-8888-9999-000000000000'
85
- # If webServer.auth.enabled and the parameter true, the service name and the service specified in the token will be checked
86
- checkMCPName: true
87
- basic:
88
- username: vpupkin
89
- password: '1'
90
-
91
- # ========================================================================
92
- # ADMIN PANEL AUTHENTICATION
93
- # Token generation page available at /admin endpoint
94
- # Supports 4 authentication methods: permanentServerTokens, basic, jwtToken, ntlm
95
- # ========================================================================
96
- adminAuth:
97
- enabled: false
98
- # Authentication type for admin panel: 'permanentServerTokens' | 'basic' | 'jwtToken' | 'ntlm'
99
- # For permanentServerTokens, basic, jwtToken - uses credentials from webServer.auth section
100
- # For ntlm - uses AD configuration from ad.domains section (no additional credentials needed)
101
- type: 'jwtToken'