mountable-cli 0.2.0 → 0.3.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/THIRD_PARTY_NOTICES
CHANGED
|
@@ -1076,6 +1076,196 @@ github.com/google/btree v1.1.3
|
|
|
1076
1076
|
// Those without this prefix are specific to the 'Item' interface, and use
|
|
1077
1077
|
// its 'Less' function for ordering.
|
|
1078
1078
|
|
|
1079
|
+
================================================================================
|
|
1080
|
+
github.com/google/jsonschema-go v0.4.3
|
|
1081
|
+
================================================================================
|
|
1082
|
+
|
|
1083
|
+
--- LICENSE ---
|
|
1084
|
+
|
|
1085
|
+
MIT License
|
|
1086
|
+
|
|
1087
|
+
Copyright (c) 2025 JSON Schema Go Project Authors
|
|
1088
|
+
|
|
1089
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
1090
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
1091
|
+
in the Software without restriction, including without limitation the rights
|
|
1092
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
1093
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
1094
|
+
furnished to do so, subject to the following conditions:
|
|
1095
|
+
|
|
1096
|
+
The above copyright notice and this permission notice shall be included in all
|
|
1097
|
+
copies or substantial portions of the Software.
|
|
1098
|
+
|
|
1099
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
1100
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
1101
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
1102
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
1103
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
1104
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1105
|
+
SOFTWARE.
|
|
1106
|
+
|
|
1107
|
+
--- file notice: jsonschema/annotations.go, jsonschema/schema.go, jsonschema/util.go, jsonschema/validate.go ---
|
|
1108
|
+
|
|
1109
|
+
// Copyright 2025 The JSON Schema Go Project Authors. All rights reserved.
|
|
1110
|
+
// Use of this source code is governed by an MIT-style
|
|
1111
|
+
// license that can be found in the LICENSE file.
|
|
1112
|
+
|
|
1113
|
+
--- file notice: jsonschema/doc.go ---
|
|
1114
|
+
|
|
1115
|
+
// Copyright 2025 The JSON Schema Go Project Authors. All rights reserved.
|
|
1116
|
+
// Use of this source code is governed by an MIT-style
|
|
1117
|
+
// license that can be found in the LICENSE file.
|
|
1118
|
+
|
|
1119
|
+
/*
|
|
1120
|
+
Package jsonschema is an implementation of the [JSON Schema specification],
|
|
1121
|
+
a JSON-based format for describing the structure of JSON data.
|
|
1122
|
+
The package can be used to read schemas for code generation, and to validate
|
|
1123
|
+
data using the draft 2020-12 and draft-07 specifications. Validation with
|
|
1124
|
+
other drafts or custom meta-schemas is not supported.
|
|
1125
|
+
|
|
1126
|
+
Construct a [Schema] as you would any Go struct (for example, by writing
|
|
1127
|
+
a struct literal), or unmarshal a JSON schema into a [Schema] in the usual
|
|
1128
|
+
way (with [encoding/json], for instance). It can then be used for code
|
|
1129
|
+
generation or other purposes without further processing.
|
|
1130
|
+
You can also infer a schema from a Go struct.
|
|
1131
|
+
|
|
1132
|
+
# Resolution
|
|
1133
|
+
|
|
1134
|
+
A Schema can refer to other schemas, both inside and outside itself. These
|
|
1135
|
+
references must be resolved before a schema can be used for validation.
|
|
1136
|
+
Call [Schema.Resolve] to obtain a resolved schema (called a [Resolved]).
|
|
1137
|
+
If the schema has external references, pass a [ResolveOptions] with a [Loader]
|
|
1138
|
+
to load them. To validate default values in a schema, set
|
|
1139
|
+
[ResolveOptions.ValidateDefaults] to true.
|
|
1140
|
+
|
|
1141
|
+
# Validation
|
|
1142
|
+
|
|
1143
|
+
Call [Resolved.Validate] to validate a JSON value. The value must be a
|
|
1144
|
+
Go value that looks like the result of unmarshaling a JSON value into an
|
|
1145
|
+
[any] or a struct. For example, the JSON value
|
|
1146
|
+
|
|
1147
|
+
{"name": "Al", "scores": [90, 80, 100]}
|
|
1148
|
+
|
|
1149
|
+
could be represented as the Go value
|
|
1150
|
+
|
|
1151
|
+
map[string]any{
|
|
1152
|
+
"name": "Al",
|
|
1153
|
+
"scores": []any{90, 80, 100},
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
or as a value of this type:
|
|
1157
|
+
|
|
1158
|
+
type Player struct {
|
|
1159
|
+
Name string `json:"name"`
|
|
1160
|
+
Scores []int `json:"scores"`
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1163
|
+
# Inference
|
|
1164
|
+
|
|
1165
|
+
The [For] function returns a [Schema] describing the given Go type.
|
|
1166
|
+
Each field in the struct becomes a property of the schema.
|
|
1167
|
+
The values of "json" tags are respected: the field's property name is taken
|
|
1168
|
+
from the tag, and fields omitted from the JSON are omitted from the schema as
|
|
1169
|
+
well.
|
|
1170
|
+
For example, `jsonschema.For[Player]()` returns this schema:
|
|
1171
|
+
|
|
1172
|
+
{
|
|
1173
|
+
"properties": {
|
|
1174
|
+
"name": {
|
|
1175
|
+
"type": "string"
|
|
1176
|
+
},
|
|
1177
|
+
"scores": {
|
|
1178
|
+
"type": "array",
|
|
1179
|
+
"items": {"type": "integer"}
|
|
1180
|
+
}
|
|
1181
|
+
"required": ["name", "scores"],
|
|
1182
|
+
"additionalProperties": {"not": {}}
|
|
1183
|
+
}
|
|
1184
|
+
}
|
|
1185
|
+
|
|
1186
|
+
Use the "jsonschema" struct tag to provide a description for the property:
|
|
1187
|
+
|
|
1188
|
+
type Player struct {
|
|
1189
|
+
Name string `json:"name" jsonschema:"player name"`
|
|
1190
|
+
Scores []int `json:"scores" jsonschema:"scores of player's games"`
|
|
1191
|
+
}
|
|
1192
|
+
|
|
1193
|
+
# Deviations from the specification
|
|
1194
|
+
|
|
1195
|
+
Regular expressions are processed with Go's regexp package, which differs
|
|
1196
|
+
from ECMA 262, most significantly in not supporting back-references.
|
|
1197
|
+
See [this table of differences] for more.
|
|
1198
|
+
|
|
1199
|
+
The "format" keyword described in [section 7 of the validation spec] is recorded
|
|
1200
|
+
in the Schema, but is ignored during validation.
|
|
1201
|
+
It does not even produce [annotations].
|
|
1202
|
+
Use the "pattern" keyword instead: it will work more reliably across JSON Schema
|
|
1203
|
+
implementations. See [learnjsonschema.com] for more recommendations about "format".
|
|
1204
|
+
|
|
1205
|
+
The content keywords described in [section 8 of the validation spec]
|
|
1206
|
+
are recorded in the schema, but ignored during validation.
|
|
1207
|
+
|
|
1208
|
+
# Controlling behavior changes
|
|
1209
|
+
|
|
1210
|
+
Minor and patch releases of this package may introduce behavior changes as part
|
|
1211
|
+
of bug fixes or correctness improvements. To help manage the impact of such
|
|
1212
|
+
changes, the package allows you to access previous behaviors using the
|
|
1213
|
+
`JSONSCHEMAGODEBUG` environment variable. The available settings are listed
|
|
1214
|
+
below; additional options may be introduced in future releases.
|
|
1215
|
+
|
|
1216
|
+
- **typeschemasnull**: When set to `"1"`, the inferred schema for slices will
|
|
1217
|
+
*not* include the `null` type alongside the array type. It will also avoid
|
|
1218
|
+
adding `null` to non-native pointer types (such as `time.Time`). This restores
|
|
1219
|
+
the behavior from versions prior to v0.3.0. The default behavior is to include
|
|
1220
|
+
`null` in these cases.
|
|
1221
|
+
|
|
1222
|
+
[JSON Schema specification]: https://json-schema.org
|
|
1223
|
+
[section 7 of the validation spec]: https://json-schema.org/draft/2020-12/draft-bhutton-json-schema-validation-00#rfc.section.7
|
|
1224
|
+
[section 8 of the validation spec]: https://json-schema.org/draft/2020-12/draft-bhutton-json-schema-validation-00#rfc.section.8
|
|
1225
|
+
[learnjsonschema.com]: https://www.learnjsonschema.com/2020-12/format-annotation/format/
|
|
1226
|
+
[this table of differences]: https://github.com/dlclark/regexp2?tab=readme-ov-file#compare-regexp-and-regexp2
|
|
1227
|
+
[annotations]: https://json-schema.org/draft/2020-12/json-schema-core#name-annotations
|
|
1228
|
+
*/
|
|
1229
|
+
|
|
1230
|
+
--- file notice: jsonschema/infer.go ---
|
|
1231
|
+
|
|
1232
|
+
// Copyright 2025 The JSON Schema Go Project Authors. All rights reserved.
|
|
1233
|
+
// Use of this source code is governed by an MIT-style
|
|
1234
|
+
// license that can be found in the LICENSE file.
|
|
1235
|
+
|
|
1236
|
+
// This file contains functions that infer a schema from a Go type.
|
|
1237
|
+
|
|
1238
|
+
--- file notice: jsonschema/json_pointer.go ---
|
|
1239
|
+
|
|
1240
|
+
// Copyright 2025 The JSON Schema Go Project Authors. All rights reserved.
|
|
1241
|
+
// Use of this source code is governed by an MIT-style
|
|
1242
|
+
// license that can be found in the LICENSE file.
|
|
1243
|
+
|
|
1244
|
+
// This file implements JSON Pointers.
|
|
1245
|
+
// A JSON Pointer is a path that refers to one JSON value within another.
|
|
1246
|
+
// If the path is empty, it refers to the root value.
|
|
1247
|
+
// Otherwise, it is a sequence of slash-prefixed strings, like "/points/1/x",
|
|
1248
|
+
// selecting successive properties (for JSON objects) or items (for JSON arrays).
|
|
1249
|
+
// For example, when applied to this JSON value:
|
|
1250
|
+
// {
|
|
1251
|
+
// "points": [
|
|
1252
|
+
// {"x": 1, "y": 2},
|
|
1253
|
+
// {"x": 3, "y": 4}
|
|
1254
|
+
// ]
|
|
1255
|
+
// }
|
|
1256
|
+
//
|
|
1257
|
+
// the JSON Pointer "/points/1/x" refers to the number 3.
|
|
1258
|
+
// See the spec at https://datatracker.ietf.org/doc/html/rfc6901.
|
|
1259
|
+
|
|
1260
|
+
--- file notice: jsonschema/resolve.go ---
|
|
1261
|
+
|
|
1262
|
+
// Copyright 2025 The JSON Schema Go Project Authors. All rights reserved.
|
|
1263
|
+
// Use of this source code is governed by an MIT-style
|
|
1264
|
+
// license that can be found in the LICENSE file.
|
|
1265
|
+
|
|
1266
|
+
// This file deals with preparing a schema for validation, including various checks,
|
|
1267
|
+
// optimizations, and the resolution of cross-schema references.
|
|
1268
|
+
|
|
1079
1269
|
================================================================================
|
|
1080
1270
|
github.com/google/uuid v1.6.0
|
|
1081
1271
|
================================================================================
|
|
@@ -1636,117 +1826,618 @@ SOFTWARE.
|
|
|
1636
1826
|
|
|
1637
1827
|
--- file notice: detect_arm64.go, detect_x86.go ---
|
|
1638
1828
|
|
|
1639
|
-
// Copyright (c) 2015 Klaus Post, released under MIT License. See LICENSE file.
|
|
1829
|
+
// Copyright (c) 2015 Klaus Post, released under MIT License. See LICENSE file.
|
|
1830
|
+
|
|
1831
|
+
--- file notice: os_darwin_arm64.go ---
|
|
1832
|
+
|
|
1833
|
+
// Copyright (c) 2020 Klaus Post, released under MIT License. See LICENSE file.
|
|
1834
|
+
|
|
1835
|
+
--- file notice: os_linux_arm64.go ---
|
|
1836
|
+
|
|
1837
|
+
// Copyright (c) 2020 Klaus Post, released under MIT License. See LICENSE file.
|
|
1838
|
+
|
|
1839
|
+
// Copyright 2018 The Go Authors. All rights reserved.
|
|
1840
|
+
// Use of this source code is governed by a BSD-style
|
|
1841
|
+
// license that can be found in the LICENSE file located
|
|
1842
|
+
// here https://github.com/golang/sys/blob/master/LICENSE
|
|
1843
|
+
|
|
1844
|
+
--- file notice: os_unsafe_linux_arm64.go ---
|
|
1845
|
+
|
|
1846
|
+
// Copyright (c) 2021 Klaus Post, released under MIT License. See LICENSE file.
|
|
1847
|
+
|
|
1848
|
+
--- file notice: riscv_isa.go ---
|
|
1849
|
+
|
|
1850
|
+
// Copyright (c) 2026 Klaus Post, released under MIT License. See LICENSE file.
|
|
1851
|
+
|
|
1852
|
+
================================================================================
|
|
1853
|
+
github.com/klauspost/reedsolomon v1.14.2
|
|
1854
|
+
================================================================================
|
|
1855
|
+
|
|
1856
|
+
--- LICENSE ---
|
|
1857
|
+
|
|
1858
|
+
The MIT License (MIT)
|
|
1859
|
+
|
|
1860
|
+
Copyright (c) 2015 Klaus Post
|
|
1861
|
+
Copyright (c) 2015 Backblaze
|
|
1862
|
+
|
|
1863
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
1864
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
1865
|
+
in the Software without restriction, including without limitation the rights
|
|
1866
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
1867
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
1868
|
+
furnished to do so, subject to the following conditions:
|
|
1869
|
+
|
|
1870
|
+
The above copyright notice and this permission notice shall be included in all
|
|
1871
|
+
copies or substantial portions of the Software.
|
|
1872
|
+
|
|
1873
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
1874
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
1875
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
1876
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
1877
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
1878
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1879
|
+
SOFTWARE.
|
|
1880
|
+
|
|
1881
|
+
--- file notice: galois.go ---
|
|
1882
|
+
|
|
1883
|
+
/**
|
|
1884
|
+
* 8-bit Galois Field
|
|
1885
|
+
* Copyright 2015, Klaus Post
|
|
1886
|
+
* Copyright 2015, Backblaze, Inc. All rights reserved.
|
|
1887
|
+
*/
|
|
1888
|
+
|
|
1889
|
+
--- file notice: galois_amd64.go ---
|
|
1890
|
+
|
|
1891
|
+
// Copyright 2015, Klaus Post, see LICENSE for details.
|
|
1892
|
+
|
|
1893
|
+
--- file notice: galois_arm64.go ---
|
|
1894
|
+
|
|
1895
|
+
// Copyright 2015, Klaus Post, see LICENSE for details.
|
|
1896
|
+
// Copyright 2017, Minio, Inc.
|
|
1897
|
+
|
|
1898
|
+
--- file notice: inversion_tree.go ---
|
|
1899
|
+
|
|
1900
|
+
/**
|
|
1901
|
+
* A thread-safe tree which caches inverted matrices.
|
|
1902
|
+
*
|
|
1903
|
+
* Copyright 2016, Peter Collins
|
|
1904
|
+
*/
|
|
1905
|
+
|
|
1906
|
+
--- file notice: matrix.go ---
|
|
1907
|
+
|
|
1908
|
+
/**
|
|
1909
|
+
* Matrix Algebra over an 8-bit Galois Field
|
|
1910
|
+
*
|
|
1911
|
+
* Copyright 2015, Klaus Post
|
|
1912
|
+
* Copyright 2015, Backblaze, Inc.
|
|
1913
|
+
*/
|
|
1914
|
+
|
|
1915
|
+
--- file notice: race_none.go ---
|
|
1916
|
+
|
|
1917
|
+
// Copyright (c) 2024+ Klaus Post. See LICENSE for license
|
|
1918
|
+
|
|
1919
|
+
--- file notice: reedsolomon.go ---
|
|
1920
|
+
|
|
1921
|
+
/**
|
|
1922
|
+
* Reed-Solomon Coding over 8-bit values.
|
|
1923
|
+
*
|
|
1924
|
+
* Copyright 2015, Klaus Post
|
|
1925
|
+
* Copyright 2015, Backblaze, Inc.
|
|
1926
|
+
*/
|
|
1927
|
+
|
|
1928
|
+
// Package reedsolomon enables Erasure Coding in Go
|
|
1929
|
+
//
|
|
1930
|
+
// For usage and examples, see https://github.com/klauspost/reedsolomon
|
|
1931
|
+
|
|
1932
|
+
--- file notice: streaming.go ---
|
|
1933
|
+
|
|
1934
|
+
/**
|
|
1935
|
+
* Reed-Solomon Coding over 8-bit values.
|
|
1936
|
+
*
|
|
1937
|
+
* Copyright 2015, Klaus Post
|
|
1938
|
+
* Copyright 2015, Backblaze, Inc.
|
|
1939
|
+
*/
|
|
1940
|
+
|
|
1941
|
+
================================================================================
|
|
1942
|
+
github.com/modelcontextprotocol/go-sdk v1.8.0
|
|
1943
|
+
================================================================================
|
|
1944
|
+
|
|
1945
|
+
--- LICENSE ---
|
|
1946
|
+
|
|
1947
|
+
The MCP project is undergoing a licensing transition from the MIT License to the Apache License, Version 2.0 ("Apache-2.0"). All new code and specification contributions to the project are licensed under Apache-2.0. Documentation contributions (excluding specifications) are licensed under CC-BY-4.0.
|
|
1948
|
+
|
|
1949
|
+
Contributions for which relicensing consent has been obtained are licensed under Apache-2.0. Contributions made by authors who originally licensed their work under the MIT License and who have not yet granted explicit permission to relicense remain licensed under the MIT License.
|
|
1950
|
+
|
|
1951
|
+
No rights beyond those granted by the applicable original license are conveyed for such contributions.
|
|
1952
|
+
|
|
1953
|
+
---
|
|
1954
|
+
|
|
1955
|
+
Apache License
|
|
1956
|
+
Version 2.0, January 2004
|
|
1957
|
+
http://www.apache.org/licenses/
|
|
1958
|
+
|
|
1959
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
1960
|
+
|
|
1961
|
+
1. Definitions.
|
|
1962
|
+
|
|
1963
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
1964
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
1965
|
+
|
|
1966
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
1967
|
+
the copyright owner that is granting the License.
|
|
1968
|
+
|
|
1969
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
1970
|
+
other entities that control, are controlled by, or are under common
|
|
1971
|
+
control with that entity. For the purposes of this definition,
|
|
1972
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
1973
|
+
direction or management of such entity, whether by contract or
|
|
1974
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
1975
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
1976
|
+
|
|
1977
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
1978
|
+
exercising permissions granted by this License.
|
|
1979
|
+
|
|
1980
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
1981
|
+
including but not limited to software source code, documentation
|
|
1982
|
+
source, and configuration files.
|
|
1983
|
+
|
|
1984
|
+
"Object" form shall mean any form resulting from mechanical
|
|
1985
|
+
transformation or translation of a Source form, including but
|
|
1986
|
+
not limited to compiled object code, generated documentation,
|
|
1987
|
+
and conversions to other media types.
|
|
1988
|
+
|
|
1989
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
1990
|
+
Object form, made available under the License, as indicated by a
|
|
1991
|
+
copyright notice that is included in or attached to the work
|
|
1992
|
+
(an example is provided in the Appendix below).
|
|
1993
|
+
|
|
1994
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
1995
|
+
form, that is based on (or derived from) the Work and for which the
|
|
1996
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
1997
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
1998
|
+
of this License, Derivative Works shall not include works that remain
|
|
1999
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
2000
|
+
the Work and Derivative Works thereof.
|
|
2001
|
+
|
|
2002
|
+
"Contribution" shall mean any work of authorship, including
|
|
2003
|
+
the original version of the Work and any modifications or additions
|
|
2004
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
2005
|
+
submitted to Licensor for inclusion in the Work by the copyright
|
|
2006
|
+
owner or by an individual or Legal Entity authorized to submit on behalf
|
|
2007
|
+
of the copyright owner. For the purposes of this definition, "submitted"
|
|
2008
|
+
means any form of electronic, verbal, or written communication sent
|
|
2009
|
+
to the Licensor or its representatives, including but not limited to
|
|
2010
|
+
communication on electronic mailing lists, source code control systems,
|
|
2011
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
2012
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
2013
|
+
excluding communication that is conspicuously marked or otherwise
|
|
2014
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
2015
|
+
|
|
2016
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
2017
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
2018
|
+
subsequently incorporated within the Work.
|
|
2019
|
+
|
|
2020
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
2021
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
2022
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
2023
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
2024
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
2025
|
+
Work and such Derivative Works in Source or Object form.
|
|
2026
|
+
|
|
2027
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
2028
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
2029
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
2030
|
+
(except as stated in this section) patent license to make, have made,
|
|
2031
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
2032
|
+
where such license applies only to those patent claims licensable
|
|
2033
|
+
by such Contributor that are necessarily infringed by their
|
|
2034
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
2035
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
2036
|
+
institute patent litigation against any entity (including a
|
|
2037
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
2038
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
2039
|
+
or contributory patent infringement, then any patent licenses
|
|
2040
|
+
granted to You under this License for that Work shall terminate
|
|
2041
|
+
as of the date such litigation is filed.
|
|
2042
|
+
|
|
2043
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
2044
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
2045
|
+
modifications, and in Source or Object form, provided that You
|
|
2046
|
+
meet the following conditions:
|
|
2047
|
+
|
|
2048
|
+
(a) You must give any other recipients of the Work or
|
|
2049
|
+
Derivative Works a copy of this License; and
|
|
2050
|
+
|
|
2051
|
+
(b) You must cause any modified files to carry prominent notices
|
|
2052
|
+
stating that You changed the files; and
|
|
2053
|
+
|
|
2054
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
2055
|
+
that You distribute, all copyright, patent, trademark, and
|
|
2056
|
+
attribution notices from the Source form of the Work,
|
|
2057
|
+
excluding those notices that do not pertain to any part of
|
|
2058
|
+
the Derivative Works; and
|
|
2059
|
+
|
|
2060
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
2061
|
+
distribution, then any Derivative Works that You distribute must
|
|
2062
|
+
include a readable copy of the attribution notices contained
|
|
2063
|
+
within such NOTICE file, excluding those notices that do not
|
|
2064
|
+
pertain to any part of the Derivative Works, in at least one
|
|
2065
|
+
of the following places: within a NOTICE text file distributed
|
|
2066
|
+
as part of the Derivative Works; within the Source form or
|
|
2067
|
+
documentation, if provided along with the Derivative Works; or,
|
|
2068
|
+
within a display generated by the Derivative Works, if and
|
|
2069
|
+
wherever such third-party notices normally appear. The contents
|
|
2070
|
+
of the NOTICE file are for informational purposes only and
|
|
2071
|
+
do not modify the License. You may add Your own attribution
|
|
2072
|
+
notices within Derivative Works that You distribute, alongside
|
|
2073
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
2074
|
+
that such additional attribution notices cannot be construed
|
|
2075
|
+
as modifying the License.
|
|
2076
|
+
|
|
2077
|
+
You may add Your own copyright statement to Your modifications and
|
|
2078
|
+
may provide additional or different license terms and conditions
|
|
2079
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
2080
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
2081
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
2082
|
+
the conditions stated in this License.
|
|
2083
|
+
|
|
2084
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
2085
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
2086
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
2087
|
+
this License, without any additional terms or conditions.
|
|
2088
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
2089
|
+
the terms of any separate license agreement you may have executed
|
|
2090
|
+
with Licensor regarding such Contributions.
|
|
2091
|
+
|
|
2092
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
2093
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
2094
|
+
except as required for reasonable and customary use in describing the
|
|
2095
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
2096
|
+
|
|
2097
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
2098
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
2099
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
2100
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
2101
|
+
implied, including, without limitation, any warranties or conditions
|
|
2102
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
2103
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
2104
|
+
appropriateness of using or redistributing the Work and assume any
|
|
2105
|
+
risks associated with Your exercise of permissions under this License.
|
|
2106
|
+
|
|
2107
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
2108
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
2109
|
+
unless required by applicable law (such as deliberate and grossly
|
|
2110
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
2111
|
+
liable to You for damages, including any direct, indirect, special,
|
|
2112
|
+
incidental, or consequential damages of any character arising as a
|
|
2113
|
+
result of this License or out of the use or inability to use the
|
|
2114
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
2115
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
2116
|
+
other commercial damages or losses), even if such Contributor
|
|
2117
|
+
has been advised of the possibility of such damages.
|
|
2118
|
+
|
|
2119
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
2120
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
2121
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
2122
|
+
or other liability obligations and/or rights consistent with this
|
|
2123
|
+
License. However, in accepting such obligations, You may act only
|
|
2124
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
|
2125
|
+
of any other Contributor, and only if You agree to indemnify,
|
|
2126
|
+
defend, and hold each Contributor harmless for any liability
|
|
2127
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
2128
|
+
of your accepting any such warranty or additional liability.
|
|
2129
|
+
|
|
2130
|
+
END OF TERMS AND CONDITIONS
|
|
2131
|
+
|
|
2132
|
+
---
|
|
2133
|
+
|
|
2134
|
+
MIT License
|
|
2135
|
+
|
|
2136
|
+
Copyright (c) 2024-2025 Model Context Protocol a Series of LF Projects, LLC.
|
|
2137
|
+
|
|
2138
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
2139
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
2140
|
+
in the Software without restriction, including without limitation the rights
|
|
2141
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
2142
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
2143
|
+
furnished to do so, subject to the following conditions:
|
|
2144
|
+
|
|
2145
|
+
The above copyright notice and this permission notice shall be included in all
|
|
2146
|
+
copies or substantial portions of the Software.
|
|
2147
|
+
|
|
2148
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
2149
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
2150
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
2151
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
2152
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
2153
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
2154
|
+
SOFTWARE.
|
|
2155
|
+
|
|
2156
|
+
---
|
|
2157
|
+
|
|
2158
|
+
Creative Commons Attribution 4.0 International (CC-BY-4.0)
|
|
2159
|
+
|
|
2160
|
+
Documentation in this project (excluding specifications) is licensed under
|
|
2161
|
+
CC-BY-4.0. See https://creativecommons.org/licenses/by/4.0/legalcode for
|
|
2162
|
+
the full license text.
|
|
2163
|
+
|
|
2164
|
+
--- file notice: auth/auth.go, auth/client.go, internal/util/errors.go, mcp/client.go, mcp/cmd.go, mcp/features.go, mcp/logging.go, mcp/prompt.go, mcp/protocol.go, mcp/resource.go, mcp/schema_cache.go, mcp/server.go, mcp/session.go, mcp/sse.go, mcp/tool.go, mcp/transport.go, mcp/util.go ---
|
|
2165
|
+
|
|
2166
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2167
|
+
// Use of this source code is governed by an MIT-style
|
|
2168
|
+
// license that can be found in the LICENSE file.
|
|
2169
|
+
|
|
2170
|
+
--- file notice: auth/authorization_code.go, internal/authutil/scopes.go, internal/authutil/util.go ---
|
|
2171
|
+
|
|
2172
|
+
// Copyright 2026 The Go MCP SDK Authors. All rights reserved.
|
|
2173
|
+
// Use of this source code is governed by the license
|
|
2174
|
+
// that can be found in the LICENSE file.
|
|
2175
|
+
|
|
2176
|
+
--- file notice: auth/shared.go ---
|
|
2177
|
+
|
|
2178
|
+
// Copyright 2026 The Go MCP SDK Authors. All rights reserved.
|
|
2179
|
+
// Use of this source code is governed by an MIT-style
|
|
2180
|
+
// license that can be found in the LICENSE file.
|
|
2181
|
+
|
|
2182
|
+
// This file contains shared utilities for OAuth handlers.
|
|
2183
|
+
|
|
2184
|
+
--- file notice: internal/json/json.go ---
|
|
2185
|
+
|
|
2186
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2187
|
+
// Use of this source code is governed by the license
|
|
2188
|
+
// that can be found in the LICENSE file.
|
|
2189
|
+
|
|
2190
|
+
// Package json provides internal JSON utilities.
|
|
2191
|
+
|
|
2192
|
+
--- file notice: internal/jsonrpc2/conn.go, internal/jsonrpc2/messages.go, internal/jsonrpc2/wire.go ---
|
|
2193
|
+
|
|
2194
|
+
// Copyright 2018 The Go MCP SDK Authors. All rights reserved.
|
|
2195
|
+
// Use of this source code is governed by an MIT-style
|
|
2196
|
+
// license that can be found in the LICENSE file.
|
|
2197
|
+
|
|
2198
|
+
--- file notice: internal/jsonrpc2/jsonrpc2.go ---
|
|
2199
|
+
|
|
2200
|
+
// Copyright 2018 The Go MCP SDK Authors. All rights reserved.
|
|
2201
|
+
// Use of this source code is governed by an MIT-style
|
|
2202
|
+
// license that can be found in the LICENSE file.
|
|
2203
|
+
|
|
2204
|
+
// Package jsonrpc2 is a minimal implementation of the JSON RPC 2 spec.
|
|
2205
|
+
// https://www.jsonrpc.org/specification
|
|
2206
|
+
// It is intended to be compatible with other implementations at the wire level.
|
|
2207
|
+
|
|
2208
|
+
--- file notice: internal/mcpgodebug/mcpgodebug.go ---
|
|
2209
|
+
|
|
2210
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2211
|
+
// Use of this source code is governed by the license
|
|
2212
|
+
// that can be found in the LICENSE file.
|
|
2213
|
+
|
|
2214
|
+
// Package mcpgodebug provides a mechanism to configure compatibility parameters
|
|
2215
|
+
// via the MCPGODEBUG environment variable.
|
|
2216
|
+
//
|
|
2217
|
+
// The value of MCPGODEBUG is a comma-separated list of key=value pairs.
|
|
2218
|
+
// For example:
|
|
2219
|
+
//
|
|
2220
|
+
// MCPGODEBUG=someoption=1,otheroption=value
|
|
2221
|
+
|
|
2222
|
+
--- file notice: internal/util/net.go, mcp/cache.go, mcp/mrtr.go, mcp/streamable_headers.go ---
|
|
2223
|
+
|
|
2224
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2225
|
+
// Use of this source code is governed by the license
|
|
2226
|
+
// that can be found in the LICENSE file.
|
|
2227
|
+
|
|
2228
|
+
--- file notice: internal/xcontext/xcontext.go ---
|
|
2229
|
+
|
|
2230
|
+
// Copyright 2019 The Go MCP SDK Authors. All rights reserved.
|
|
2231
|
+
// Use of this source code is governed by an MIT-style
|
|
2232
|
+
// license that can be found in the LICENSE file.
|
|
2233
|
+
|
|
2234
|
+
// Package xcontext is a package to offer the extra functionality we need
|
|
2235
|
+
// from contexts that is not available from the standard context package.
|
|
2236
|
+
|
|
2237
|
+
--- file notice: jsonrpc/jsonrpc.go ---
|
|
2238
|
+
|
|
2239
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2240
|
+
// Use of this source code is governed by an MIT-style
|
|
2241
|
+
// license that can be found in the LICENSE file.
|
|
2242
|
+
|
|
2243
|
+
// Package jsonrpc exposes part of a JSON-RPC v2 implementation
|
|
2244
|
+
// for use by mcp transport authors.
|
|
2245
|
+
|
|
2246
|
+
--- file notice: mcp/content.go ---
|
|
2247
|
+
|
|
2248
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2249
|
+
// Use of this source code is governed by an MIT-style
|
|
2250
|
+
// license that can be found in the LICENSE file.
|
|
2251
|
+
|
|
2252
|
+
// TODO(findleyr): update JSON marshalling of all content types to preserve required fields.
|
|
2253
|
+
// (See [TextContent.MarshalJSON], which handles this for text content).
|
|
2254
|
+
|
|
2255
|
+
--- file notice: mcp/event.go ---
|
|
2256
|
+
|
|
2257
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2258
|
+
// Use of this source code is governed by an MIT-style
|
|
2259
|
+
// license that can be found in the LICENSE file.
|
|
1640
2260
|
|
|
1641
|
-
|
|
2261
|
+
// This file is for SSE events.
|
|
2262
|
+
// See https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events.
|
|
1642
2263
|
|
|
1643
|
-
|
|
2264
|
+
--- file notice: mcp/mcp.go ---
|
|
1644
2265
|
|
|
1645
|
-
|
|
2266
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2267
|
+
// Use of this source code is governed by an MIT-style
|
|
2268
|
+
// license that can be found in the LICENSE file.
|
|
1646
2269
|
|
|
1647
|
-
//
|
|
2270
|
+
// The mcp package provides an SDK for writing model context protocol clients
|
|
2271
|
+
// and servers.
|
|
2272
|
+
//
|
|
2273
|
+
// To get started, create either a [Client] or [Server], add features to it
|
|
2274
|
+
// using `AddXXX` functions, and connect it to a peer using a [Transport].
|
|
2275
|
+
//
|
|
2276
|
+
// For example, to run a simple server on the [StdioTransport]:
|
|
2277
|
+
//
|
|
2278
|
+
// server := mcp.NewServer(&mcp.Implementation{Name: "greeter"}, nil)
|
|
2279
|
+
//
|
|
2280
|
+
// // Using the generic AddTool automatically populates the the input and output
|
|
2281
|
+
// // schema of the tool.
|
|
2282
|
+
// type args struct {
|
|
2283
|
+
// Name string `json:"name" jsonschema:"the person to greet"`
|
|
2284
|
+
// }
|
|
2285
|
+
// mcp.AddTool(server, &mcp.Tool{
|
|
2286
|
+
// Name: "greet",
|
|
2287
|
+
// Description: "say hi",
|
|
2288
|
+
// }, func(ctx context.Context, req *mcp.CallToolRequest, args args) (*mcp.CallToolResult, any, error) {
|
|
2289
|
+
// return &mcp.CallToolResult{
|
|
2290
|
+
// Content: []mcp.Content{
|
|
2291
|
+
// &mcp.TextContent{Text: "Hi " + args.Name},
|
|
2292
|
+
// },
|
|
2293
|
+
// }, nil, nil
|
|
2294
|
+
// })
|
|
2295
|
+
//
|
|
2296
|
+
// // Run the server on the stdio transport.
|
|
2297
|
+
// if err := server.Run(context.Background(), &mcp.StdioTransport{}); err != nil {
|
|
2298
|
+
// log.Printf("Server failed: %v", err)
|
|
2299
|
+
// }
|
|
2300
|
+
//
|
|
2301
|
+
// To connect to this server, use the [CommandTransport]:
|
|
2302
|
+
//
|
|
2303
|
+
// client := mcp.NewClient(&mcp.Implementation{Name: "mcp-client", Version: "v1.0.0"}, nil)
|
|
2304
|
+
// transport := &mcp.CommandTransport{Command: exec.Command("myserver")}
|
|
2305
|
+
// session, err := client.Connect(ctx, transport, nil)
|
|
2306
|
+
// if err != nil {
|
|
2307
|
+
// log.Fatal(err)
|
|
2308
|
+
// }
|
|
2309
|
+
// defer session.Close()
|
|
2310
|
+
//
|
|
2311
|
+
// params := &mcp.CallToolParams{
|
|
2312
|
+
// Name: "greet",
|
|
2313
|
+
// Arguments: map[string]any{"name": "you"},
|
|
2314
|
+
// }
|
|
2315
|
+
// res, err := session.CallTool(ctx, params)
|
|
2316
|
+
// if err != nil {
|
|
2317
|
+
// log.Fatalf("CallTool failed: %v", err)
|
|
2318
|
+
// }
|
|
2319
|
+
//
|
|
2320
|
+
// # Clients, servers, and sessions
|
|
2321
|
+
//
|
|
2322
|
+
// In this SDK, both a [Client] and [Server] may handle many concurrent
|
|
2323
|
+
// connections. Each time a client or server is connected to a peer using a
|
|
2324
|
+
// [Transport], it creates a new session (either a [ClientSession] or
|
|
2325
|
+
// [ServerSession]):
|
|
2326
|
+
//
|
|
2327
|
+
// Client Server
|
|
2328
|
+
// ⇅ (jsonrpc2) ⇅
|
|
2329
|
+
// ClientSession ⇄ Client Transport ⇄ Server Transport ⇄ ServerSession
|
|
2330
|
+
//
|
|
2331
|
+
// The session types expose an API to interact with its peer. For example,
|
|
2332
|
+
// [ClientSession.CallTool] or [ServerSession.ListRoots].
|
|
2333
|
+
//
|
|
2334
|
+
// # Adding features
|
|
2335
|
+
//
|
|
2336
|
+
// Add MCP servers to your Client or Server using AddXXX methods (for example
|
|
2337
|
+
// [Client.AddRoot] or [Server.AddPrompt]). If any peers are connected when
|
|
2338
|
+
// AddXXX is called, they will receive a corresponding change notification
|
|
2339
|
+
// (for example notifications/roots/list_changed).
|
|
2340
|
+
//
|
|
2341
|
+
// Adding tools is special: tools may be bound to ordinary Go functions by
|
|
2342
|
+
// using the top-level generic [AddTool] function, which allows specifying an
|
|
2343
|
+
// input and output type. When AddTool is used, the tool's input schema and
|
|
2344
|
+
// output schema are automatically populated, and inputs are automatically
|
|
2345
|
+
// validated. As a special case, if the output type is 'any', no output schema
|
|
2346
|
+
// is generated.
|
|
2347
|
+
//
|
|
2348
|
+
// func double(_ context.Context, _ *mcp.CallToolRequest, in In) (*mcp.CallToolResult, Out, error) {
|
|
2349
|
+
// return nil, Out{Answer: 2*in.Number}, nil
|
|
2350
|
+
// }
|
|
2351
|
+
// ...
|
|
2352
|
+
// mcp.AddTool(server, &mcp.Tool{Name: "double"}, double)
|
|
1648
2353
|
|
|
1649
|
-
|
|
1650
|
-
// Use of this source code is governed by a BSD-style
|
|
1651
|
-
// license that can be found in the LICENSE file located
|
|
1652
|
-
// here https://github.com/golang/sys/blob/master/LICENSE
|
|
2354
|
+
--- file notice: mcp/requests.go ---
|
|
1653
2355
|
|
|
1654
|
-
|
|
2356
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2357
|
+
// Use of this source code is governed by an MIT-style
|
|
2358
|
+
// license that can be found in the LICENSE file.
|
|
1655
2359
|
|
|
1656
|
-
//
|
|
2360
|
+
// This file holds the request types.
|
|
1657
2361
|
|
|
1658
|
-
--- file notice:
|
|
2362
|
+
--- file notice: mcp/shared.go ---
|
|
1659
2363
|
|
|
1660
|
-
// Copyright
|
|
2364
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2365
|
+
// Use of this source code is governed by an MIT-style
|
|
2366
|
+
// license that can be found in the LICENSE file.
|
|
1661
2367
|
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
2368
|
+
// This file contains code shared between client and server, including
|
|
2369
|
+
// method handler and middleware definitions.
|
|
2370
|
+
//
|
|
2371
|
+
// Much of this is here so that we can factor out commonalities using
|
|
2372
|
+
// generics. If this becomes unwieldy, it can perhaps be simplified with
|
|
2373
|
+
// reflection.
|
|
1665
2374
|
|
|
1666
|
-
---
|
|
2375
|
+
--- file notice: mcp/streamable.go ---
|
|
1667
2376
|
|
|
1668
|
-
The
|
|
2377
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2378
|
+
// Use of this source code is governed by an MIT-style
|
|
2379
|
+
// license that can be found in the LICENSE file.
|
|
1669
2380
|
|
|
1670
|
-
|
|
1671
|
-
|
|
2381
|
+
// NOTE: see streamable_server.go and streamable_client.go for detailed
|
|
2382
|
+
// documentation of the streamable server design.
|
|
2383
|
+
// TODO: move the client and server logic into those files.
|
|
1672
2384
|
|
|
1673
|
-
|
|
1674
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
1675
|
-
in the Software without restriction, including without limitation the rights
|
|
1676
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
1677
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
1678
|
-
furnished to do so, subject to the following conditions:
|
|
2385
|
+
--- file notice: mcp/streamable_client.go ---
|
|
1679
2386
|
|
|
1680
|
-
|
|
1681
|
-
|
|
2387
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2388
|
+
// Use of this source code is governed by an MIT-style
|
|
2389
|
+
// license that can be found in the LICENSE file.
|
|
1682
2390
|
|
|
1683
|
-
|
|
1684
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
1685
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
1686
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
1687
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
1688
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1689
|
-
SOFTWARE.
|
|
2391
|
+
// TODO: move client-side streamable HTTP logic from streamable.go to this file.
|
|
1690
2392
|
|
|
1691
|
-
--- file notice:
|
|
2393
|
+
--- file notice: mcp/streamable_server.go ---
|
|
1692
2394
|
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
* Copyright 2015, Backblaze, Inc. All rights reserved.
|
|
1697
|
-
*/
|
|
2395
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2396
|
+
// Use of this source code is governed by an MIT-style
|
|
2397
|
+
// license that can be found in the LICENSE file.
|
|
1698
2398
|
|
|
1699
|
-
|
|
2399
|
+
// TODO: move server-side streamable HTTP logic from streamable.go to this file.
|
|
1700
2400
|
|
|
1701
|
-
|
|
2401
|
+
--- file notice: oauthex/audience.go, oauthex/client.go ---
|
|
1702
2402
|
|
|
1703
|
-
|
|
2403
|
+
// Copyright 2026 The Go MCP SDK Authors. All rights reserved.
|
|
2404
|
+
// Use of this source code is governed by an MIT-style
|
|
2405
|
+
// license that can be found in the LICENSE file.
|
|
1704
2406
|
|
|
1705
|
-
|
|
1706
|
-
// Copyright 2017, Minio, Inc.
|
|
2407
|
+
--- file notice: oauthex/auth_meta.go, oauthex/dcr.go ---
|
|
1707
2408
|
|
|
1708
|
-
|
|
2409
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2410
|
+
// Use of this source code is governed by an MIT-style
|
|
2411
|
+
// license that can be found in the LICENSE file.
|
|
1709
2412
|
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
*
|
|
1713
|
-
* Copyright 2016, Peter Collins
|
|
1714
|
-
*/
|
|
2413
|
+
// This file implements Authorization Server Metadata.
|
|
2414
|
+
// See https://www.rfc-editor.org/rfc/rfc8414.html.
|
|
1715
2415
|
|
|
1716
|
-
--- file notice:
|
|
2416
|
+
--- file notice: oauthex/oauth2.go, oauthex/oauthex.go ---
|
|
1717
2417
|
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
* Copyright 2015, Klaus Post
|
|
1722
|
-
* Copyright 2015, Backblaze, Inc.
|
|
1723
|
-
*/
|
|
2418
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2419
|
+
// Use of this source code is governed by an MIT-style
|
|
2420
|
+
// license that can be found in the LICENSE file.
|
|
1724
2421
|
|
|
1725
|
-
|
|
2422
|
+
// Package oauthex implements extensions to OAuth2.
|
|
1726
2423
|
|
|
1727
|
-
|
|
2424
|
+
--- file notice: oauthex/resource_meta.go ---
|
|
1728
2425
|
|
|
1729
|
-
|
|
2426
|
+
// Copyright 2025 The Go MCP SDK Authors. All rights reserved.
|
|
2427
|
+
// Use of this source code is governed by an MIT-style
|
|
2428
|
+
// license that can be found in the LICENSE file.
|
|
1730
2429
|
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
*
|
|
1734
|
-
* Copyright 2015, Klaus Post
|
|
1735
|
-
* Copyright 2015, Backblaze, Inc.
|
|
1736
|
-
*/
|
|
2430
|
+
// This file implements Protected Resource Metadata.
|
|
2431
|
+
// See https://www.rfc-editor.org/rfc/rfc9728.html.
|
|
1737
2432
|
|
|
1738
|
-
|
|
1739
|
-
//
|
|
1740
|
-
// For usage and examples, see https://github.com/klauspost/reedsolomon
|
|
2433
|
+
--- file notice: oauthex/token_exchange.go ---
|
|
1741
2434
|
|
|
1742
|
-
|
|
2435
|
+
// Copyright 2026 The Go MCP SDK Authors. All rights reserved.
|
|
2436
|
+
// Use of this source code is governed by an MIT-style
|
|
2437
|
+
// license that can be found in the LICENSE file.
|
|
1743
2438
|
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
*
|
|
1747
|
-
* Copyright 2015, Klaus Post
|
|
1748
|
-
* Copyright 2015, Backblaze, Inc.
|
|
1749
|
-
*/
|
|
2439
|
+
// This file implements Token Exchange (RFC 8693) for Enterprise Managed Authorization.
|
|
2440
|
+
// See https://datatracker.ietf.org/doc/html/rfc8693
|
|
1750
2441
|
|
|
1751
2442
|
================================================================================
|
|
1752
2443
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822
|
|
@@ -3506,6 +4197,62 @@ analogous to the top-level functions for the command-line
|
|
|
3506
4197
|
flag set.
|
|
3507
4198
|
*/
|
|
3508
4199
|
|
|
4200
|
+
================================================================================
|
|
4201
|
+
github.com/segmentio/asm v1.1.3
|
|
4202
|
+
================================================================================
|
|
4203
|
+
|
|
4204
|
+
--- LICENSE ---
|
|
4205
|
+
|
|
4206
|
+
MIT License
|
|
4207
|
+
|
|
4208
|
+
Copyright (c) 2021 Segment
|
|
4209
|
+
|
|
4210
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4211
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
4212
|
+
in the Software without restriction, including without limitation the rights
|
|
4213
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
4214
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
4215
|
+
furnished to do so, subject to the following conditions:
|
|
4216
|
+
|
|
4217
|
+
The above copyright notice and this permission notice shall be included in all
|
|
4218
|
+
copies or substantial portions of the Software.
|
|
4219
|
+
|
|
4220
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
4221
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
4222
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
4223
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
4224
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
4225
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
4226
|
+
SOFTWARE.
|
|
4227
|
+
|
|
4228
|
+
================================================================================
|
|
4229
|
+
github.com/segmentio/encoding v0.5.4
|
|
4230
|
+
================================================================================
|
|
4231
|
+
|
|
4232
|
+
--- LICENSE ---
|
|
4233
|
+
|
|
4234
|
+
MIT License
|
|
4235
|
+
|
|
4236
|
+
Copyright (c) 2019 Segment.io, Inc.
|
|
4237
|
+
|
|
4238
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4239
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
4240
|
+
in the Software without restriction, including without limitation the rights
|
|
4241
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
4242
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
4243
|
+
furnished to do so, subject to the following conditions:
|
|
4244
|
+
|
|
4245
|
+
The above copyright notice and this permission notice shall be included in all
|
|
4246
|
+
copies or substantial portions of the Software.
|
|
4247
|
+
|
|
4248
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
4249
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
4250
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
4251
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
4252
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
4253
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
4254
|
+
SOFTWARE.
|
|
4255
|
+
|
|
3509
4256
|
================================================================================
|
|
3510
4257
|
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8
|
|
3511
4258
|
================================================================================
|
|
@@ -4868,6 +5615,38 @@ Copyright 2012-2019 Viant
|
|
|
4868
5615
|
This product includes software developed at
|
|
4869
5616
|
Viant (http://viantinc.com/)
|
|
4870
5617
|
|
|
5618
|
+
================================================================================
|
|
5619
|
+
github.com/yosida95/uritemplate/v3 v3.0.2
|
|
5620
|
+
================================================================================
|
|
5621
|
+
|
|
5622
|
+
--- LICENSE ---
|
|
5623
|
+
|
|
5624
|
+
Copyright (C) 2016, Kohei YOSHIDA <https://yosida95.com/>. All rights reserved.
|
|
5625
|
+
|
|
5626
|
+
Redistribution and use in source and binary forms, with or without
|
|
5627
|
+
modification, are permitted provided that the following conditions are met:
|
|
5628
|
+
|
|
5629
|
+
* Redistributions of source code must retain the above copyright
|
|
5630
|
+
notice, this list of conditions and the following disclaimer.
|
|
5631
|
+
* Redistributions in binary form must reproduce the above copyright
|
|
5632
|
+
notice, this list of conditions and the following disclaimer in the
|
|
5633
|
+
documentation and/or other materials provided with the distribution.
|
|
5634
|
+
* Neither the name of the copyright holder nor the names of its
|
|
5635
|
+
contributors may be used to endorse or promote products derived from
|
|
5636
|
+
this software without specific prior written permission.
|
|
5637
|
+
|
|
5638
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
5639
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
5640
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
5641
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
5642
|
+
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
5643
|
+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
5644
|
+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
5645
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
5646
|
+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
5647
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
5648
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
5649
|
+
|
|
4871
5650
|
================================================================================
|
|
4872
5651
|
go.yaml.in/yaml/v3 v3.0.5
|
|
4873
5652
|
================================================================================
|
|
@@ -5043,6 +5822,40 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
|
5043
5822
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
5044
5823
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
5045
5824
|
|
|
5825
|
+
================================================================================
|
|
5826
|
+
golang.org/x/oauth2 v0.36.0
|
|
5827
|
+
================================================================================
|
|
5828
|
+
|
|
5829
|
+
--- LICENSE ---
|
|
5830
|
+
|
|
5831
|
+
Copyright 2009 The Go Authors.
|
|
5832
|
+
|
|
5833
|
+
Redistribution and use in source and binary forms, with or without
|
|
5834
|
+
modification, are permitted provided that the following conditions are
|
|
5835
|
+
met:
|
|
5836
|
+
|
|
5837
|
+
* Redistributions of source code must retain the above copyright
|
|
5838
|
+
notice, this list of conditions and the following disclaimer.
|
|
5839
|
+
* Redistributions in binary form must reproduce the above
|
|
5840
|
+
copyright notice, this list of conditions and the following disclaimer
|
|
5841
|
+
in the documentation and/or other materials provided with the
|
|
5842
|
+
distribution.
|
|
5843
|
+
* Neither the name of Google LLC nor the names of its
|
|
5844
|
+
contributors may be used to endorse or promote products derived from
|
|
5845
|
+
this software without specific prior written permission.
|
|
5846
|
+
|
|
5847
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
5848
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
5849
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
5850
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
5851
|
+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
5852
|
+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
5853
|
+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
5854
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
5855
|
+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
5856
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
5857
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
5858
|
+
|
|
5046
5859
|
================================================================================
|
|
5047
5860
|
golang.org/x/sync v0.23.0
|
|
5048
5861
|
================================================================================
|
|
@@ -5145,6 +5958,40 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
|
5145
5958
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
5146
5959
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
5147
5960
|
|
|
5961
|
+
================================================================================
|
|
5962
|
+
golang.org/x/time v0.15.0
|
|
5963
|
+
================================================================================
|
|
5964
|
+
|
|
5965
|
+
--- LICENSE ---
|
|
5966
|
+
|
|
5967
|
+
Copyright 2009 The Go Authors.
|
|
5968
|
+
|
|
5969
|
+
Redistribution and use in source and binary forms, with or without
|
|
5970
|
+
modification, are permitted provided that the following conditions are
|
|
5971
|
+
met:
|
|
5972
|
+
|
|
5973
|
+
* Redistributions of source code must retain the above copyright
|
|
5974
|
+
notice, this list of conditions and the following disclaimer.
|
|
5975
|
+
* Redistributions in binary form must reproduce the above
|
|
5976
|
+
copyright notice, this list of conditions and the following disclaimer
|
|
5977
|
+
in the documentation and/or other materials provided with the
|
|
5978
|
+
distribution.
|
|
5979
|
+
* Neither the name of Google LLC nor the names of its
|
|
5980
|
+
contributors may be used to endorse or promote products derived from
|
|
5981
|
+
this software without specific prior written permission.
|
|
5982
|
+
|
|
5983
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
5984
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
5985
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
5986
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
5987
|
+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
5988
|
+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
5989
|
+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
5990
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
5991
|
+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
5992
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
5993
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
5994
|
+
|
|
5148
5995
|
================================================================================
|
|
5149
5996
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20260819154853-08b0e4226688
|
|
5150
5997
|
================================================================================
|
|
Binary file
|
package/bin/mountable-darwin-x64
CHANGED
|
Binary file
|
|
Binary file
|
package/bin/mountable-linux-x64
CHANGED
|
Binary file
|